Re: Parcours programmé sur une table

Posté par Anonyme le 1/3/2004 15:41:56
utilise un filtre avec condition !!!
testé et approuvé(temps de réponse divisé par 10 !!!)

HFiltre( , )

dans le code initialisation de la table

et tableaffiche(Table,taInit)

ex :

wlcond=construitcond()
HFiltre(DPXENP,wlcond)

avec construitcond() :

wlcond est une chaîne
wlcond=""
SI SAI_DENUCDPX <> 0 ALORS
SI SansEspace(wlcond)<>"" ALORS
wlcond=wlcond+" ET "
FIN
wlcond=wlcond+"DENUCDPX >= "+SAI_DENUCDPX
FIN

SI SansEspace(SAI_DECREPRE) <> "" ALORS
SI SansEspace(wlcond)<>"" ALORS
wlcond=wlcond+" ET "
FIN
wlcond=wlcond+"DECREPRE='"+SAI_DECREPRE+"'"
FIN

SI SansEspace(SAI_DECODCLI) <> "" ALORS
SI SansEspace(wlcond)<>"" ALORS
wlcond=wlcond+" ET "
FIN
wlcond=wlcond+"DECORIGI = '"+Gauche(SAI_DECODCLI,1)+"'"
wlcond=wlcond+" ET "
wlcond=wlcond+"DECAFFEC = '"+Milieu(SAI_DECODCLI,2,3)+"'"
wlcond=wlcond+" ET "
wlcond=wlcond+"DENUMCLI = '"+Droite(SAI_DECODCLI,4)+"'"
FIN


SI SansEspace(wlcond)<>"" ALORS
wlcond=wlcond+" ET "
FIN
wlcond=wlcond+"DETYARTI='K' "

SI SansEspace(SAI_DETYPTRA) <> ""
SI SansEspace(wlcond)<>"" ALORS
wlcond=wlcond+" ET "
FIN
wlcond=wlcond+"DESOARTI='"+SAI_DETYPTRA+"'"
FIN


SI SansEspace(SAI_DELIBPRO) <> "" ALORS
SI SansEspace(wlcond)<>"" ALORS
wlcond=wlcond+" ET "
FIN
wlcond=wlcond+"DELIBPRO ~] '"+SAI_DELIBPRO+"'"
FIN

RENVOYER wlcond


Cette contribution était de : http://old.wdforge.org/newbb/viewtopic.php?forum=12&topic_id=567&post_id=2407