*liste des achats
DATE1=CTOD("  /  /    ")
DATE0=ctod("01/01/1998")
DATE2=DATE1
@ 10,10 SAY "DATE DE DEBUT" GET date1 VALID(date1 > date0 )
READ
@ 12,10 SAY "DATE DE FIN" GET date2 VALID(DATE2 > DATE1) 
*@ 15,10 SAY "DONNEZ UN CODE PRODUIT OU RIEN POUR TOUS" GET VCODE PICTURE "@!"
READ
IF date1=CTOD("  /  /    ")
RETU
ENDI
use bgmvsto
set date ansi
set safe off
index on codearti +dtoc(date) to tmp
set safe on
set date french
SET TALK OFF
set filter to quantite >0 .and.date >=date1 .and. date <=date2
GO TOP
prd="       "
@ 6,0 CLEAR
SET fixed ON
totachp=0
totach=0
PP=1
ppt=1
GO TOP
LL=1
REP="N"
@ 8,10 SAY "IMPRIMANTE O/N" GET REP PICTURE "@!"
READ
IF REP="O"
SET PRINT ON
set margin to 3
pol1=CHR(27)+"&l0O"+chr(27)+"(s12U"+chr(27)+"(s0P"+chr(27)+"(s12H"+chr(27)+"(s12V"+chr(27)+"(s0S"+chr(27)+"(s0B"+chr(27)+"(s3T"
pol2=CHR(27)+"&l0O"+chr(27)+"(s12U"+chr(27)+"(s0P"+chr(27)+"(s16H"+chr(27)+"(s12V"+chr(27)+"(s0S"+chr(27)+"(s0B"+chr(27)+"(s3T"
pol3=CHR(27)+"&l0O"+chr(27)+"(s12U"+chr(27)+"(s1P"+chr(27)+"(s5H"+chr(27)+"(s24V"+chr(27)+"(s0S"+chr(27)+"(s0B"+chr(27)+"(s6T"
*EJECT
ELSE
RETU
ENDI
SET EXACT ON
set century on
DO WHILE .NOT. EOF()
do case
case substr(codearti,1,2)="CP"
*rien
other
if prd # codearti
?
if totach>0
? "  TOTAL DES ACHATS SUR LA PERIODE   ",totach
?
totach=0
endi
IF REP="O".and.prow()>54
EJECT
pp=pp+1
ENDI
IF PROW() < 4
??pol1
?"JOURNAL DES ACHATS DE STOCK du ",DTOC(DATE1)," au ",DTOC(DATE2),"PAGE",STR(PP,3,0),pol2+"‚dition du",date()
?
? pol1+"   DATE      NATURE OU NOM                   QUANTITE      boutielles"
?
endi
? "PRODUIT"+pol3+" "+CODEARTI
? pol1
ENDI
? DATE,NATURE,quantite,quantite/.75
totach=totach+quantite
totachp=totachp+quantite
prd=codearti
enDC
skip
enddo
?
? "  TOTAL DES ACHATS SUR LA PERIODE   ",totach
?
? "total des achats :                  ",totachp
eject
set print off
close data
retu
