cAFVBP08 ; Producten : Statistiek ; cAFVBP08 ; YZ Q ; BTEMP(GRIDID,KEUID,QTD) ; Opbouw ^mtemp99 bestellingen of orders ; GRIDID: Volgnr van de grid : indien '' : volgnummer ophalen ; KEUID: Ofwel: GridId van de ^mtemp99 met geselecteerde UI1's ; Ofwel: Geselecteerd ID (begint met $$) ; S $ZT="ERR^cAFVBF01" N @$$INITVAR^cAFVBA01("GRIDID,KEUID,QTD") ; ; Controle parameters BTEMPA F i="GRIDID","KEUID","QTD" S @i=$g(@i) I '$L(GRIDID) S GRIDID=$$GRIDID^cAFVBF01() ; BTEMPB K ^mtemp99(GRIDID,"COMMON") S OK=GRIDID S VOLGNR=1000 ; S KEUGRIDID=$$GRIDID^cAFVBF01() ; GRIDID voor aangepast grid met 'oude' productids ; slechts 1 product ; I $E(KEUID,1,2)="$$" S PR=$P(KEUID,"$$",2),^mtemp99(KEUGRIDID,"COMMON",$$DATA^cAFVBO01("^DPR","EA","PR.A",PR,150))="" G BTEMPC ; meerdere producten geselecteerd ; I $L(KEUID),'$D(^mtemp99(KEUID,"COMMON")) G BTEMPZ ; ; omvormen 'nieuwe' productids naar 'oude' D BTMPPR^cAFVBP06(KEUID,KEUGRIDID) ; BTEMPC S REF=$$REF^cAFA10(.Q,"PR") S UREF=$P(REF,D) ; S BA39=$P(@("^"_Q_"BA(39)"),D) S MNTOUT=$P($$S1^cAFE6($P(@("^"_Q_"PR(0,19)"),D,41)),",") S QDS=$$QDS^cPSN2(Q) ; ; alle (geselecteerde) producten doorlopen S UI1="" BTEMPD S UI1=$O(^mtemp99(KEUGRIDID,"COMMON",UI1)) G:'$L(UI1) BTEMPY ; ; alle S-lijnen per product doorlopen S SLIJN="S" BTEMPE S SLIJN=$O(@UREF@(SLIJN)) G:$E(SLIJN)'="S" BTEMPD ; ; opbouwen mtemp99 K N S LIJN=@UREF@(SLIJN) S $P(N(0),D)=$P(@UREF@(0),D) ; productcode S $P(N(0),D,2)=$S(QTD="":$P(@UREF@(0),D,2),QTD="F":$P(@UREF@(1),D,22),QTD="D":$P(@UREF@(2),D,2),QTD="E":$P(@UREF@(2),D,1)) ; product omschrijving S $P(N(0),D,3)=$E(SLIJN,2,5)_"."_$E(SLIJN,6,7) ; Maand S $P(N(2),D)=$TR($$IPL^cAFO3($P(LIJN,D),0,2,1),",",".") ; Aantal verkocht S $P(N(2),D,2)=$$OMREK^cAFE1(Q,$P(LIJN,D,2),BA39,MNTOUT,"V",QDS) ; Verkoopwaarde S $P(N(2),D,3)=$TR($$IPL^cAFO3($P(LIJN,D,5),0,2,1),",",".") ; Aantal gekocht S $P(N(2),D,4)=$$OMREK^cAFE1(Q,$P(LIJN,D,6),BA39,MNTOUT,"A",QDS) ; Aankoopwaarde S $P(N(2),D,5)=$$OMREK^cAFE1(Q,$P(LIJN,D,3),BA39,MNTOUT,"A",QDS) ; Marge S $P(N(2),D,6)=$S($P(LIJN,D,2):$J($P(LIJN,D,3)/$P(LIJN,D,2)*100,0,2),1:"") ; % marge S $P(N(2),D,7)=$TR($$IPL^cAFO3($P(LIJN,D,10),0,2,1),",",".") ; Correctie-aantal ; M ^mtemp99(GRIDID,"COMMON",VOLGNR)=N ; S VOLGNR=VOLGNR+1 G BTEMPE ; BTEMPY K ^mtemp99(KEUGRIDID) ; BTEMPZ Q OK ; ZZ ; 29.08.07 - 10 u 22 * V8.09