Kepone
Messages postés25Date d'inscriptionvendredi 2 août 2002StatutMembreDernière intervention 3 juillet 2008
-
2 août 2002 à 15:27
cs_sauveur
Messages postés36Date d'inscriptionvendredi 12 juillet 2002StatutMembreDernière intervention21 décembre 2004
-
2 août 2002 à 23:27
Salut.
g un chtit probleme pour calculer le temp de traitement restant dans une de mes applications.
le but de l'appli est d'attaquer une base de données access contenant environ 10000 articles et 17 tarifs différent par article afin de remplir une base que j'ai préalablement créé. Le traitement est donc relativement long.
j'aurais aimé pouvoir calculé le tp de traitement restant afin d'en informé l'utilisateur. j'ai procédé comme suit :
Au début du traitement je récupere l'heure systeme. Lorsque j'ai traité 500 articles je récupere de nouveau l'heure systeme. je fais ensuite la différence entre les deux graces à la méthodes datediff (cela me donne le nombre de secondes de traitement) Ensuite je divise ce tp par le nombre d'articles traités (afin de connaitre le temp pour un article) puis je le multiplie par le nombre d'article qui ne sont par encore traités ce qui doit me donner mon temp restant.
J'ai testé cette méthode avec une boucle For allant de 1 à 10000000. cette boucle ne fait que incrémenter un compteur le temp de traitement pour chaque boucle est donc constant : dans ce cas précis cela fonctionne parfaitement.
Lorsque je test dans mon appli je constate que les 500 premiers articles sont traités plus vite que les 500 suivants du fait qu'a chaque fois un enregistrement est rajouté dans ma table Access de destination. Du coup le temp restant augmente tout le temp ou stagne à chaque calcul.
Si Quelqu'un connait une méthode (Ou un OCX) permettant de gérer ca ca serait de la balle parce que la je galere un max (En plus je connais des appli sous VB travaillant sur de grosses base Access qui le calcul tres bien).