OVH Cloud OVH Cloud

Réaction supprenante du typage des indirections

3 réponses
Avatar
Pascal F
Suivant les conseils de WD10, j'ai typé toutes mes indirections. Entre autre dans une procédure globale appellée par trigger sur
les fichiers avant modification afin de mettre dans les rubriques correspondantes la date et heure et nom de l'utilisateur. Une
procédure appelant 1208 fois un hajoute a été multiplié par un facteur 60 :-? ...

Ai-je mal typé les indirections? voici mon code:

PROCEDURE pTIME_STAMP()

cpNomFic est une chaîne=H.NomFichier
QUAND EXCEPTION DANS
{cpNomFic+".UTIL_MODIF",indRubrique}=gcUtilisateur
{cpNomFic+".TIME_STAMP",indRubrique}=DateSys()+HeureSys()
FAIRE

FIN

Dans ce cas, le temps dans l'analyseur est de 15 s 124 ms

avec le code :
PROCEDURE pTIME_STAMP()

cpNomFic est une chaîne=H.NomFichier
QUAND EXCEPTION DANS
{cpNomFic+".UTIL_MODIF"}=gcUtilisateur
{cpNomFic+".TIME_STAMP"}=DateSys()+HeureSys()
FAIRE

FIN
le temps dans l'analyseur est de 240 ms.

{cpNomFic+".UTIL_MODIF"} et {cpNomFic+".TIME_STAMP"} sont bien une rubrique de fichier.

Des suggestions?

--
Pascal
N0.pascal.SPAM@efpe.biz
Ne garder que le prénom pour me joindre

3 réponses

Avatar
Pascal F
Pascal F a couché sur son écran :
Suivant les conseils de WD10, j'ai typé toutes mes indirections. Entre autre dans une procédure globale appellée par trigger
sur les fichiers avant modification afin de mettre dans les rubriques correspondantes la date et heure et nom de l'utilisateur.
Une procédure appelant 1208 fois un hajoute a été multiplié par un facteur 60 :-? ...

Ai-je mal typé les indirections? voici mon code:

PROCEDURE pTIME_STAMP()

cpNomFic est une chaîne=H.NomFichier
QUAND EXCEPTION DANS
{cpNomFic+".UTIL_MODIF",indRubrique}=gcUtilisateur
{cpNomFic+".TIME_STAMP",indRubrique}ÚteSys()+HeureSys()
FAIRE

FIN

Dans ce cas, le temps dans l'analyseur est de 15 s 124 ms

avec le code :
PROCEDURE pTIME_STAMP()

cpNomFic est une chaîne=H.NomFichier
QUAND EXCEPTION DANS
{cpNomFic+".UTIL_MODIF"}=gcUtilisateur
{cpNomFic+".TIME_STAMP"}ÚteSys()+HeureSys()
FAIRE

FIN
le temps dans l'analyseur est de 240 ms.

{cpNomFic+".UTIL_MODIF"} et {cpNomFic+".TIME_STAMP"} sont bien une rubrique de fichier.

Des suggestions?



Je me réponds:
en typant comme champ:
PROCEDURE pTIME_STAMP()

cpNomFic est une chaîne=H.NomFichier
QUAND EXCEPTION DANS
{cpNomFic+".UTIL_MODIF",indChamp}=gcUtilisateur
{cpNomFic+".TIME_STAMP",indChamp}ÚteSys()+HeureSys()
FAIRE

FIN
résultat de l'analyseur : 156 ms... 8-o

Quand mettre indRubrique, si ce n'est sur une rubrique de fichier 8-o ?

--
Pascal

Ne garder que le prénom pour me joindre
Avatar
Romain PETIT
Le 23/12/2005, Pascal F a supposé :

Quand mettre indRubrique, si ce n'est sur une rubrique de fichier 8-o ?



C'est pourtant bien ce qui devrait être le plus rapide en théorie :
http://faq.pcsoft.fr/webdev9/faqread.awp?idfaq016

Tu n'aurais pas des champs qui trainent et qui auraient le même nom ?
Je testerai un de ces jours en WD7.5 pour confirmer/infirmer car
j'utilise pas mal les indirections en indiquant le type...

--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
Pascal F
Romain PETIT a émis l'idée suivante :
Le 23/12/2005, Pascal F a supposé :

Quand mettre indRubrique, si ce n'est sur une rubrique de fichier 8-o ?



C'est pourtant bien ce qui devrait être le plus rapide en théorie :
http://faq.pcsoft.fr/webdev9/faqread.awp?idfaq016

Tu n'aurais pas des champs qui trainent et qui auraient le même nom ?
Je testerai un de ces jours en WD7.5 pour confirmer/infirmer car j'utilise pas mal les indirections en indiquant le type...



Non je n'ai pas de champ qui trainent d'autant que comme c'est une indirection composée du nom de fichier + nom de rubrique, il
faudrait qu'une fentre ait le nom du fichier et un champ de cette fenetre le nom de la rubrique, ce qui fait bcp de coincidences,
d'autant plus que les rubriques sont bien mises à jour.

--
Pascal

Ne garder que le prénom pour me joindre