PRBSP ; Product Bouwstenen Print/Transfer [ 11/29/2003 8:10 AM ] TRANSFER ;Transfer naar Excel van Moeder en bouwstenen Set Meta=$$PI^vhPOPUP("C;C","KO1","Type","PRBS","META") Quit:Meta="" Set Dev=0 Set Dev=$$OPEN^vhDEV(,"Bouwsteen.TXT","W","T") Use Dev Write $TR("SortKey;MPRNr;Moeder;Type;Groep;KPRNr;Kind;Aantal;PPL;Som;Prijs;OLVerp;Oms;Suppl;Faktor;TijdPlan;TijdKost;Kostplaats;KPKost;KVerlet;GVerlet",";",$C(9)),! Set %J=$$%J^vhRtn1() Set (HG,GR,SG,MK,KT)="" For Set HG=$O(^KPH(HG)) Quit:HG="" Do .For Set GR=$O(^KPH(HG,GR)) Quit:GR="" Do .. For Set SG=$O(^KPH(HG,GR,SG)) Quit:SG="" Do ... For Set MK=$O(^KPH(HG,GR,SG,MK)) Quit:MK="" Do .... For Set KT=$O(^KPH(HG,GR,SG,MK,KT)) Quit:KT="" Do ..... Set PRNr=+^(KT) ..... Do TONE(PRNr,Meta) Do CLOSE^vhDEV(Dev) Quit TRANSPR(PRNr) If '$G(PRNr) s PRNr=$$SELECT^PRODUKT6() Quit:'PRNr Set Dev=0 Set Dev=$$OPEN^vhDEV(,"Bouwsteen.TXT","W") Use Dev Write $TR("SortKey;MPRNr;Moeder;Type;Groep;KPRNr;Kind;Aantal;PPL;Som;Prijs;OLVerp;Oms;Suppl;Faktor;TijdPlan;TijdKost;Kostplaats;KPKost;KVerlet;GVerlet",";",$C(9)),! Do TONE(PRNr) Close Dev Quit TONE(PRNr,Meta) New Kt,First,BSCode,Sort,Key ;If $L($G(Meta)) Quit:$P($G(^PRBS("BS",PRNr)),D,2)'=Meta Set Kt=$P(^KPR(PRNr,0),D,1) Quit:'($$ISORGAL^PRODUKT2(PRNr)||$$ISTAORCUB^PRODUKT2(PRNr)) Kill ^HULP(%J) Do CALC^PRBS(PRNr,.Som,1) Set BSCode="" For Set BSCode=$O(^PRBS("BS",PRNr,BSCode)) Quit:BSCode="" Do . Set Sort($$SORTKEY^PRBS(BSCode,^PRBS("BS",PRNr,BSCode)))=BSCode Set First=1 Set Key="" For Set Key=$O(Sort(Key)) Quit:Key="" Do . Do TDTL(PRNr,Sort(Key),.First) Quit TDTL(MPRNr,BSCode,First) New KPRNr,Aantal,Type,KSuppl,KFaktor,TijdPlan,TijdKost,KostPl,Groep,VErpOL,Oms,BSRec,Key,PPL,Totaal,NoSa Set NoSa="N" Set BSRec=^PRBS("BS",MPRNr,BSCode) Set KPRNr=$P(BSRec,D,1) Set Aantal=$P(BSRec,D,2) Set Type=$P(BSRec,D,3) Set KSuppl=$P(BSRec,D,4) Set KFaktor=$P(BSRec,D,5) Set TijdPlan=$P(BSRec,D,7) Set TijdKost=$P(BSRec,D,8) Set KostPl=$P(BSRec,D,9) Set Groep=$P(BSRec,D,11) Set VerpOL=$P(BSRec,D,12) Set Oms=$P(BSRec,D,13) Set Key=$O(^KPR(MPRNr,"J")) Set PPL=$P(^KPR(MPRNr,Key),D,19) Set Totaal=$J($P(Som,D),0,2) Set (Kost,KVerlet,GVerlet)="" If $L(KostPl) Do . Set oKostPlaats=##class(Prod.GAMeta.BT.KostPlaats).%OpenId(KostPl) . Quit:'$isObject(oKostPlaats) . Set Kost=oKostPlaats.GetBasisKost(.NoSa) . Set KVerlet=oKostPlaats.GetToeslagKleinVerlet(.NoSa) . Set GVerlet=oKostPlaats.GetToeslagGrootVerlet(.NoSa) ; Write MPRNr,$C(9),$$SORTKEY^PRODUKT(MPRNr) Write $C(9) Write:First $P(^KPR(MPRNr,0),D) Write $C(9),Type Write $C(9),Groep Write $C(9),KPRNr,$C(9),$S(KPRNr'?4.7N:"",1:$P($G(^KPR(KPRNr,0),"***onbekend***"),D)) Write $C(9),$TR(Aantal,".",",") Write $C(9) Write:First $TR(PPL,".",",") Write $C(9) Write:First $TR(Totaal,".",",") ;Write $C(9) Write:First $TR(+$$KLANTPR^KPRIJS(1239,MPRNr),".",",") Write $C(9),$TR($P($G(^HULP(%J,"V",BSCode)),D,1),".",",") Write $C(9),VerpOL Write $C(9),Oms Write $C(9),$TR(KSuppl,".",",") Write $C(9),$TR(KFaktor,".",",") Write $C(9),$TR(TijdPlan,".",",") Write $C(9),$TR(TijdKost,".",",") Write $C(9),KostPl Write $C(9),$TR(Kost,".",",") Write $C(9),$TR(KVerlet,".",",") Write $C(9),$TR(GVerlet,".",",") Write ! Set First=0 Quit PRPRIJS ;Transfer naar Excel van Moeder en bouwstenen Set Meta=$$PI^vhPOPUP("C;C","KO1","Type","PRBS","META") Quit:Meta="" Set Dev=0 Set Dev=$$OPEN^vhDEV(,"PRIJSVLG.TXT","W","T") Use Dev Set BeginMnd=$$CALCDATE^vhLib.DataTypes($H,"M",-12) Set BeginMnd=$$EXTDATE^vhLib.DataTypes(BeginMnd,"DM4")_" " Set EndMnd=$H ;$$CALCDATE^vhLib.DataTypes($H,"M",-1) Set EndMnd=$$EXTDATE^vhLib.DataTypes(EndMnd,"DM4")_" " Write $TR("SortKey;PRNr;Korttekst;PPL;S.PPL;Munt;S.Munt;GO;S.GO;Kort;S.Kort;Cif%;S.Cif%;CifPPL;S.CiffPPL;ADiff%;DB%;S.DB%;DB;S.DB;Vork%;S.Vork%;LijstPr;S.LijstPr;VDiff%",";",$C(9)) Write:BeginMnd $C(9),"JrQty" Write ! Set %J=$$%J^vhRtn1() Set (HG,GR,SG,MK,KT)="" For Set HG=$O(^KPH(HG)) Quit:HG="" Do .For Set GR=$O(^KPH(HG,GR)) Quit:GR="" Do .. For Set SG=$O(^KPH(HG,GR,SG)) Quit:SG="" Do ... For Set MK=$O(^KPH(HG,GR,SG,MK)) Quit:MK="" Do .... For Set KT=$O(^KPH(HG,GR,SG,MK,KT)) Quit:KT="" Do ..... Set PRNr=+^(KT) ..... ;Quit:'$D(^KPR(PRNr,"J5938")) ..... ;Quit:$P($G(^PRBS("BS",PRNr)),D,2)'=Meta ..... Do PONE(PRNr,"",BeginMnd,EndMnd) Do CLOSE^vhDEV(Dev) Quit PONE(PRNr,Limit,BeginMnd,EndMnd) ; Prijsvlg normaal met schaduw ; Limit Aankoop : DA = Dalen, SA = stijgen, VA = verschillen ; Limit Verkoop : DV = Dalen, SV = stijgen, VV = verschillen ; Indien Limit is Leeg = Allen New PrijsN,PrijsS,Ok Set PrijsN=$$PRIJSGEG^KPRIJSS(PRNr,"N") Set PrijsS=$$PRIJSGEG^KPRIJSS(PRNr,"S") Set Limit=$G(Limit) Set Ok=Limit="" If Limit="DA",$P(PrijsN,D,6)>$P(PrijsS,D,6) Set Ok=1 If Limit="SA",$P(PrijsN,D,6)<$P(PrijsS,D,6) Set Ok=1 If Limit="VA",$P(PrijsN,D,6)'=$P(PrijsS,D,6) Set Ok=1 If Limit="DV",$P(PrijsN,D,15)>$P(PrijsS,D,15) Set Ok=1 If Limit="SV",$P(PrijsN,D,15)<$P(PrijsS,D,15) Set Ok=1 If Limit="VV",$P(PrijsN,D,15)'=$P(PrijsS,D,15) Set Ok=1 ;Quit:'Ok Write PRNr Write $C(9),$$SORTKEY^PRODUKT(PRNr) Write $C(9),$P(^KPR(PRNr,0),D) ;Write $C(9),$P(^KPR(PRNr,0),D,2) ; langtekst ;Write $C(9),$P(^KPR(PRNr,0),D,11),! For I=1,2,3,5,10,6,12,11,14,15 Do . Set Val=$P(PrijsN,D,I) . Set:Val'="" Val=$TR(Val/$S((I=10)!(I=14)!(I=12):100,1:1),".",",") . Write $C(9),Val . Set Val=$P(PrijsS,D,I) . Set:Val'="" Val=$TR(Val/$S((I=10)!(I=14)!(I=12):100,1:1),".",",") . Write $C(9),Val . If (I=6)!(I=15) Do ; Verschilpercentage voor CifPPL en LijstPrijs .. Set Stijg="" .. Set:$P(PrijsN,D,I) Stijg=($P(PrijsS,D,I)-$P(PrijsN,D,I))/$P(PrijsN,D,I) .. Set Stijg=+$J(Stijg,0,4) .. Write $C(9),$S(+Stijg'=0:$TR(Stijg,".",","),1:"") If BeginMnd Do . Set Qty=$$PROD^STAT(PRNr,0,BeginMnd,EndMnd,1) . Write $C(9),$TR(Qty,".",",") Write ! Quit