#include vhLib.Macro #include Prod.Product Write @F11,@F1,@FMTI," Export van alle productprijzen - "_QN,@FMTi Write !!!,"Met afgeleide producten (duurt VEEL langer), J[]" Read MetAfgeleid Set MetAfgeleid=$E($ZCVT(MetAfgeleid,"U"))="J" Write !!!! Do Lijst(MetAfgeleid) Quit Lijst(MetAfgeleid) Do BLDCONTR^KPOSW Set Dev=$$OPEN^vhDEV(,"ProductPrijsVgl "_$$EXTDATE^vhDTyp($H,"DK")_".txt","W","T") Use Dev Kill Cnt Write $TR("SortKey;HG;GR;SG;LevNr;LevNm;BlumKLNr;IdentNr;KortTekst;StockType;ProdGrp;GenTyp;#Stuks;#Klant;HKat;SKat;NONAct;HPPL;SPPL;HGO;SGO;HKort;SKort;HCif;SCif;HCifPPL;SCifPPL;DifCifPPL;HDB;SDB;HVork;SVork;Dif;HOmzet;SOmzet;HLijst;SLijst",";",$C(9)),! Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set IDNr=$P(^KPR(PRNr,2),D,25) . Set KortT=$P(^KPR(PRNr,0),D,1) . Quit:KortT["*DO*" . Quit:KortT["*KP*" . Set GenTyp=$$GENTYP^HAD(PRNr) . If '$G(MetAfgeleid) Quit:$L(GenTyp) . Do FETCHPR^UTILI(PRNr,"Rec") . Set StockType=$S($D(ContrInd(PRNr)):"C",$P(Rec(1),D,20):"S",1:"N") ; Is stock . Set PropName="ProductGroep" . Set ProdGrp=$$GetPropViaNr^Prod.Product.KPRPropViaNr() . Set HRec=$$PRIJSGEG^KPRIJS(PRNr,"N") ; Ophalen van de prijsgegevens van een product . Set SRec=$$PRIJSGEG^KPRIJS(PRNr,"S") ; Ophalen van de prijsgegevens van een product . Set LEVNr=$P(Rec("J"),D,1) . Set LevNm=$S($D(^KL1(LEVNr)):$P($G(^KLE(^KL1(LEVNr),0)),D,2),1:"") . Set AantalKlant=$O(^AKANAL(PRNr,""),-1) ;#klanten . Set AantalStuks=$P($G(^AKANAL(PRNr)),D,1) . If LEVNr=5005 Do . . Set BLKLNr=$P($$BLPRIJS^BLPRGEG(PRNr),"\",9) . . If BLKLNr="212250" Set BLKLNr="" . Else Do . . Set BLKLNr="" . Use Dev . Write $$SORTKEY^PRODUKT(PRNr) . Write *9,$P(Rec("I"),D,1),*9,$P(Rec("I"),D,2),*9,$P(Rec("I"),D,3) . Write *9,LEVNr,*9,LevNm,*9,BLKLNr,*9,IDNr . Write *9,KortT,*9,StockType,*9,ProdGrp . Write *9,$P(GenTyp,"\",1,2) . Write *9,$$$ExcelNum(AantalStuks),*9,AantalKlant . Write *9,$S($L($P(HRec,"\",16)):"I",1:""),$S($L($P(HRec,"\",17)):"H",1:"") . Write *9,$S($L($P(SRec,"\",16)):"I",1:""),$S($L($P(SRec,"\",17)):"H",1:"") . Write *9,$$Actief(PRNr) . Write *9,$$$ExcelNum($P(HRec,"\",1)),*9,$$$ExcelNum($P(SRec,"\",1)) . Write *9,$P(HRec,"\",3),*9,$P(SRec,"\",3) . Write *9,$$$ExcelNum($P(HRec,"\",5)),*9,$$$ExcelNum($P(SRec,"\",5)) . Write *9,$$$ExcelNum($P(HRec,"\",10)),*9,$$$ExcelNum($P(SRec,"\",10)) . Write *9,$$$ExcelNum($P(HRec,"\",6)),*9,$$$ExcelNum($P(SRec,"\",6)) . WRite *9,$S(+$P(HRec,"\",6):$$$ExcelNum($P(SRec,"\",6)-$P(HRec,"\",6)/$P(HRec,"\",6)),1:"?") . Write *9,$$$ExcelNum($P(HRec,"\",12)),*9,$$$ExcelNum($P(SRec,"\",12)) . Write *9,$$$ExcelNum($P(HRec,"\",14)),*9,$$$ExcelNum($P(SRec,"\",14)) . Write *9,$$DiffCifPPL(HRec,SRec) . Write *9,$$$ExcelNum($P(HRec,"\",6)*AantalStuks),*9,$$$ExcelNum($P(SRec,"\",6)*AantalStuks) . Write *9,$$$ExcelNum($P(HRec,"\",15)),*9,$$$ExcelNum($P(SRec,"\",15)) . Write ! Do CLOSE^vhDEV(Dev) Q ; Output: Piece 1 = PPL ; Piece 2 = aankoopmunt ; Piece 3 = aankoopeenheid ; Piece 4 = aankoopeenheid (numeriek) ; Piece 5 = korting ; Piece 6 = CifPPL ; Piece 7 = firmamunt ; Piece 8 = verkoopeenheid ; Piece 9 = verkoopeenheid (numeriek) ; Piece 10 = Cif% ; Piece 11 = dekkingsbijdrage ; Piece 12 = dekkingsbijdrage% ; Piece 13 = vork ; Piece 14 = vork% ; Piece 15 = lijstprijs (per stuk) ; Piece 16 = katprod industrie (Prijsklasse code) ; Piece 17 = katprod handel (Prijsklasse code) ; Piece 18 = katprod KS (Prijsklasse code) ; Piece 19 = LEVNr ; Piece 20 = CorFakt . Set DiffCifPPL(HRec,SRec) Set Diff="" Set:+$J($S(+$P(HRec,"\",6):$P(SRec,"\",6)-$P(HRec,"\",6)/$P(HRec,"\",6),1:0),0,4)'=0 Diff="A" Set:(+$P(HRec,"\",12)'=+$P(SRec,"\",12)) Diff=Diff_"D" Set:(+$P(HRec,"\",14)'=+$P(SRec,"\",14)) Diff=Diff_"V" Set:($P(HRec,"\",16)'=$P(SRec,"\",16)) Diff=Diff_"K" Set:($P(HRec,"\",17)'=$P(SRec,"\",17)) Diff=Diff_"H" Set:($P(HRec,"\",15)'=$P(SRec,"\",15)) Diff=Diff_"L" Quit Diff Actief(PRNr) Set NonAct=$$$PRGet($$$NONAktief) Quit:NonAct NonAct Set GenTyp=$$$PRGet($$$GenProduct) Quit:GenTyp'?4.8N "" Quit:'$D(^PRBS("BS",PRNr)) "GeenBS" Quit:$$HFBestaatNietMeer(PRNr) "HF bestaat niet" Quit:(GenTyp'?1(1"KAD",1"PRF",1"GLA",1"TBX",1"GRP",1"TLM",1"ASM"))&&($P($G(^PRBS("BS",PRNr)),"\",3)="") "ZndrVersie" Quit "" HFBestaatNietMeer(PRNr) Set BSKey="" Set NonActief=0 For Set BSKey=$O(^PRBS("BS",PRNr,BSKey)) Quit:BSKey="" Do Quit:NonActief . Set HFPRNr=$P(^PRBS("BS",PRNr,BSKey),"\",1) . Quit:HFPRNr="" . If '$D(^KPR(HFPRNr)) Set NonActief=1 . Else If $$$ProductGet(HFPRNr,$$$GenProduct)?.E1A.E Set NonActief=1 Quit NonActief