J'ai pas mal de souci de lenteur sur mon système de gestion commerciale et
j'aimerais en trouver la cause.
J'ai une application en réseau WD9 avec base de données Hyperfile
Client/Server sur un Compaq Proliant ML350 avec BiProcesseur PIII 1.2Ghz et
1.2 Go De RAM.
J'ouvre un ma connexion au serveur hyperfile au démarrage de l'application !
Environ 20 personnes travaillent en simultanées.
Voici un exemple de mon code qui dure assez longtemp (une vingtaine de
secondes) :
J'accede a deux fichiers COMMANDE_CLIENT(75000 enregistrements),
ELEMENT_COMMANDE(150000 enregistrements).
Il me faut les commandes du client dont je passe le numéro en parametre ->
Num_client dans COMMANDE_CLIENT
Il me faut ensuite pour ces commandes, seulement celles ayant un element
expédiés entre les dates indiquées -> DATE_EXP dans ELEMENT_COMMANDE
reqCde = "SELECT COMMANDE_CLIENT.FACTAVOIR,COMMANDE_CLIENT.FORFAIT,
ELEMENT_COMMANDE.PXVENTE, ELEMENT_COMMANDE.DATE_EXP FROM COMMANDE_CLIENT,
ELEMENT_COMMANDE WHERE COMMANDE_CLIENT.NUM_CDE=ELEMENT_COMMANDE.NUM_CDE AND
COMMANDE_CLIENT.NUM_CLIENT='" + numéroclient + "' AND DATE_EXP BETWEEN '" +
DateDepart + "' AND '" + DateFin +"'"
Si HExécuteRequêteSQL(SrcCde,reqCde) alors
HLitPremier(SrcCde)
TANTQUE PAS Hendehors(SrcCde)
et bien non car pour mon appli les numéro de client sont sur 6 caracteres avec les 2 premiers correspondant à leur département donc 042154 ou 094587 par exemple. Donc pour garder le zéro en première position le numéro de client doit être en chaine.
Bonsoir,
Est-ce que ça marche maintenant, y a-t-il une autre solution, ou est-ce abandonné ?
Merci Mat
serviroc wrote:
et bien non car pour mon appli les numéro de client sont sur 6
caracteres avec les 2 premiers correspondant à leur département donc
042154 ou 094587 par exemple. Donc pour garder le zéro en première
position le numéro de client doit être en chaine.
Bonsoir,
Est-ce que ça marche maintenant, y a-t-il une autre solution, ou est-ce
abandonné ?
et bien non car pour mon appli les numéro de client sont sur 6 caracteres avec les 2 premiers correspondant à leur département donc 042154 ou 094587 par exemple. Donc pour garder le zéro en première position le numéro de client doit être en chaine.
Bonsoir,
Est-ce que ça marche maintenant, y a-t-il une autre solution, ou est-ce abandonné ?