#include Prod.Product #include BL.Derde.KlantSpecifiek PakketKeller(Ref) Set D="\",Q="K",U=";" Kill Pakket,Products Set Prod=$P(Ref,"\") Set PRNr=$$GetPRNr(Prod) Quit:PRNr="" "#no prod" Set PakRef=$P(Ref,"\",2) Set Pakket(PakRef)="" Set Products(PRNr)=1 Do LIMPORT^PAKKET($$$KlantKeller,.Pakket,.Products,1) Quit "ok" PakketKlant(Ref) Set D="\",Q="K",U=";" Kill Pakket,Products Set KLNr=$P(Ref,"\",1) Quit:'$D(^KK1(KLNr)) Set Prod=$P(Ref,"\",2) Set PRNr=$$GetPRNr(Prod) Quit:PRNr="" "#no prod" Set PakRef=$P(Ref,"\",3) Set Pakket(PakRef)="" Set Products(PRNr)=1 Do LIMPORT^PAKKET(KLNr,.Pakket,.Products,1) Quit "ok" ExistPakket(PakNm) Quit:$$UPTRIMAN^vhRtn1(PakNm)="" "#ongeldig" Set PAKNr=$G(^PAKKET("IK",$$$KlantKeller,$$UPTRIMAN^vhRtn1(PakNm))) Quit PAKNr GetAfdekkap(PRNr) Set HFPRNr=$P($G(^PRBS("BS",PRNr,"PRAKLI.001")),"\") If 'HFPRNr Do . Set BSKey="" . For Set BSKey=$O(^PRBS("BS",PRNr,BSKey)) Quit:BSKey="" Do . . Set TempPRNr=$P($G(^PRBS("BS",PRNr,BSKey)),"\") . . Quit:'TempPRNr . . Set:$E($P(^KPR(TempPRNr,0),"\"),1,3)="ZAA" HFPRNr=TempPRNr Quit:'HFPRNr "#no afdek" If HFPRNr=259206 Quit "PROLUX" If HFPRNr=53820 Quit "KELLER" If HFPRNr=261040 Quit "KELLER CHROOM" If HFPRNr=74660 Quit "BLANK SYM." If HFPRNr?1(1"24665",1"24666") Quit "BLANK LI+RE" Quit "#onbekend" GetPakket(Prod) Set PRNr=$$GetPRNr(Prod) Quit:PRNr="" "#no prod" Set Pakket=$$DISP^PAKKET($$$KlantKeller,PRNr,",") ; Pakketref If Pakket=""&&($E(Prod,1,2)="OL") Do . Set Pakket=$E(Prod,4,11) Quit Pakket GetPRNr(Prod) New PRNr Quit:Prod?4.7N Prod Set PRNr="" If $E(Prod,1,2)="OL" Do . Set KT=$$UPTRIMAN^vhRtn1(Prod) . Set KT2=$E(KT,1,3) . Set KT=KT2_" " . For Set KT=$O(^KPR1(KT)) Quit:KT=""||($E(KT,1,3)'=KT2) Do Quit:PRNr . . Set:Prod=$P(^KPR1(KT),"\",2) PRNr=$P($G(^KPR1(KT)),"\") Quit:$G(PRNr)?4.7N PRNr If $E(Prod,1,2)="TB" Do . Set DosNr=$E(Prod,8,11) . Set PRNr=$G(^KPR3("T",DosNr)) Quit:$G(PRNr)?4.7N PRNr If Prod?4A,PRNr="" Do Quit PRNr . Set PRNr=$G(^KPR3("T",Prod)) Quit "" ProPlus(Ref) Set Prod=$P(Ref,"\") Set PRNr=$$GetPRNr(Prod) Set Kenm=$P(Ref,"\",2) Quit:PRNr="" "#no prod" Quit:'$D(^KPR(PRNr,"G")) "#no G-node" Set $P(^KPR(PRNr,"G"),"\",3)="PR+" Quit "PR+" Kenm(Ref) Set Prod=$P(Ref,"\") Set PRNr=$$GetPRNr(Prod) Set Kenm=$P(Ref,"\",2) Quit:PRNr="" "#no prod" Set Val=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,Kenm)) ; Frontbevestiging Set:Val=0 Val="" Quit Val GetPPL(Ref) Set Prod=$P(Ref,"\") Set PRNr=$$GetPRNr(Prod) Quit:PRNr="" "#no prod" Quit $TR($$$PRGet($$$PPLMTL),".",",") GetPrijs(Ref) Set D="\",Q="K",U=";" S QU="PV",QU(1)=17,QU(2)="Paul Verhulst" Set Prod=$P(Ref,"\") Set PRNr=$$GetPRNr(Prod) Quit:PRNr="" "#no prod" Quit $TR($P($$KLANTPR^KPRIJS($$$KlantKeller,PRNr),"\"),".",",") IsStroken(Prod) Set PRNr=$$GetPRNr(Prod) Quit:PRNr="" "#no prod" Quit $LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"MATKL"))="HS" ; Stroken Bodem(Prod) Set PRNr=$$GetPRNr(Prod) Quit:PRNr="" "#no prod" Set HFPRNr=$$BodemPRNr(PRNr) Quit:'HFPRNr "#No Bodem" Quit $P(^KPR(HFPRNr,0),"\") Afdek(Prod) Set PRNr=$$GetPRNr(Prod) Quit:PRNr="" "#no prod" Set HFPRNr=$P($G(^PRBS("BS",PRNr,"PRAKLI.001")),"\") If 'HFPRNr Do . Set BSKey="" . For Set BSKey=$O(^PRBS("BS",PRNr,BSKey)) Quit:BSKey="" Do . . Set TempPRNr=$P($G(^PRBS("BS",PRNr,BSKey)),"\") . . Quit:'TempPRNr . . Set:$E($P(^KPR(TempPRNr,0),"\"),1,3)="ZAA" HFPRNr=TempPRNr Quit:'HFPRNr "#no afdek" Quit $P(^KPR(HFPRNr,0),"\") BodemPRNr(PRNr) Set HFPRNr=$P($G(^PRBS("BS",PRNr,"PRBDHZ.001")),"\") Set:'HFPRNr HFPRNr=$P($G(^PRBS("BS",PRNr,"PRBDHO.001")),"\") If 'HFPRNr Do . Set BSKey="" . For Set BSKey=$O(^PRBS("BS",PRNr,BSKey)) Quit:BSKey="" Do . . Set TempPRNr=$P($G(^PRBS("BS",PRNr,BSKey)),"\") . . Quit:'TempPRNr . . Set:$E($P(^KPR(TempPRNr,0),"\"),1,3)="SPP" HFPRNr=TempPRNr Quit:'HFPRNr "" Quit HFPRNr BouwStenen(Ref) Do MASTER^cQ5 Set D="\",Q="K",U=";" S QU="PV",QU(1)=17,QU(2)="Paul Verhulst" s DT=$$EXTDATE^vhDTyp($H,"DKP") Set Prod=$P(Ref,"\") Set PRNr=$$GetPRNr(Prod) Quit:PRNr="" "#no prod" Quit $$BouwSteen(PRNr,0) InsidePRBS(PRNr) Set Status=$$BouwSteen(PRNr,1) Set sMod=1 Quit BouwSteen(PRNr,InsidePRBS) New IB,RH,LD,KLAS,DC,LT,ZWH,VPK,SlowFast,IsBinnenLade, IsHoog,IsBreed,IsFast,BodemPRNr If $P(^KPR(PRNr,0),"\",3)'=435287 Do Quit "Foutief gen. product" ; GENPRNr = GEN.HALTBPA (TBX PRO kAst) . D:InsidePRBS WARN^vhTXTPOP("Geen afgeleid product van GEN.HALTBPA") Set $P(^KPR(PRNr,"G"),"\",3)="PR+" Set $P(^KPR(PRNr,0),"\",3)=435287 ; GENPRNr = GEN.HALTBPA (TBX PRO kAst) Set SlowFast="" ; slow fast mover Set IB=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"IB")) ; Interne breedte Set RH=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"RH")) ; Rughoogte Set LD=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"LD")) ; Ladediepte Set KLAS=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"KLAS")) ; Klasse (Spoelbak, Lade, ...) Set DC=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"DC")) ; DesignCode Set LT=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"LT")) ; LadeType L of B Set ZWH=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"ZW")) ; Zijwandhoogte Set VPK=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"VERPAK")) ; Verpakking Quit:KLAS["SP" "#Spoelbak" ; Bepalen Breedte (Smal of Breed) Set IsBreed=IB>(600-(16*2)+1) ; Bepalen Hoogte (Laag of Hoog) Set IsHoog=RH'?1(1"N",1"M") ; Binnenlade Set IsBinnenLade=LT="B" ; Bepalen Vakken (1, 2 of 4 vakken) Set Vakken=$S(IsBinnenLade&&IsHoog&&IsBreed:4,IsBinnenLade&&IsHoog||IsBreed:2,1:1) ; Bepalen SLOW of FAST mover If $G(SlowFast)="" Do . Set SlowFast="S" . ;w KLAS," LT:",LT," BinLa:",IsBinnenLade," IB:",IB," LD:",LD . If KLAS="L",'IsBinnenLade,IB>(500-(19*2)-2),IB<600,LD=500 Set SlowFast="F" Set IsFast=SlowFast="F" ; Bepalen Inkorten (aantal : 0, 1 of 2) Set BodemPRNr=$$BodemPRNr(PRNr) Quit:'BodemPRNr "#Geen Bodem" ;w "*",BodemPRNr,"*" Set Inkorten=0 Set:$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TB",BodemPRNr,"BasisType"))="BODEMSTRK" Inkorten=1,IsFast=0 Set:$P(^KPR(BodemPRNr,0),"\")["KOP" Inkorten=2,IsFast=0 ;W PRNr," Breed:",IsBreed," Hoog:",IsHoog," IsBin:",IsBinnenLade," IsFast:",IsFast," Vakken:",Vakken," Inkorten:",Inkorten,! r k Do ModPRBS(PRNr,IsBreed,IsHoog,IsBinnenLade,IsFast,Vakken,Inkorten,.InsidePRBS) Quit "ok" ;D ModPRBS^PVKeller(418576,1,0,0,1,1,0) ModPRBS(PRNr,IsBreed,IsHoog,IsBinnenLade,IsFast,Vakken,Inkorten,InsidePRBS) #define Label "PRO+" Set OnLine=0 If '$G(InsidePRBS) Do . Do INIT^PRBS . Set %J=$$%J^vhRtn1() . Do FETCH^PRBS(PRNr) . Do:OnLine REFRESH^PRBS ; Verwijderen bouwstenen Set BSKey="" For Set BSKey=$O(^HULP(%J,"C",BSKey)) Quit:BSKey="" Do . Set BSRec=^HULP(%J,"C",BSKey) . Quit:($P(BSRec,D,1)?4.7N) ; halffabrikaat . Quit:($P(BSRec,D,11)="BINL") ; kosten vr binnenladen . Kill ^HULP(%J,"C",BSKey) ; alleen producten behouden en kosten voor Binnenladen ; Creatie bouwstenen ; Montage #Define Montage "\LSF;51\LSS;68\LBF;62\LBS;79\HSF;61\HSS;78\HBF;77\HBS;94" Do . Set Key=$S(IsHoog:"H",1:"L")_$S(IsBreed:"B",1:"S")_$S(IsFast:"F",1:"S") . Set Value=$P($P($$$Montage,"\"_Key_";",2),"\") . Set Rec=D_1_D_"T" . Set $P(Rec,D,11)=$$$Label . Set $P(Rec,D,13)="Monteren "_Key . Set $P(Rec,D,7)=Value . Set $P(Rec,D,8)=Value . Set $P(Rec,D,9)="TBMONTPRO" . Set BSKey=$$DEFBSKEY^PRBS("TIJD") . Set ^HULP(%J,"C",BSKey)=Rec ; Inkorten #Define Inkorten "1;60\2;120" If Inkorten Do . Set Value=$P($P($$$Inkorten,Inkorten_";",2),"\") . Set Rec=D_1_D_"T" . Set $P(Rec,D,11)=$$$Label . Set $P(Rec,D,13)="Inkorten "_Inkorten . Set $P(Rec,D,7)=Value . Set $P(Rec,D,8)=Value . Set $P(Rec,D,9)="TBZAAG" . Set BSKey=$$DEFBSKEY^PRBS("TIJD") . Set ^HULP(%J,"C",BSKey)=Rec ; Transport #Define Transport "\LS;KELLER_TP_LS\LB;KELLER_TP_LB\HS;KELLER_TP_HS\HB;KELLER_TP_HB" ;#Define Transport "\LS;0.374\LB;0.615\HS;0.615\HB;0.966" Do . Set Key=$S(IsHoog:"H",1:"L")_$S(IsBreed:"B",1:"S") . Set Value=$P($P($$$Transport,"\"_Key_";",2),"\") . Set Rec=D_1_D_"S"_D_1 . Set $P(Rec,D,11)=$$$Label . Set $P(Rec,D,13)="Transport "_Key . Set $P(Rec,D,9)=Value . Set BSKey=$$DEFBSKEY^PRBS("KOST") . Set ^HULP(%J,"C",BSKey)=Rec Do REFRESH^PRBS If '$G(InsidePRBS) Do . Do SAVE^PRBS(PRNr) . Do CONTROLE^PRBSC(PRNr,"A") Quit