PVSTAT ;Statistiek [ 11/08/2003 8:27 PM ] OMZLAC ; Marge berekenen met de nieuwe aankoopprijzen Set Dev=0 Set Dev=$$OPEN^vhDEV(,"HALJDB.TXT","W") Use Dev Write $TR("PRNr,KLNr,Qty,CiffPPL,PrijsO,PrijsR",",",$C(9)),! Set PRNr=0 For Set PRNr=$O(^KSTPR(PRNr)) Quit:PRNr="" Do ;Quit:KLNr>1042 .Quit:'$D(^KPR(PRNr,"J6332")) .Set Vul=$P($G(^KPR(PRNr,"G")),D,10) .Set Prof=$E($P($G(^KPR(PRNr,"G")),D,2),1,3) .Quit:Vul'?2A .Quit:Prof'?3A .Quit:'$D(^HADPR("P",PRNr,"GV")) .Set KLNr=0 .Set Mnd="2001.00 " .For Set Mnd=$O(^KSTPR(PRNr,KLNr,Mnd)) Quit:Mnd="" Do ..Set Qty=$P(^(Mnd),D,1) ..Set QtyBor=$O(^HADPR("P",PRNr,"GV","B",""),-1) ..Write Mnd,$C(9),PRNr,$C(9),Prof,$C(9),Vul,$C(9),Qty,$C(9),QtyBor,! Close:0'[Dev Dev Quit omzlac ; Marge berekenen met de nieuwe aankoopprijzen (omzlac kleine letters i.v.m. in Cache) Set Dev=0 Set Dev=$$OPEN^vhDEV(,"HALSTM.TXT","W") Use Dev Set BMnd="2000.07 " Set EMnd="2001.06 " Write $TR("PRNr,KLNr,Qty,CiffPPL,PrijsO,PrijsR",",",$C(9)),! Set PRNr=0 For Set PRNr=$O(^KSTPR(PRNr)) Quit:PRNr="" Do ;Quit:KLNr>1042 .Quit:'$D(^KPR(PRNr,"J6332")) .Set Vul=$P($G(^KPR(PRNr,"G")),D,10) .Quit:Vul'?2A .Set KLNr=0 .For Set KLNr=$O(^KSTPR(PRNr,KLNr)) Quit:KLNr="" Do ..Set Mnd="2001.00 " ..For Set Mnd=$O(^KSTPR(PRNr,KLNr,Mnd)) Quit:Mnd="" Do ...Set Qty=$P(^(Mnd),D,1) ...Write KLNr,$C(9),PRNr,$C(9),Mnd,$C(9),Qty,$C(9),Vul,! Close:0'[Dev Dev Quit OMZNEW ; Marge berekenen met de nieuwe aankoopprijzen Set Dev=0 Set Dev=$$OPEN^vhDEV(,"NEWOMZPVH.TXT","W") Use Dev Set BMnd="2000.07 " Set EMnd="2001.06 " Write $TR("PRNr,KLNr,CiffPPL,PrijsO,PrijsR,PrijsEur",",",$C(9)),! Set KLNr=0 For Set KLNr=$O(^KSTKL(KLNr)) Quit:KLNr="" Do ;Quit:KLNr>1042 .Set (SomC1,SomP1,SomP2,SomP3)="" .Set PRNr=0 .For Set PRNr=$O(^KSTKL(KLNr,PRNr)) Quit:PRNr="" Do ..Set Qty=$$KLANT^STAT(KLNr,PRNr,BMnd,EMnd,"1") ..Quit:'Qty ..Set RecP1=$$KLANTPR^KPRIJS(KLNr,PRNr) ..Set RecP2=$$KLANTPR^pvprijs(KLNr,PRNr) ..Set RecP3=$$KLANTPR^pvpreur(KLNr,PRNr) ..;Write PRNr,$C(9),KLNr,$C(9),Qty,$C(9),$TR($P(RecP1,D,13),".",","),$C(9),$TR($P(RecP1,D,3),".",","),$C(9),$TR($P(RecP1,D,1),".",","),$C(9),$TR($P(RecP1,D,14),".",","),$C(9),$TR($P(RecP2,D,1),".",","),$C(9),$TR($P(RecP2,D,14),".",","),$C(9),$TR($P(RecP3,D,1),".",","),$C(9),$TR($P(RecP3,D,14),".",","),$C(9),! ..Set SomC1=SomC1+(Qty*$P(RecP1,D,13)) ..Set SomP1=SomP1+(Qty*$P(RecP1,D,14)) ..Set SomP2=SomP2+(Qty*$P(RecP2,D,14)) ..Set SomP3=SomP3+(Qty*$P(RecP3,D,14)) .Write:SomC1'="" KLNr,$C(9),$TR(SomC1,".",","),$C(9),$TR(SomP1,".",","),$C(9),$TR(SomP2,".",","),$C(9),$TR(SomP3,".",","),! Close:0'[Dev Dev Quit OMZBLUM ;Omzet prod per klant voor Peter Van Hoecke Set KLId=0 Set Dev=0 Set Dev=$$OPEN^vhDEV(,"OMZET2.txt","W") Use Dev Set PRNr=0 Write $TR("SGR,IDNr,Korttekst,Klant,Regio,Stuks,#Ln",",",$C(9)) For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do .Quit:'$D(^KPR(PRNr,"J5005")) .Set KortTekst=$P(^KPR(PRNr,0),D) .Set IDNr=$P(^KPR(PRNr,2),D,25) .Set SGH=$P(^KPR(PRNr,$O(^KPR(PRNr,"I"))),D,3) .Set KLNr=0 .For Set KLNr=$O(^KSTPR(PRNr,KLNr)) Quit:KLNr="" Do ..Set RecStat=$$PROD^STAT(PRNr,KLNr,"2000.03 ","2001.02 ","1,4") ..Quit:'$P(RecStat,D,1) ..Set KLId=$G(^KK1(KLNr)) ..Quit:KLId="" ..Set KLNm=$P(^KKL(KLId,0),D,2) ..Set Regio=$P(^KKL(KLId,0),D,20) ..Set PrijsKl=$P(^KKL(KLId,2),D,3) ..Set Aktief=$P(^KKL(KLId,2),D,10) ..Set TypeKl=$P(^KKL(KLId,1),D,25) ..Set Aktivit=$P(^KKL(KLId,1),D,11) ..Set Utz="" ..Set Utz=Utz_$S($D(^KLPUTZ("N",KLNr)):"H",1:"") ..Set Utz=Utz_$S($D(^KLPUTZ("S",KLNr)):"S",1:"") ..Write SGH,$C(9),IDNr,$C(9),KortTekst,$C(9),KLNr,$C(9),KLNm,$C(9),Regio,$C(9),$P(RecStat,D,1),$C(9),$P(RecStat,D,2),! Close:0'[Dev Dev Quit D ^cA604 Kill PRNrs For Set PRNr=$$SELECT^PRODUKT6() Quit:'PRNr Set PRNrs(PRNr)="" Quit:'$D(PRNrs) Do FAKT(.PRNrs,$$INTDATE^vhDTyp("1-4-98"),$$INTDATE^vhDTyp("31-3-99")) ;Do FAKT(.PRNrs,"","") Q DOEL ;Omzet per klant voor Peter Van Hoecke Set KLId=0 Set Dev=0 Set Dev=$$OPEN^vhDEV(,"OMZET2.txt","W") Use Dev Write $TR("KLNr,KLNm,Regio,PrijsKL,Uitz,Aktief,TypeKl,Aktiviteit,LevNr,LevNm,Klas,OmzetH,MargeH,OmzetS,MargeS",",",$C(9)),! For Set KLId=$O(^KKL(KLId)) Quit:KLId="" Do .Set KLNm=$P(^KKL(KLId,0),D,2) .Set KLNr=$P(^KKL(KLId,0),D,1) .Set Regio=$P(^KKL(KLId,0),D,20) .Set PrijsKl=$P(^KKL(KLId,2),D,3) .Set Aktief=$P(^KKL(KLId,2),D,10) .Set TypeKl=$P(^KKL(KLId,1),D,25) .Set Aktivit=$P(^KKL(KLId,1),D,11) .Set Utz="" .Set Utz=Utz_$S($D(^KLPUTZ("N",KLNr)):"H",1:"") .Set Utz=Utz_$S($D(^KLPUTZ("S",KLNr)):"S",1:"") .Kill C .Set PRNr=0 .For Set PRNr=$O(^KSTKL(KLNr,PRNr)) Quit:PRNr="" Do ..Set Qty=$$KLANT^STAT(KLNr,PRNr,"2000.07 ","2001.06 ",1) ..Quit:'Qty ..Set LEVNr=$E($O(^KPR(PRNr,"J")),2,5) ..Set Klas=$O(^KPR(PRNr,"I")) ..Set Klas=$P(^KPR(PRNr,Klas),D,2) ..Set Prijs=$$KLANTPR^KPRIJS(KLNr,PRNr,"N") ..Set HOmz=Qty*$P(Prijs,D,14) ..Set HMar=Qty*$P(Prijs,D,13) ..Set Prijs=$$KLANTPR^KPRIJS(KLNr,PRNr,"S") ..Set SOmz=Qty*$P(Prijs,D,14) ..Set SMar=Qty*$P(Prijs,D,13) ..Set Rec=$G(C(LEVNr,Klas)) ..Set $P(Rec,D,1)=$P(Rec,D,1)+HOmz ..Set $P(Rec,D,2)=$P(Rec,D,2)+HMar ..Set $P(Rec,D,3)=$P(Rec,D,3)+SOmz ..Set $P(Rec,D,4)=$P(Rec,D,4)+SMar ..Set C(LEVNr,Klas)=Rec .Set C("*","*")="" ; Voor elke klant een blanko record invoegen .Quit:'$D(C) .Set (Klas,LEVNr)="" .For Set LEVNr=$O(C(LEVNr)) Quit:LEVNr="" Do ..Set LEVNm=$P($G(^KLE($G(^KL1(LEVNr),"*"),0)),D,2) ..For Set Klas=$O(C(LEVNr,Klas)) Quit:Klas="" Do ...Set Rec=$TR(C(LEVNr,Klas),".",",") ...Write KLNr,$C(9),KLNm,$C(9),Regio,$C(9),PrijsKl,$C(9),Utz,$C(9),Aktief,$C(9),TypeKl,$C(9),Aktivit,$C(9) ...Write LEVNr,$C(9),LEVNm,$C(9),Klas,$C(9),$P(Rec,D,1),$C(9),$P(Rec,D,2),$C(9),$P(Rec,D,3),$C(9),$P(Rec,D,4),! Close:0'[Dev Dev Quit D ^cA604 Kill PRNrs For Set PRNr=$$SELECT^PRODUKT6() Quit:'PRNr Set PRNrs(PRNr)="" Quit:'$D(PRNrs) Do FAKT(.PRNrs,$$INTDATE^vhDTyp("1-4-98"),$$INTDATE^vhDTyp("31-3-99")) ;Do FAKT(.PRNrs,"","") Q FAKT(PRNrs,BDat,EDat) Set Dev=$$OPEN^vhDEV($$DIRUSER^vhDEV,"OMZFAKT.TXT","W") ;Set Dev=$$OPEN^vhDEV("C:\","OMZFAKT.TXT","W") Use Dev Set FakNr="" Write $TR("PRNr,KortTekst,CiffPPL,KLNr,KLNm,FakNr,Datum,Qty,Omzet,Marge",",",$C(9)),! Set FAKNr=800000 For Set FakNr=$O(^KFA("F",FakNr)) Quit:FakNr="" Do .Set FRec=^KFA("F",FakNr,0,0) .Set Dat=$$INTDATE^vhDTyp($P(FRec,D,6),"DK") .If BDat,DatEDat Quit .Set KLNr=$P(FRec,D,1) .Set ULNr=99 .For Set ULNr=$O(^KFA("F",FakNr,ULNr)) Quit:ULNr="" Do ..Set LNr=100 ..For Set LNr=$O(^KFA("F",FakNr,ULNr,LNr)) Quit:LNr="" Do ...Set LRec=^KFA("F",FakNr,ULNr,LNr) ...Set PRNr=$P(LRec,D,2) ...Quit:'PRNr ...Quit:'$D(PRNrs(PRNr)) ...Set CifPPL=$P(^KPR(PRNr,$O(^KPR(PRNr,"J"))),D,23) ...Write PRNr,$C(9),$P(^KPR(PRNr,0),D,1),$C(9),$TR(CifPPL,".",","),$C(9),KLNr,$C(9),$P(^KKL(^KK1(KLNr),0),D,2),$C(9),FakNr,$C(9),$P(FRec,D,3),$C(9),$P(LRec,D,3),$C(9),$TR($P(LRec,D,33),".",","),$C(9),$TR($P(LRec,D,34),".",","),! Close:0'[Dev Dev Quit