Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Do while problem
Message
De
03/06/2005 03:47:18
 
 
À
03/06/2005 03:20:16
Information générale
Forum:
Visual FoxPro
Catégorie:
Autre
Versions des environnements
Visual FoxPro:
VFP 6
OS:
Windows '98
Network:
Windows 98
Database:
Visual FoxPro
Divers
Thread ID:
01019676
Message ID:
01019701
Vues:
20
>Dear Sir,
>
>One other solution
>
>The following command work fine but very slow
>Please modfiy to increase speed
>
>SELECT VOUCHERS
>INDEX ON DTOC(DATE,5)+STR(VOU_NO, 5)+ALLTRIM(VOU_TYPE) TO VOUCHERS1
>
>SELECT vou_sum
>INDEX ON DTOC(DATE,5)+STR(VOU_NO, 5)+ALLTRIM(VOU_TYPE) TO VOU_SUM1
>
>SELECT VOUCHERS
>REPLACE all d1 with ""
>
>SELECT vou_sum
>GO Top
>DO While !Eof()
>
>	AA=Date       && date type
>	bb=VOU_NO    && numeric type
>	cc=Alltrim(VOU_TYPE)&& character type
>	dd=d1
>	
>	SELECT VOUCHERS
>	LOCATE For Date=AA And VOU_NO=bb And Alltrim(VOU_TYPE)=cc
>	IF Found()
>		REPLACE all d1 With dd For Date=AA And VOU_NO=bb And Alltrim(VOU_TYPE)=cc
>	ENDIF
>	SELECT vou_sum
>	Skip
>ENDDO
>
This would have to be sufficient
( DTOS(Date)+STR(VOU_NO,5)+VOU_TYPE have to be a candidate value ):
SELECT vou_sum
INDEX ON DTOS(Date)+STR(VOU_NO,5)+VOU_TYPE TO VOU_SUM1 && CANDIDATE

REPLACE ALL IN VOUCHERS ;
  d1 With LOOKUP(vou_sum.d1,SEEK(DTOS(Date)+STR(VOU_NO,5)+VOU_TYPE,vou_sum.Date,'VOU_SUM1')
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform