#include vhLib.Macro #include Prod.Product #include BL.Derde.KlantSpecifiek #include BL.Derde.LevSpecifiek q s PRNr=20627 w $$$PRGet($$$NONAktief) w $P(^KPR(PRNr,1),"\",25) w $$KLANTPR^KPRIJS(4810,PRNr) BackFlush Set Device=$$OPEN^vhDEV(,"BackFlush.txt","W","T") Use Device Write "ToeNr KPRNr KIdentNr KKorttekst HLX MPRNr MIdentNr MKorttekst Familie Datum Tijd Aantal Kost",! Set %J=$$%J^vhRtn1() Kill ^HULP(%J) Set PRNr="" Set Cnt=0 Set Vanaf=$$CALCDATE^vhLib.DataTypes($H,"A",-2) Set Tot=$$CALCDATE^vhLib.DataTypes($H,"A",-0) s PRNr=0 ;431818-1 For Set PRNr=$O(^PRHIST(PRNr)) Quit:PRNr="" Do ;Quit:Cnt>1 . Quit:'$d(^KPR(PRNr)) . Set KeyHist="" . For Set KeyHist=$O(^PRHIST(PRNr,KeyHist)) Quit:KeyHist="" Do . . Set Rec=^PRHIST(PRNr,KeyHist) . . Set Datum=+$P(Rec,"\") . . Quit:DatumTot . . Set MPRNr=$P(Rec,"\",15) . . Quit:'MPRNr . . Quit:$P(Rec,"\",2)>0 . . Quit:$P(Rec,"\",4)'="H" . . Quit:$P(Rec,"\",5)'="W" . . Set Familie=$P($$GENTYP^HAD(MPRNr),"\") . . Write $P(Rec,"\",7),*9,PRNr,*9,$$$ProductGet(PRNr,$$$IdentNummer),*9,$$$ProductGet(PRNr,$$$KortTekst),*9,$S($E($$$ProductGet(PRNr,$$$LinkType),1,2)="HH":"hlx",1:"vhbe") . . Write *9,MPRNr,*9,$$$ProductGet(MPRNr,$$$IdentNummer),*9,$$$ProductGet(MPRNr,$$$KortTekst),*9,Familie . . Write *9,$$$ExcelDat(Datum),*9,$$$ExcelTime($P($P(Rec,"\"),",",2)),*9,$$$ExcelNum($P(Rec,"\",2)),*9,$$$ExcelNum($P(Rec,"\",2)*$$CifPPL^KPRIJS(PRNr)) . . Write ! . Set Cnt=Cnt+1 Do CLOSE^vhDEV(Device) Quit MWNacalcHist(Familie) Set %J=$$%J^vhRtn1() Kill ^HULP(%J) Set PRNr="" Set Cnt=0 Set Vanaf=$$CALCDATE^vhLib.DataTypes($H,"M",-12,"FD") Set Tot=$$CALCDATE^vhLib.DataTypes($H,"M",-1,"LD") ;s PRNr=1856745-1 For Set PRNr=$O(^PRHIST(PRNr)) Quit:PRNr="" Do ;Quit:Cnt>1 . Quit:'$d(^KPR(PRNr)) . Quit:$$$PRGet($$$LeveranciersNr)'=$$$LevHalux . Quit:$P($$GENTYP^HAD(PRNr),"\")'=Familie . Set KeyHist="" . For Set KeyHist=$O(^PRHIST(PRNr,KeyHist)) Quit:KeyHist="" Do . . Set Rec=^PRHIST(PRNr,KeyHist) . . Set Datum=+$P(Rec,"\") . . Quit:DatumTot . . ;Quit:$P(Rec,"\",5)'=Magazijn . . Quit:$P(Rec,"\",4)'="I" . . Do AddBS(PRNr,Datum,$P(Rec,"\",2),0,0) . . Set Cnt=Cnt+1 ;zw ^HULP(%J) Do NacalcExport(Familie) Quit MWNacalcStat Set Familie="LBX" Set %J=$$%J^vhRtn1() Kill ^HULP(%J) Set PRNr="" Set Cnt=0 For Set PRNr=$O(^KSTPR(PRNr)) Quit:PRNr="" Do ;Quit:Cnt>1000 . Quit:'$d(^KPR(PRNr)) . Quit:$$$PRGet($$$LeveranciersNr)'=$$$LevHalux . Quit:$P($$GENTYP^HAD(PRNr),"\")'=Familie . Set Maand="" . Set Maand="2018.02 " . For Set Maand=$O(^KSTPR(PRNr,0,Maand)) Quit:Maand="" Do . . Set IntMaand=$$INTDATE^vhLib.DataTypes(Maand,"DM4") . . Set Aantal=$P(^KSTPR(PRNr,0,Maand),"\") . . Set Omzet=$P(^KSTPR(PRNr,0,Maand),"\",3) . . Set Marge=$P(^KSTPR(PRNr,0,Maand),"\",4) . . Do AddBS(PRNr,IntMaand,Aantal,Omzet,Marge) . . Set Cnt=Cnt+1 Do NacalcExport(Familie) Quit NacalcExport(Familie) Set Device=$$OPEN^vhDEV(,"COGS"_Familie_".txt","W","T") Use Device Write "Grp PRNr Korttekst Maand Datum Aantal Omzet Marge TotKost ExtraKost" Set KostPl="" For Set KostPl=$O(^HULP(%J,"KPL",KostPl)) Quit:KostPl="" Do . Write *9,KostPl," tijd",*9,KostPl," kost" Write *9,"TotKost+Extra",! Set Key="" For Set Key=$O(^HULP(%J,"D",Key)) Quit:Key="" Do . Set lb=^HULP(%J,"D",Key) . Set PRNr=$LI(lb,1),IntMaand=$LI(lb,2),Aantal=$LI(lb,3),Omzet=$LI(lb,4),Marge=$LI(lb,5),TotKost=$LI(lb,6),ExtraKost=$LI(lb,7) . Set Factor=1+$S(TotKost>1:(ExtraKost/TotKost),1:0) . Set Maand=$$CALCDATE^vhLib.DataTypes(IntMaand,"M","FD") . Write $P($$GENTYP^HAD(PRNr),"\"),*9,PRNr,*9,$$$PRGet($$$KortTekst),*9,$$$ExcelDat(Maand),*9,$$$ExcelDat(IntMaand),*9,Aantal,*9,$$$ExcelNum(Omzet),*9,$$$ExcelNum(Marge),*9,$$$ExcelNum(TotKost),*9,$$$ExcelNum(ExtraKost) . Set KostPl="" . Set SumKost=0 . For Set KostPl=$O(^HULP(%J,"KPL",KostPl)) Quit:KostPl="" Do . . Set Tijd=$LG($G(^HULP(%J,"D",Key,KostPl)),1) . . Set Kost=$LG($G(^HULP(%J,"D",Key,KostPl)),2) . . Write *9,$$$ExcelNum(Tijd*Factor),*9,$$$ExcelNum(Kost*Factor) . . Set SumKost=SumKost+(Kost*Factor) . Write *9,$$$ExcelNum(SumKost),! Do CLOSE^vhDEV(Device) Quit AddBS(PRNr,Datum,Aantal,Omzet,Marge) New Key Set Key=$Increment(^HULP(%J,"D")) Set (Component,Vulling,Rest)=0 Kill ^HULP(%J,"C") Kill ^HULP(%J,"V") Merge ^HULP(%J,"C")=^PRBS("BS",PRNr) Do CALCC^PRBS(.Som,1,1) ;zw ^HULP(%J) Set BSKey="" Set TotKost="" Set ExtraKost="" For Set BSKey=$o(^HULP(%J,"C",BSKey)) Quit:BSKey="" Do . Set BSRec=^HULP(%J,"C",BSKey) . Set BSKost=$G(^HULP(%J,"V",BSKey)) . Set:$P(BSRec,"\",17)="Rechtzetting kostprijs BJ2018" ExtraKost=$P(BSKost,"\",1)*Aantal . Set:$P(BSRec,"\",13)="Rechtzetting kostprijs BJ2018" ExtraKost=$P(BSKost,"\",1)*Aantal . Quit:$P(BSRec,"\",3)'="T" . Quit:$P(BSRec,"\",9)="" ; geen kostenplaatst . Set KostPl=$P(BSRec,"\",9) . Set Tijd=$P(BSRec,"\",8)*Aantal . Set Kost=$P(BSKost,"\",1)*Aantal . Set TotKost=TotKost+Kost . Set lb=$G(^HULP(%J,"D",Key,KostPl)) . Set $LI(lb,1)=$LG(lb,1)+Tijd . Set $LI(lb,2)=$LG(lb,2)+Kost . Set ^HULP(%J,"D",Key,KostPl)=lb . Set:'$D(^HULP(%J,"KPL",KostPl)) ^HULP(%J,"KPL",KostPl)="" If $D(^HULP(%J,"D",Key))||1 Do . Set ^HULP(%J,"D",Key)=$LB(PRNr,Datum,Aantal,Omzet,Marge,TotKost,ExtraKost) q Batch2 AXStat For MndCnt=-11:1:-1 Do . w MndCnt," " . Do ##class(AXimpl.Admin.STAT.Invoice.Processor).%New($$CALCDATE^vhLib.DataTypes($H,"M",MndCnt)).Process() Do ##class(AXimpl.Admin.STAT.Invoice.Processor).%New(+$H).Process() q COGS Set Device=$$OPEN^vhDEV(,"COGS.txt","W","T") Use Device Write "Grp PRNr Korttekst Maand Component Rest Aantal Omzet Marge",! Set PRNr="" For Set PRNr=$O(^KSTPR(PRNr)) Quit:PRNr="" Do . ;Quit:$P($$GENTYP^HAD(PRNr),"\")'="KAD" . Quit:'$d(^KPR(PRNr)) . Quit:$$$PRGet($$$LeveranciersNr)'=$$$LevHalux . Set Maand="" . Set Maand="2017.06 " . For Set Maand=$O(^KSTPR(PRNr,0,Maand)) Quit:Maand="" Do . . Set Aantal=$P(^KSTPR(PRNr,0,Maand),"\") . . Set Omzet=$P(^KSTPR(PRNr,0,Maand),"\",3) . . Set Marge=$P(^KSTPR(PRNr,0,Maand),"\",4) . . Do SplitCOGS(PRNr,.Component, .Vulling, .Rest) . . Write $P($$GENTYP^HAD(PRNr),"\"),*9,PRNr,*9,$$$PRGet($$$KortTekst),*9,Maand,*9,$$$ExcelNum(Component),*9,$$$ExcelNum(Rest),*9,Aantal,*9,$$$ExcelNum(Omzet),*9,$$$ExcelNum(Marge),! Do CLOSE^vhDEV(Device) Quit SplitCOGS(PRNr,Component,Vulling,Rest) Set (Component,Vulling,Rest)=0 Set %J=$$%J^vhRtn1() Kill ^HULP(%J) Kill ^HULP(%J) Merge ^HULP(%J,"C")=^PRBS("BS",PRNr) Do CALCC^PRBS(.Som,1) ;zw ^HULP(%J) Set BSKey="" For Set BSKey=$o(^HULP(%J,"C",BSKey)) Quit:BSKey="" Do . set BSRec=^HULP(%J,"C",BSKey) . set BSKost=$G(^HULP(%J,"V",BSKey)) . If $P(BSRec,"\",1)?4.10N Do . . Set Component=Component+ $P(BSKost,"\",1) . Else If $P(BSRec,"\",11)="KVUL" Do . . Set Component=Component+ $P(BSKost,"\",1) . Else Do . . Set Rest=Rest+ $P(BSKost,"\",1) q Batch Set Device=$$OPEN^vhDEV(,"SW Batch.txt","W","T") Use Device Write "TOENR BatchId TijdStip ProdGrp",! Set BatchId="" For Set BatchId=$O(^APPS.Halux.common.BatchD(BatchId)) Quit:BatchId="" Do .Set TijdStip=$LG($G(^APPS.Halux.common.BatchD(BatchId,"BatchImpl")),1) .Set ProdGrp=$LG($G(^APPS.Halux.common.BatchD(BatchId,"BatchImpl")),7) .Set TOENr="" .For Set TOENr=$O(^APPS.Halux.common.BatchD(BatchId,"ToeleveringenIndex",TOENr)) Quit:TOENr="" Do .. Write TOENr,*9, BatchId,*9,TijdStip,*9,ProdGrp,! Do CLOSE^vhDEV(Device) Quit SFS Set Dev=$$OPEN^vhDEV(,"SFS MW TAX.txt","W","T") Use Dev Set MPRNr="" Set KLNr=12486 Set MPRNr="" Set %J=$$%J^vhRtn1() For Set MPRNr=$O(^KSTKL(KLNr,MPRNr)) Quit:MPRNr="" Do . Set GenTyp=$P($$GENTYP^HAD(MPRNr),"\",1) . Quit:'((GenTyp="TAX")||(GenTyp="TAO")) . Set Rec=$$KLANT^STAT(KLNr,MPRNr,"2018.08 ","2018.09 ","1,3") . Set Qty=$P(Rec,"\",1) . Set Omz=$P(Rec,"\",3) . Quit:+Qty<1 . Kill ^HULP(%J) . Do CALC^PRBS(MPRNr,.som,1) . Set BSKey="" . Set (MW,CompHLX,CompVH)=0 . For Set BSKey=$O(^PRBS("BS",MPRNr,BSKey)) Quit:BSKey="" Do . . Set KPRNr=$P(^PRBS("BS",MPRNr,BSKey),"\",1) . . Set Rec=^HULP(%J,"V",BSKey) . . If KPRNr Do . . . Set LinkType=$$$ProductGet(KPRNr,$$$LinkType) . . . If $E(LinkType,1,2)="HH" Do . . . . Set CompHLX=CompHLX+$P(Rec,"\") . . . Else Do . . . . Set CompVH=CompVH+$P(Rec,"\") . . Else Do . . . Set MW=MW+$P(Rec,"\") . Set KostTot=$$$ProductGet(MPRNr,$$$CifPPLEUR) . Set KostTot2=$P(som,"\") . W MPRNr,*9,$$$ProductGet(MPRNr,$$$KortTekst),*9,Qty,*9,$$$ExcelNum(Omz) . W *9,$$$ExcelNum(KostTot*Qty),*9,$$$ExcelNum(KostTot2*Qty),*9,$$$ExcelNum(CompVH*Qty),*9,$$$ExcelNum(CompHLX*Qty),*9,$$$ExcelNum(MW*Qty) . w ! Do CLOSE^vhDEV(Dev) TRANS(X) Set Translator=##class(AX.Uitgaand.EC.DataAX.impl.Translator).%New() Set PRNr=Translator.GeefPRNrForAdminInclSOPR(X,11708) w PRNr," ", $$$PRGet($$$KortTekst),! q REGIODTL Set Regio=4 Set Maand="2018.12 " Set Translator=##class(AX.Uitgaand.EC.DataAX.impl.Translator).%New() Set Dev=$$OPEN^vhDEV(,"Statctrl R"_Regio_" "_Maand_".txt","W","T") Use Dev w "KLNr Naam PRNr KortTekst PRNr QtyStat OmzetStat MargeStat VkpPrijs LijstPrijs KostPrijs OmzetCalc LijstCalc KostCalc MargeCalc " W "SPRNr SKortTekst SVkpPrijs SLijstPrijs SKostPrijs SOmzetCalc SLijstCalc SKostCalc SMargeCalc",! Set KLNr=0 Set %J=$$%J^vhRtn1() For Set KLNr=$O(^KSTKL(KLNr)) Quit:KLNr="" Do . Quit:+$P(^KKL(^KK1(KLNr),0),"\",20)'=Regio . Set PRNr=0 . For Set PRNr=$O(^KSTKL(KLNr,PRNr)) Quit:PRNr="" Do . . Set Stat=$G(^KSTKL(KLNr,PRNr,Maand)) . . Set Qty=$P(Stat,"\",1) . . Quit:Qty="" . . Set Omz=$P(Stat,"\",3) . . Set Marge=$P(Stat,"\",4) . . Set VKPRec=$$KLANTPR^KPRIJS(KLNr,PRNr) . . Set VKPPrijs=$P(VKPRec,"\",14) . . Set LijstPrijs=$P(VKPRec,"\",15) . . Set KostPrijs=$P(VKPRec,"\",13) . . W KLNr,*9,$P(^KKL(^KK1(KLNr),0),"\",2),*9,PRNr,*9,$$$ProductGet(PRNr,$$$KortTekst) . . W *9,Qty,*9,$$$ExcelNum(Omz),*9,$$$ExcelNum(Marge) . . W *9,$$$ExcelNum(VKPPrijs),*9,$$$ExcelNum(LijstPrijs),*9,$$$ExcelNum(KostPrijs) . . W *9,$$$ExcelNum(VKPPrijs*Qty),*9,$$$ExcelNum(LijstPrijs*Qty),*9,$$$ExcelNum(KostPrijs*Qty),*9,$$$ExcelNum((VKPPrijs-KostPrijs)*Qty) . . Set SOPRPRNr=Translator.GeefPRNrForAdminInclSOPR($$$ProductGet(PRNr,$$$IdentNummer),KLNr) . . Set VKPRec=$$KLANTPR^KPRIJS(KLNr,SOPRPRNr) . . Set VKPPrijs=$P(VKPRec,"\",14) . . Set LijstPrijs=$P(VKPRec,"\",15) . . Set KostPrijs=$P(VKPRec,"\",13) . . W *9,SOPRPRNr,*9,$$$ProductGet(SOPRPRNr,$$$KortTekst) . . W *9,$$$ExcelNum(VKPPrijs),*9,$$$ExcelNum(LijstPrijs),*9,$$$ExcelNum(KostPrijs) . . W *9,$$$ExcelNum(VKPPrijs*Qty),*9,$$$ExcelNum(LijstPrijs*Qty),*9,$$$ExcelNum(KostPrijs*Qty),*9,$$$ExcelNum((VKPPrijs-KostPrijs)*Qty) . . w ! Do CLOSE^vhDEV(Dev) Q HadPR Set Device= $$OPEN^vhDEV(,"SW HadPR.txt","W","T") Use Device Write "PRNr TOENr TLNr TijdStipActivatie TijdStipKlaarzetten",! Set FabKey="" For Set FabKey=$O(^HADPR("F",FabKey)) Quit:FabKey="" Do . Set PRNr=$P($G(^HADPR("F",FabKey)),"\",3) . Quit:PRNr="" . Set TijdStipA=$P($G(^HADPR("F",FabKey,"A")),"\",2) . Set TijdStipK=$P($G(^HADPR("F",FabKey,"K")),"\",2) . Quit:TijdStipA="" . Write PRNr,*9,$P(FabKey,";"),*9,$P(FabKey,";",2),*9,$zdt(TijdStipA,3,1),*9,$S(TijdStipK="":"",1:$zdt(TijdStipK,3,1)),! Do CLOSE^vhDEV(Device) Quit WkVkp Set SelPRNr=$$SELECT^PRODUKT6() w !,$S(SelPRNr:$$$ProductGet(SelPRNr,$$$KortTekst),1:"ALL"),! Kill WeekTab Set PRNr=$S(SelPRNr:SelPRNr-1,1:0) For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do Quit:$S(SelPRNr:PRNr=SelPRNr,1:0) . Set Key="" . For Set Key=$O(^PRHIST(PRNr,Key)) Quit:Key="" Do . . Set Rec=^PRHIST(PRNr,Key) . . Quit:$P(Rec,"\",5)'="M" . . Quit:$P(Rec,"\",4)'="U"&&($P(Rec,"\",4)'="T") . . Set Datum=+$P(Rec,"\") . . Quit:+Datum<($H-1420) . . Set KostPrijs=+$P(Rec,"\",12) . . Set Aantal=$P(Rec,"\",2) . . Set Week=$$CALCDATE^vhLib.DataTypes(+Datum,"W","FD") . . Set WeekTab(Week)=$G(WeekTab(Week))-$S(SelPRNr:Aantal,1:KostPrijs) Set Device=$$OPEN^vhDEV(,"WkVkp "_$S(SelPRNr:$$$ProductGet(SelPRNr,$$$KortTekst),1:"ALL")_ ".txt","W","T") Use Device Write "Datum Week ",$S(SelPRNr:"Aantal",1:"Kost"),! Set Week="" For Set Week=$O(WeekTab(Week)) Quit:Week="" Do . Write $$$ExcelDat(Week),*9,$$EXTDATE^vhLib.DataTypes(Week,"DW4"),*9,$$$ExcelNum(WeekTab(Week)) . Write ! Do CLOSE^vhDEV(Device) Quit MRPRES Set CRef="pvcache" For Key=8,9,"C","G" Do . Merge @CRef@("STO",Key)=^MRPRESLog(64833,56846,"SPLIT",Key) . zw @CRef Do BLD^MRPTORD($NAME(@CRef@("STO"))) q tt s ^RES("HATBXLEAN","LD","ZAAGPLATEN") = "Halux TBX zaag lijst met plaat aantallen`58225,34557```5;1;24`92`P``BU`1`1" s ^RES("HATBXLEAN","LD","ZAAGPLATEN","F") = "@`$NA(^HULP(%J,""Z""))" s ^RES("HATBXLEAN","LD","ZAAGPLATEN","HO",1) = "T`I` | B kl | B H | B B | Bodemwissel | R kl | R H | R B | Rugwissel | Opmerking" s ^RES("HATBXLEAN","LD","ZAAGPLATEN","L",1) = "HATBXLEAN`ZAAGPLATEN" s ^RES("HATBXLEAN","LD","ZAAGPLATEN","L","PRINT") = "HATBXLEAN`ZAAGPLATEN" s ^RES("HATBXLEAN","LK","ZAAGPLATEN") = "Halux TBX zaag`58225,34557" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",1) = "Nr`Nr`9`N+`L`3``|```" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",2) = "B K1`B K1`10`C`R`2``/```" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",3) = "B K2`B K2`19`C`L`2`` |```" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",4) = "B H`B H`16`N+`R`4`0` |``" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",5) = "B B`B B`15`N+.`R`4`0` |``" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",6) = "BW1`BW1`33`C`L`1````$S(X:""*"",1:"""")`" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",7) = "BW2`BW2`32`N+`R`2`0` ``" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",8) = "BW3`BW3`30`C`R`4`` ``$S(X:X_""pl"",1:"""")`" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",9) = "BW4`BW4`31`C`R`3`` |``$S(X:$P(X,""."")_""m""_$E($P(X,""."",2),1),1:"""")`" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",10) = "R K1`R K1`10`C`R`2``/```""" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",11) = "R K2`R K2`19`C`L`2`` |```" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",12) = "R H`R H`17`N+`R`4`0` |``" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",13) = "R B`R B`14`N+.`R`4`0` |``" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",14) = "RW1`RW1`38`C`L`1````$S(X:""*"",1:"""")`" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",15) = "RW2`RW2`37`N+`R`2`0` ``" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",16) = "RW3`RW3`35`C`R`4`` ``$S(X:X_""pl"",1:"""")`" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",17) = "RW4`RW4`36`C`R`3`` |``$S(X:$P(X,""."")_""m""_$E($P(X,""."",2),1),1:"""")`" s ^RES("HATBXLEAN","LK","ZAAGPLATEN",18) = "Opm`Opm`25`C`R`10`````" q LEVT Set blVerzendWijze=##class(APPS.VKP.VerzendWijze).%New(4810,"DI1","B","2440") Set Tijd=$zdth("2018-04-03 16:50:00",3) w Tijd,! Set blLeveringTermijn =##class(APPS.VKP.impl.LeveringsTermijnFactory).%New().MaakLeveringsTermijn(Tijd,blVerzendWijze) For PRNr=1205525,1013410,1111468,76072 Do .Set Termijn=blLeveringTermijn.BinnenWelkeTermijnIsHetMaatwerkProductBeschikbaarBijVanHoecke(PRNr) .Write PRNr," ",$$$PRGet($$$KortTekst)," ",$LI(Termijn) ,! q Transport19159 Set KLNr=12486 Set BONNr=0 For Set BONNr=$O(^KUL(KLNr,"F",BONNr)) Quit:BONNr="" Do . Set Rec=^KUL(KLNr,"F",BONNr,1) . Set Transport=$P(Rec,"\",8) . Set TRANSNr=$P(Transport,";") . If TRANSNr=19159 Write BONNr," " Set $P(^KUL(KLNr,"F",BONNr,1),"\",8)="" Quit ControleKOD Set KLNr=0 For Set KLNr=$O(^KOD(KLNr)) Quit:KLNr="" Do . Set ORDNr=0 . For Set ORDNr=$O(^KOD(KLNr,"F",ORDNr)) Quit:ORDNr="" Do . . Set LNr="" . . For Set LNr=$O(^KOD(KLNr,"F",ORDNr,LNr)) Quit:LNr="" Do . . W "." . . . Set Ref=^KOD(KLNr,"F",ORDNr,1) . . . If (Ref[$C(10))||(Ref[$C(13))||(Ref[$C(9)) Do . . . . Write KLNr," ",ORDNr," ",! . . . . Write Ref,! . . . . Write $TR(Ref,$C(13,10,9)),! Quit ControleORDW Set Device=$$OPEN^vhDEV(,"ORDW.txt","W","T") Use Device Write "CONSNr Datum Status KLNr ORDNR",! Set CONSNr=0 For Set CONSNr=$O(^ORDW("D",CONSNr)) Quit:CONSNr="" Do .Set Rec=^ORDW("D",CONSNr) .Set Datum=$P(Rec,"\",18) .Set:Datum="" Datum=$P(Rec,"\",19) .Set:Datum="" Datum=$P(Rec,"\",3) .Set:Datum="" Datum=$P(Rec,"\",5) . For Set ORDNr=$O(^ORDW("D",CONSNr,"D",ORDNr)) Quit:ORDNr="" Do . . Write CONSNr,*9,$$EXTDATE^vhLib.DataTypes(Datum,"DK") . . Write *9,$P(^ORDW("D",CONSNr),"\",20),*9,$P(^ORDW("D",CONSNr),"\",1),*9,ORDNr,! Do CLOSE^vhDEV(Device) Quit NonAct6 Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set KortT=$$$PRGet($$$KortTekst) . Set IdentNr=$$$PRGet($$$IdentNummer) . Quit:$E(IdentNr)'=6 . Quit:$$$PRGet($$$LeveranciersNr)'=$$$LevBlum . Quit:##class(AX.Uitgaand.PM.impl.Convertor.Sopr.ProductConvertor).%New().IsSOPRKindInCache(PRNr) . Do $$$PRSet($$$NONAktief,1) . w PRNr,*9, IdentNr,*9,KortT,! Quit DELALL() Set KLNr=$$$KlantHalux Set CONSNr="" For Set CONSNr=$O(^KUL(KLNr,"F",CONSNr)) Quit:CONSNr="" Do .Write CONSNr," " .D DELBON(CONSNr) q DELBON(CONSNr) Set KLNr=$$$KlantHalux Merge ^KUL(KLNr,"T",CONSNr)=^KUL(KLNr,"F",CONSNr) Do DELBON^FLOWBON3(KLNr,CONSNr) do DELKUP^FLOWBON3(KLNr,CONSNr) Kill ^KUL(KLNr,"F",CONSNr) Q KillORDWs Set CONSNr=0 For Set CONSNr=$O(^EWREC("BONERR",CONSNr)) Quit:CONSNr="" Do . Quit:$D(^ORDW("D",CONSNr,"D")) . Write CONSNr, " " r k . Do DELOBJ^EWORDST(CONSNr) . Kill ^EWREC("BONERR",CONSNr) . Do CLOSE^vhDEV(Device) Quit Herreken Set Device=$$OPEN^vhDEV(,"Prijs herreken met bouwsteen LBX.txt","W","T") Use Device Write "PRNr KortTekst Oud Nieuw",! Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set KortT=$$$PRGet($$$KortTekst) . Quit:$E(KortT,1,2)'="LB" . Quit:'$D(^PRBS("BS",PRNr)) . Set SchaduwPPL=$$SchaduwPPL^KPRIJS(PRNr) . Quit:SchaduwPPL="" . Quit:SchaduwPPL=-1 . Set PPL=$$$PRGet($$$PPLMTL) . Quit:PPL=-1 . Write PRNr,*9,KortT,*9,$$$ExcelNum(PPL) . ;Do MODFIELD^PRODUKT(PRNr,"J119",SchaduwPPL,0),PUTLOG^PRODUKT(PRNr,,PPL,SchaduwPPL,"PPL (S>H)") . ;Do RECALC^PRODUKT2(PRNr) . Write *9,$$$ExcelNum(SchaduwPPL),! Do CLOSE^vhDEV(Device) Quit Herreken2 Set Device=$$OPEN^vhDEV(,"DagProd.txt","W","T") Use Device Write "PRNr KortTekst Munt Oud Nieuw",! Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set KortT=$$$PRGet($$$KortTekst) . Set Munt=$$$PRGet($$$MuntAankoop) . Quit:(Munt'="GBP")&&(Munt'="USD") . Write PRNr,*9,KortT,*9,Munt,*9,$$$ExcelNum($$$PRGet($$$CifPPLEUR)) . Do RECALC^PRODUKT2(PRNr) . Write *9,$$$ExcelNum($$$PRGet($$$CifPPLEUR)),! Do CLOSE^vhDEV(Device) Quit stock Set Dev=$$OPEN^vhDEV(,"Stock.txt","W","T") Use Dev Set MPRNr="" For Set MPRNr=$O(^PRBS("IP",568116,MPRNr)) Quit:MPRNr="" Do . Set TOENr="" . For Set TOENr=$O(^TO("IP",MPRNr,TOENr)) Quit:TOENr="" Do . . Set TLUNr="" . . For Set TLUNr=$O(^TO("IP",MPRNr,TOENr,TLUNr)) Quit:TLUNr="" Do . . . Set TLNr=^TO("IP",MPRNr,TOENr,TLUNr) . . . Set Qty=$P(^KTO($$$LevHalux,TOENr,TLNr),"\",3) . . . Set BSKey="" . . . For Set BSKey=$O(^PRBS("IP",568116,MPRNr,BSKey)) Quit:BSKey="" Do . . . . Set Factor=$P(^PRBS("BS",MPRNr,BSKey),"\",2) . . . . Set Dim=$P(^PRBS("BS",MPRNr,BSKey,"D"),"\",3) . . . . W MPRNr,*9,TOENr,*9,$P(^KTO($$$LevHalux,TOENr,TLNr),"\",27),*9,Qty,*9,Factor,*9,$$$ExcelNum(Dim/2780),*9,$$$ExcelNum(Dim/2780*Qty*Factor),! Do CLOSE^vhDEV(Dev) Q m s Dag="" f s Dag=$O(^KKAAR(Dag)) Quit:Dag="" do .s Reg="",Omz=0 .f s Reg=$O(^KKAAR(Dag,Reg)) Quit:Reg="" do . . set Omz=Omz+$P(^KKAAR(Dag,Reg),"\",1) .W Dag,*9,$$$ExcelNum(Omz),! quit B Set Dev=$$OPEN^vhDEV(,"BonTellingen.txt","W","T") Use Dev S KLNr=0 For Set KLNr=$O(^KUL(KLNr)) Quit:KLNr="" Do .Set Node="" . For Set Node=$O(^KUL(KLNr,Node)) Quit:Node="" Do . .Set ORDNr=0 . .For Set ORDNr=$O(^KUL(KLNr,"F",ORDNr)) Quit:ORDNr="" Do . . . Set OLNr=99, AantalPos=0, AantalNeg=0 . . . For Set OLNr=$O(^KUL(KLNr,"F",ORDNr,OLNr)) Quit:OLNr'?3.N Do . . . . Set OLRec=^KUL(KLNr,"F",ORDNr,OLNr) . . . . Quit:$P(OLRec,"\",17)'="KF6" . . . . Quit:$P(OLRec,"\",14)'="" . . . . Set Qty=$P(OLRec,"\",3) . . . . Set:Qty>0 AantalPos=AantalPos+1 . . . . Set:Qty<0 AantalNeg=AantalNeg+1 . . . Write KLNr,*9,Node,*9,ORDNr,*9,$$$ExcelDat($$INTDATE^vhLib.DataTypes($P(^KUL(KLNr,"F",ORDNr,1),"\",2))) . . . Write *9,AantalPos,*9,AantalNeg,*9,$S(AantalPos>0&&(AantalNeg>0):"G",AantalPos>0:"L",AantalNeg>0:"T",1:"X") . . . Write ! Do CLOSE^vhDEV(Dev) Q O Set Dev=$$OPEN^vhDEV(,"OrderTellingen.txt","W","T") Use Dev S KLNr=0 For Set KLNr=$O(^KOD(KLNr)) Quit:KLNr="" Do . Set ORDNr=0 . For Set ORDNr=$O(^KOD(KLNr,"F",ORDNr)) Quit:ORDNr="" Do . . Write KLNr,*9,ORDNr,*9,$P(^KOD(KLNr,"F",ORDNr,1),"\",26),! Do CLOSE^vhDEV(Dev) Q T Do ##class(APPS.Halux.Opvolging.ProductieStap.TAOR.impl.ProductieZijkantFrees).%New().VerwerkRecente() Do ##class(APPS.Halux.Opvolging.ProductieStap.TAOR.impl.ProductieAfkanter).%New().VerwerkRecente() Q File Set:$G(WildCard)="" WildCard="*.txt" ;Als WildCard weggelaten is wordt alles geselecteerd Set Dir="\\ArdisClient\Import" Set rs=##class(%ResultSet).%New("%Library.File:FileSet") Do rs.Execute(Dir,WildCard) While rs.Next() { Set FileNm=$TR(rs.Data("ItemName"),"\","/") Set PadEnFile=$TR(rs.Data("Name"),"\","/") Set TijdStip=rs.Data("DateCreated") Set TijdStip=$zdth(TijdStip,3) If $$DIFFTIME^vhLib.DataTypes(TijdStip,$H)>300 ;5min { If FileNm?1"ImportList".E ; Delete file { w FileNm," Delete",! } Else ; Move file { w FileNm," Move",! } } } Do rs.%Close() Quit FELEM Set Dev=$$OPEN^vhDEV(,"SubMag.txt","W","T") Use Dev New sRec,sItem,sCnt,sTaal Set sItem="" For Set sItem=$O(^RES("PRODUKT","PI","HFWVSUBMAG","D",sItem)) Quit:sItem="" Do . Set sRec=^RES("PRODUKT","PI","HFWVSUBMAG","D",sItem) . Write sItem,*9,$P(sRec,"`",2),*9,$P(sRec,"`",3),*9,$P(sRec,"`",4),! Do CLOSE^vhDEV(Dev) Quit Verpakking Set Dev=$$OPEN^vhDEV(,"Verpakking.txt","W","T") Use Dev Write "PRNr KortTekst MinBH LevTrm Stock Pallet GVpk NVpk KVpk PerStuk LevNm HfdGrp Grp",! Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Quit:$D(^KPR(PRNr,"G")) . Quit:$$GENTYP^HAD(PRNr)'="" . Quit:$$ISORGAL^ORGALUX(PRNr) . Do VerpakkingOne(PRNr) Do CLOSE^vhDEV(Dev) Quit VerpakkingOne(PRNr) Set Product=##class(Prod.Product).%OpenId(PRNr) Quit:'$isObject(Product) Write PRNr Write *9,Product.KortTekst Write *9,Product.Prijs.MinimumBestelhoeveelheid Write *9,Product.Prijs.LeveringsTermijn Write *9,Product.StockNietStock Write *9,Product.PalletAantal Write *9,Product.Prijs.GrootVerpakking Write *9,Product.Prijs.NormaleVerpakking Write *9,Product.Prijs.KleinVerpakking Write *9,$case(Product.Prijs.VerkoopPerStuk,-1:"Nooit",1:"Toegelaten",:"Eventueel") Write *9,Product.Prijs.Leverancier.Naam Write *9,$E(Product.Klas.HoofdGroep,3,4) Write *9,$E(Product.Klas.Groep,7,9) Write ! Quit Bluran(FAKNr) Do . Do . . Do . . . Set BONNr="U" . . . For Set BONNr=$O(^KFA("F",FAKNr,BONNr)) Quit:$E(BONNr)'="U" Do . . . . Set BonRec=^KFA("F",FAKNr,BONNr,1) . . . . Set Vzw=$E($P(BonRec,"\",7),1,3) . . . . Set LNr=99 . . . . For Set LNr=$O(^KFA("F",FAKNr,BONNr,LNr)) Quit:LNr'?3.4N Do . . . . . Set LRec=^KFA("F",FAKNr,BONNr,LNr) . . . . . Set PRNr=$P(LRec,"\",2) . . . . . Quit:'PRNr . . . . . Quit:$P(LRec,"\",17)="KF5" . . . . . Write PRNr," ",$P(LRec,"\",14) . . . . . Quit:$P(LRec,"\",14)'="Z" . . . . . Set $P(^KFA("F",FAKNr,BONNr,LNr),"\",14)="" Quit Offerte Set Device=$$OPEN^vhDEV(,"Offerte.txt","W","T") Use Device Write "KLNr OFFNr Aantallijnen IPNr BIDI Datum",! Set KLNr=0 For Set KLNr=$O(^KOFKL(KLNr)) Quit:KLNr="" Do . . Quit:KLNr=6780 . Quit:KLNr=4100 . . Set ORDNr="" . For Set ORDNr=$O(^KOFKL(KLNr,"F",ORDNr)) Quit:ORDNr="" Do . . Set HRec=^KOFKL(KLNr,"F",ORDNr,1) . . Set IPNr=$P($P(HRec,"\",8),"#") . . Set Naam="" . . Set:IPNr Naam=$P(^vhUSER("D",IPNr),"\",2) . . Set Datum=$$INTDATE^vhLib.DataTypes($P(HRec,D,2)) . . Quit:Datum<($H-360) . . Set Cnt=0 . . Set OLNr="" . . For Set OLNr=$O(^KOFKL(KLNr,"F",ORDNr,OLNr)) Quit:OLNr="" Do . . . Set Cnt=Cnt+1 . . Write KLNr,*9,ORDNr,*9,Cnt,*9,IPNr,*9,Naam,*9,$$$ExcelDat(Datum) . . Write ! Do CLOSE^vhDEV(Device) Quit DELMAIL Set ml="" For Set ml=$O(^vhMAIL("D",ml)) Quit:ml="" Do .Quit:$P(^vhMAIL("D",ml),"\",8)'="Stockcorr. N.S." .D DELOBJ^vhMAIL(ml) Quit job d ##class(AX.Uitgaand.EC.Service).%New().GenerateAll() q StatGew Set KLNr=0 Kill SomGewicht Set BeginDatum=$$CALCDATE^vhLib.DataTypes($H,"BJ","FD",-5) Set EindDatum=$$CALCDATE^vhLib.DataTypes($H,"BJ","LD",-1) Use Dev Set KLNr="" For Set KLNr=$O(^KFA1("F",KLNr)) Quit:KLNr="" Do . Set KlKey=^KK1(KLNr) . Set Regio=$P(^KKL(KlKey,0),"\",20) . Set Datum="" ; beginnen vanaf vandaag omdat orders van vorige maand ook in facturen van vandaag kunnen zitten . For Set Datum=$O(^KFA1("F",KLNr,Datum)) Quit:Datum="" Do . . Quit:-Datum>EindDatum . . Quit:-Datum1007 . Set PRNr=0 . For Set PRNr=$O(^KSTKL(KLNr,PRNr)) Quit:PRNr="" Do . . Set KT=$P($G(^KPR(PRNr,0)),D,1) . . Quit:$E(KT,1,3)="GEN" . . Quit:$$GetOrOld^PRODUKT(PRNr,$$$LeveranciersNr)'=$$$LevHalux . . Set CntHalfFab=$$NbrHalfFab(PRNr) . . Quit:'CntHalfFab . . Set GenTyp=$$GENTYP^HAD(PRNr,1) . . Set Mnd=0 . . For Set Mnd=$O(^KSTKL(KLNr,PRNr,Mnd)) Quit:Mnd="" Do . . . Set Maand=$$INTDATE^vhLib.DataTypes(Mnd,"DM4") . . . Set Qty=$P(^KSTKL(KLNr,PRNr,Mnd),"\",1) . . . Quit:Qty<1 . . . Write KLNr,*9,PRNr,*9,KT,*9,$P(GenTyp,"\"),*9,$P(GenTyp,"\",2),*9,$$$ExcelDat(Maand),*9,$$$ExcelNum(Qty),*9,$$$ExcelNum(CntHalfFab),! Do CLOSE^vhDEV(Dev) Quit q NbrHalfFab(PRNr) New CntHalfFabr,BSKey Set CntHalfFabr="",BSNode="BS" Set BSKey="" For Set BSKey=$O(^PRBS(BSNode,PRNr,BSKey)) Quit:BSKey="" Do . Set:$P(^PRBS(BSNode,PRNr,BSKey),"\",3)="H" CntHalfFabr=CntHalfFabr+1 Quit CntHalfFabr PlaatMat Set Dev=$$OPEN^vhDEV(,"Plaatmat.txt","W","T") Use Dev Set KLNr=0 Write "KLNr Naam Regio PRNr KortTekst GenTyp SubGenTyp Maand Aantal",! Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set KT=$P($G(^KPR(PRNr,0)),D,1) . Quit:'((KT?1"SLF".E)||(KT?1"SPP".E)||(KT?1"SPF".E)) .WRite PRNr,*9,KT,*9,$$$ExcelNum($$$PRGet($$$CifPPLEUR)),! Do CLOSE^vhDEV(Dev) Quit q KomLinkMetStock Set Device=0 ;$$OPEN^vhDEV(,"StatIO.txt","W","T") Use Device Write "KLNr ORDNr PRNr Korttekst ToeLev OrderQty FysStock AantalOrdlijnen",! Set KLNr="" For Set KLNr=$O(^KOD(KLNr)) Quit:KLNr="" Do . . Quit:KLNr=6780 . Quit:KLNr=4100 . . Set ORDNr="" . For Set ORDNr=$O(^KOD(KLNr,"F",ORDNr)) Quit:ORDNr="" Do . . Set OLNr="" . . For Set OLNr=$O(^KOD(KLNr,"F",ORDNr,OLNr)) Quit:OLNr="" Do . . . Set LijnRec=^(OLNr) . . . Set PRNr=$P(LijnRec,"\",2) . . . Quit:PRNr'?4.8N . . . Quit:$$$PRGet($$$LeveranciersNr)'=$$$LevHalux . . . Set FysStock=$$GETSTOCK^PRODUKT4(PRNr,"F") . . . Set KomLink=$P(LijnRec,"\",27) . . . Quit:'((KomLink?6N)&&(+FysStock'=0)) . . . Set NbrOfLines=0 . . . Set (TmpORDNr,TmpOLUNr)="" . . . For Set TmpORDNr=$O(^ORD("IP",PRNr,TmpORDNr)) Quit:TmpORDNr="" Do . . . . For Set TmpOLUNr=$O(^ORD("IP",PRNr,TmpORDNr,TmpOLUNr)) Quit:TmpOLUNr="" Set NbrOfLines=NbrOfLines+1 . . . Set OrdQty=$P(LijnRec,"\",3) . . . Write KLNr,*9,ORDNr,*9,PRNr,*9,$$$PRGet($$$KortTekst),*9,KomLink, *9,OrdQty, *9,FysStock,*9,NbrOfLines-1 . . . Write ! Do CLOSE^vhDEV(Device) Quit PickingWho Set Device=$$OPEN^vhDEV(,"StatIO.txt","W","T") Use Device Write "KLNr BONNr Datum Tijd Vzw Persoon SoftMag PickAantal PRNr KortTekst",! Set CONSNr="" For Set CONSNr=$O(^ORDW("D",CONSNr)) Quit:CONSNr="" Do . Set ORDNr="" . For Set ORDNr=$O(^ORDW("D",CONSNr,"D",ORDNr)) Quit:ORDNr="" Do . . Set OLUNr="" . . For Set OLUNr=$O(^ORDW("D",CONSNr,"D",ORDNr,OLUNr)) Quit:OLUNr="" Do . . . Set Rec=^(OLUNr) . . . Set LijnCnt=0 . . . Set SOLNr="" . . . For Set SOLNr=$O(^ORDW("D",CONSNr,"D",ORDNr,OLUNr,SOLNr)) Quit:SOLNr="" Do . . . . Set SOLRec=^(SOLNr) . . . . Set SoftMag=$P(SOLRec,"\",13) . . . . Set User=$P(SOLRec,"\",12) . . . . Set TijdStip=$P(SOLRec,"\",6) . . . . Set PRNr=$P(SOLRec,D,1) . . . . Set KLNr=$P(^ORDW("D",CONSNr),"\") . . . . Write KLNr,*9,CONSNr,*9,$$$ExcelDat(TijdStip),*9,$$$ExcelTime($P(TijdStip,",",2)),*9,$P(^ORDW("D",CONSNr),"\",2),*9,User,*9,SoftMag,*9,$P(SOLRec,D,4),*9,PRNr,*9,$$GetOrOld^PRODUKT(PRNr,$$$KortTekst) . . . . Write ! Do CLOSE^vhDEV(Device) Quit REDO Merge Fetch=^MRPRESLog(63720,82822,"MARK") zw Fetch Do CLOSE^MRPRES("Fetch") Quit Fof Set Device=$$OPEN^vhDEV(,"Fof Data.txt","W","T") Use Device Write "PRNr KortTekst Datum Tijd GenTyp Aantal",! Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set KortT=$$$PRGet($$$KortTekst) . ;Set GenTyp=$$GENTYP^HAD(PRNr,1) . ;Quit:($P(GenTyp,"\")'="TBX")&&($P(GenTyp,"\")'="LBX") ;&&($P(GenTyp,"\")'="TAO") . Set Key="" . For Set Key=$O(^PRHIST(PRNr,Key)) Quit:Key="" Do . . Set Rec=^PRHIST(PRNr,Key) . . Quit:$P(Rec,"\",5)'="M" . . Quit:$P(Rec,"\",4)'="U"&&($P(Rec,"\",4)'="T")&&($P(Rec,"\",4)'="I") . . Set Datum=+$P(Rec,"\") . . Quit:+Datum<($H-100) . . Set Gewicht=$$$PRGet($$$Gewicht) . . Set Aantal=$P(Rec,"\",2) . . Write PRNr,*9,KortT,*9,$$$ExcelDat(Datum),*9,$$$ExcelTime($PIECE(Datum,",",2)),*9,$P(Rec,"\",4),*9,Aantal,*9,$$$ExcelNum(Gewicht*Aantal/1000) . . Write ! Do CLOSE^vhDEV(Device) Quit ReceptieMaatwerk Set Device=$$OPEN^vhDEV(,"DagProd.txt","W","T") Use Device Write "Datum GenType Telbaar Aantal",! Set PRNr=0 Kill Cache,VoorraadCache For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set KortT=$$$PRGet($$$KortTekst) . Set Telbaar=$$$PRGet($$$Telbaar) ; nodig voor TA'OR Bulk in onderdelen . Set Telbaar=$S(Telbaar="":"*",1:Telbaar) . Set GenTyp=$$GENTYP^HAD(PRNr,1) . Quit:($P(GenTyp,"\")'="TBX")&&($P(GenTyp,"\")'="LBX") ;&&($P(GenTyp,"\")'="TAO") . Set Voorraad=$P($G(^PRSTOCK("D",PRNr)),"\",1) . If Voorraad>0 Set VoorraadCache(PRNr,$P(GenTyp,"\",1),Telbaar)=Voorraad . Set Key="" . Set Cumul="",Aantal="" . For Set Key=$O(^PRHIST(PRNr,Key)) Quit:Key="" Do . . Set Rec=^PRHIST(PRNr,Key) . . Quit:$P(Rec,"\",5)'="M" . . Quit:$P(Rec,"\",4)'="I" . . Set Datum=+$P(Rec,"\") . . Set Cache(Datum,$P(GenTyp,"\"),$S(Telbaar="":"*",1:Telbaar))=$G(Cache(Datum,$P(GenTyp,"\"),$S(Telbaar="":"*",1:Telbaar)))+$P(Rec,"\",2) ;zw Cache Set Datum="",GenTyp="",Telbaar="" For Set Datum=$O(Cache(Datum)) Quit:Datum="" Do . For Set GenTyp=$O(Cache(Datum,GenTyp)) Quit:GenTyp="" Do . . For Set Telbaar=$O(Cache(Datum,GenTyp,Telbaar)) Quit:Telbaar="" Do . . . Write $$$ExcelDat(Datum),*9,GenTyp,*9,Telbaar,*9,Cache(Datum,GenTyp,Telbaar),! Do CLOSE^vhDEV(Device) Set Device=$$OPEN^vhDEV(,"VoorraadProd.txt","W","T") Use Device Write "PRNr GenType Telbaar Aantal",! Set PRNr="" Set GenTyp="",Telbaar="" For Set PRNr=$O(VoorraadCache(PRNr)) Quit:PRNr="" Do . For Set GenTyp=$O(VoorraadCache(PRNr,GenTyp)) Quit:GenTyp="" Do . . For Set Telbaar=$O(VoorraadCache(PRNr,GenTyp,Telbaar)) Quit:Telbaar="" Do . . . Write PRNr,*9,GenTyp,*9,Telbaar,*9,VoorraadCache(PRNr,GenTyp,Telbaar),! Do CLOSE^vhDEV(Device) Quit FacturatieMaatwerk Set Device=$$OPEN^vhDEV(,"DagFacturatie.txt","W","T") Use Device Write "Datum GenType Telbaar Aantal",! Kill Cache Set KLNr=0 Set BeginDatum=$$CALCDATE^vhLib.DataTypes($H,"BJ","FD",0) Set EindDatum=+$H For Set KLNr=$O(^KFA1("F",KLNr)) Quit:KLNr="" Do . Set KlKey=^KK1(KLNr) . Set Regio=$P(^KKL(KlKey,0),"\",20) . Set Datum="" ; beginnen vanaf vandaag omdat orders van vorige maand ook in facturen van vandaag kunnen zitten . For Set Datum=$O(^KFA1("F",KLNr,Datum)) Quit:Datum="" Do . . Quit:-Datum>EindDatum . . Quit:-Datum0:"R",1:""),*9,$$$ExcelNum($P(^TRANSP("D",TNr,"D",ANr),"\",3)),*9,KLNr,*9,Regio . . Write *9,$P(Adres,"\",2),*9,$P(Adres,"\",5),*9,$P(Adres,"\",6),*9,$P(Adres,"\",7),*9,$$LAND^vhRtn1($P(Adres,"\",8)) . . For Collie="C","E","L","P","B" Do . . . Write *9,$P($G(^TRANSP("D",TNr,"D",ANr,"Q",Collie)),"\") . . Write ! . . ;Merge CT=^TRANSP("D",TNr,"D",ANr,"Q") Do CLOSE^vhDEV(Dev) ;zw CT Quit TESTPR Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set Prijs=$$KLANTPR^KPRIJS(1000,PRNr) . Set Prijs=$$KLANTPR^KPRIJS(1000,PRNr,"S") . ;w !,PRNr,":" . ;s Cnt=$$CntObj() . ;w !,"cnt",Cnt,! Quit CntObj() Set rs=##class(%ResultSet).%New("%SYSTEM.OBJ:ObjectList") do rs.Execute() s Cnt=0 While rs.Next() { ;w rs.Data("OREF")," " Set Cnt=Cnt+1 } Quit Cnt NAWERK Set CRef=$$OPEN^MRPRES() ; Aanmaak van de cache Merge @CRef=^MRPRESLog(63172,56252,"FETCH") Do CLOSE^MRPRES(CRef) q LEVVW Set KLNr=0 ;Set lbRegios=$Lb(98,99,3) Set BIndex=403 For { Set KLNr=$O(^KK1(KLNr)) Quit:KLNr="" Set oKlant=##class(Derde.Klant.Klant).%OpenId(KLNr) Continue:'$isObject(oKlant) Set Regio=oKlant.Sektor Set KlKey=^KK1(KLNr),Node=BIndex\100-1,Piece=BIndex#100 Set R=$G(^KKL(KlKey,Node)),OldValue=$P(R,D,Piece) continue:'((OldValue=60)||(OldValue=64)) Write KLNr," ",oKlant.Naam," ",Regio," ",OldValue,! Do MODFIELD^KLANT(KLNr,BIndex,65) } Quit ChangeMag(CONSNr,FromMag,ToMag) Set ORDNr="" Set BonCnt=0 For Set ORDNr=$O(^ORDW("D",CONSNr,"D",ORDNr)) Quit:ORDNr="" Do . Set OLUNr="" . For Set OLUNr=$O(^ORDW("D",CONSNr,"D",ORDNr,OLUNr)) Quit:OLUNr="" Do . . Set Rec=^(OLUNr) . . Set LijnCnt=0 . . Quit:'(($P(Rec,"\",2)="P")||($P(Rec,"\",2)="W")) . . Set SOLNr="" . . For Set SOLNr=$O(^ORDW("D",CONSNr,"D",ORDNr,OLUNr,SOLNr)) Quit:SOLNr="" Do . . . Set SOLRec=^(SOLNr) . . . Quit:'($P(SOLRec,"\",2)="W") . . . If $P(SOLRec,"\",13)=FromMag Do . . . . Set $P(^ORDW("D",CONSNr,"D",ORDNr,OLUNr,SOLNr),"\",13)=ToMag . . . . Set BonCnt=BonCnt+1 . . . . Set LijnCnt=LijnCnt+1 . . If LijnCnt Do . . . Set $P(^ORDW("D",CONSNr,"D",ORDNr,OLUNr),"\",8)=$TR($P(^ORDW("D",CONSNr,"D",ORDNr,OLUNr),"\",8),FromMag,ToMag) If BonCnt Do . Merge ^ORDW("D",CONSNr,"S",ToMag)=^ORDW("D",CONSNr,"S",FromMag) . Kill ^ORDW("D",CONSNr,"S",FromMag) . Set ^ORDW("IW",CONSNr)=$TR(^ORDW("IW",CONSNr),FromMag,ToMag) Quit Scholen Set KLID=$O(^KKL(0)) Set NewCodex="L" While KLID'="" { Set KLNr=$P(^KKL(KLID,0),"\") Set Aktiviteit=$$GetActiviteit^KLANT5(KLNr) If Aktiviteit="Scholen" { W !,KLNr," ",KLID," ",Aktiviteit," ", $P(^KKL(KLID,2),"\",3)," ", $P(^KKL(KLID,2),"\",4)," ", $P(^KKL(KLID,2),"\",32) Do MODFIELD^KLANT(KLNr,303,NewCodex) Do MODFIELD^KLANT(KLNr,304,NewCodex) Do MODFIELD^KLANT(KLNr,332,NewCodex) } Set KLID=$O(^KKL(KLID)) } Quit GetLocation(LocId) Set (LocM,LocG,LocX,LocY, LocTrans)="" &SQL( SELECT l.loc_M, l.loc_g, l.loc_x, l.loc_y, loc_trans into LocM,LocG,LocX,LocY, LocTrans FROM EWMS.Locations l left outer join EWMS.Transloc t on l.loc_m=t.loc_m and l.loc_g=t.loc_g and l.loc_x=t.loc_x and l.loc_y=t.loc_y WHERE (loc_id = :LocId) and l.loc_m<5 ) If $G(LocM)="" { Set Result="" } elseif LocTrans="" { Set Result=$E(100+LocM,2,3)_" "_$E(100+LocG,2,3)_" "_$E(100+LocX,2,3)_" "_$E(100+LocY,2,3) } else { Set Result=##class(EWMS.TransLoc).FormatLocTrans(LocTrans) } Quit Result MergeORDW ; Tijdelijk copieren van ORDW om de Dueout tijdstip te controleren Set Tijdstip=$O(^PVORDW("")) While Tijdstip'="" { If +$zdth(Tijdstip,3)<(+$H-7) { Kill ^PVORDW(Tijdstip) } Set Tijdstip=$O(^PVORDW(Tijdstip)) } Set Tijdstip=$ZDT($H,3) Merge ^PVORDW(Tijdstip,"D")=^ORDW("D") Quit TBXRug(PRNr) Quit:'PRNr "" Quit $P($G(^PRBS("BS",PRNr,"PRRUGLI.001")),"\",1) TBXRugOms(PRNr) S HFPRNr=$$TBXRug(PRNr) Quit:'HFPRNr "" Quit $P($G(^KPR(HFPRNr,0)),"\") TBXRug2(PRNr) Quit:'PRNr "" Quit $P($G(^PRBS("BS",PRNr,"PRRUGRE.001")),"\",1) TBXRugOms2(PRNr) S HFPRNr=$$TBXRug2(PRNr) Quit:'HFPRNr "" Quit $P($G(^KPR(HFPRNr,0)),"\") KadDB Kill Gen Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set GenTyp=$P($$GENTYP^HAD(PRNr),"\",1,2) . Quit:GenTyp'?1(1"KAD\",1"PRF\",1"GLA\") . w PRNr," ",$$$PRGet($$$KortTekst),! . do $$$PRSet($$$SchaduwDBPerc,55.48) . do $$$PRSet($$$SchaduwCifPerc,6.00) Quit TBXProDB Kill Gen Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do:PRNr<288134 . Set GenTyp=$P($$GENTYP^HAD(PRNr),"\",1,2) . Quit:GenTyp'?1(1"TBX\PR+",1"TBX\PRO") . w PRNr," ",GenTyp," ",$$$PRGet($$$KortTekst),! . do $$$PRSet($$$SchaduwDBPerc,"") . do $$$PRSet($$$SchaduwCifPerc,"") Quit TBXV1DB Kill Gen Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set GenTyp=$P($$GENTYP^HAD(PRNr),"\",1,2) . Quit:GenTyp'?1(1"TBX\").E . Quit:GenTyp?1(1"TBX\PR+",1"TBX\PRO") . w PRNr," ",GenTyp," ",$$$PRGet($$$KortTekst),! . do $$$PRSet($$$SchaduwDBPerc,50.65) . do $$$PRSet($$$SchaduwCifPerc,5) Quit TBXDeDecker Kill Gen Set PRNr=0 For Set PRNr=$O(^PRBS("BS",PRNr)) Quit:PRNr="" Do . Quit:$E($O(^PRBS("BS",PRNr,"CORR")),1,4)'="CORR" . Set Rec=^PRBS("BS",PRNr,"CORR.001") . If $P(Rec,"\",3)="S",Rec["Correctie ONDERDEEL -> ZONDER ONDERDEEL" Do . . Set $P(Rec,"\",2)=0 . . Set ^PRBS("BS",PRNr,"CORR.001")=Rec . . Write PRNr," ",Rec,! . Else . . Write PRNr," GEEN GOEDE CORR ",Rec,! Quit Rug Kill Gen Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set KortT=$$$PRGet($$$KortTekst) . Quit:$E(KortT,1,3)'="Z30" . Quit:KortT?1"Z30"1A1"000".E . Quit:$E($$$PRGet($$$IdentNummer))'="0" . w PRNr," ",$$$PRGet($$$KortTekst),! . do $$$PRSet($$$SchaduwDBPerc,58.00) Quit DISP Set Kleur(0)=$$HEX^vhRtn1("1C,38") ;Geel - geen afhaling Set Kleur(1)=$$HEX^vhRtn1("1C,37") ;Oranje - dringend Set Kleur(2)=$$HEX^vhRtn1("1C,31") ;Rood - afhaling Set Kleur(3)=$$HEX^vhRtn1("1C,31") ;Rood - superspoed Set Kleur(9)=$$HEX^vhRtn1("1C,35") ;Dim green Set IPaddr="192.168.7.251" Set Dev="|TCP|4" OPEN Dev:(IPaddr:3001::$CHAR(3,4)):5 Else Quit Use Dev Write $$HEX^vhRtn1("0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,01,5A,30,30,02") ; Broadcast naar alle displays Write $$HEX^vhRtn1("41,41") ; Write tot file "A" ;Write $$HEX^vhRtn1("1B,20") Write $$HEX^vhRtn1("1B,20,62") IF 1 Do . Write Kleur(3),""_"xqderdfdfsfdsf"_$r(100) If 0 Do ; Datum en tijd . Write $S($P($G(Cnt),D,4):$$HEX^vhRtn1("63"),1:$$HEX^vhRtn1("62")) . Write $$HEX^vhRtn1("1D,30,31") ; dubbelstroke . Write Kleur(9),$$HEX^vhRtn1("0B,31,20,13") Write $$HEX^vhRtn1("04") Close Dev q Vzw Set Vzw="" For Set Vzw=$o(^RES("KLANT","PI","VERZENDWIJZE","D",Vzw)) Quit:Vzw="" Do . Q:Vzw'?1"VT"1N . Write Vzw," " . S $P(^RES("KLANT","PI","VERZENDWIJZE","D",Vzw),"`",15)="LEVBON_ORGALUX" q H Set Dev=$$OPEN^vhDEV(,"Recepties Halux.txt","W","T") Use Dev Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set GenTyp=$$GENTYP^HAD(PRNr) . Quit:'(($P(GenTyp,"\")="TBX")||($P(GenTyp,"\")="LBX")) . Do HOne(PRNr,.C) Do CLOSE^vhDEV(Dev) Q HOne(PRNr,GenTyp) ;Begin,Einde : $H formaat ;Actie : Zie RES(PRHIST,PI,BEPERK) ;Magazijn : M = Magazijn, W = Werkvloer, K = Stock over kind, Z = Zonderstock ;Cumul, Aantal oproep via .Local (byRef) New Key,I,Rec Set KT=$$$PRGet($$$KortTekst) Set Actie="I" Set Magazijn="M" Set Begin=$$CALCDATE^vhLib.DataTypes($H,"M","FD",-10) Set Einde=$$CALCDATE^vhLib.DataTypes($H,"M","LD",-1) Set Verpakking=$$GeefVerpakking^HATBXLeanLijst(PRNr) Set Key="" For Set Key=$O(^PRHIST(PRNr,Key)) Quit:Key="" Do . Set Rec=^PRHIST(PRNr,Key) . Quit:+$P(Rec,"\")Einde . Quit:$P(Rec,"\",5)'=Magazijn . Quit:$P(Rec,"\",4)'=Actie . Write PRNr,*9,KT,*9,$$$ExcelDat($P(Rec,"\")),*9,$$$ExcelNum($P(Rec,"\",2)),*9,Verpakking,! Quit ;\n CUT\n 628685\n 4\n SMALL\n SUCCESSFULLY PROCESSED\n 1\n \n ;\n MACHINE\n 1\n 1\n SMALL\n Online - Machine in Automatic Mode - Machine in Idle Mode\n 0\n \n ;\n CUT\n 628686\n 3\n SMALL\n PROCESSING\n 1\n \n Status W "1" Set oS=##class(BL.Prod.OptiBox.sub.pxStatus).%New() Set oS.Type="CUT" Set oS.ID=628685 Set oS.Status=4 Set oS.Message="SUCCESSFULLY PROCESSED" Set oS.ProcessID=1 Set ws=##class(WS.Prod.OptiBox.OptimizerServer).%New() Do ws.EventNotification(oS) W "2" Set oS=##class(BL.Prod.OptiBox.sub.pxStatus).%New() Set oS.Type="MACHINE" Set oS.ID=1 Set oS.Status=1 Set oS.Message="Online - Machine in Automatic Mode - Machine in Idle Mode" Set oS.ProcessID=0 Set ws=##class(WS.Prod.OptiBox.OptimizerServer).%New() Do ws.EventNotification(oS) W "3" Set oS=##class(BL.Prod.OptiBox.sub.pxStatus).%New() Set oS.Type="CUT" Set oS.ID=628686 Set oS.Status=3 Set oS.Message="PROCESSING" Set oS.ProcessID=1 Set ws=##class(WS.Prod.OptiBox.OptimizerServer).%New() Do ws.EventNotification(oS) w "4" Set ws=##class(WS.Prod.OptiBox.OptimizerServer).%New() Set x=ws.AreYouAlive() Q Kad Kill Gen Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set GenTyp=$P($$GENTYP^HAD(PRNr),"\",1,2) . Quit:GenTyp'?1(1"KAD\",1"PRF\",1"GLA\") . Set LT=$$$PRGet($$$LeveringsTermijn) . ;Write PRNr,*9,$$$PRGet($$$KortTekst),*9,LT,! . Set:$P(^KPR(PRNr,0),"\",3) Gen($P(^KPR(PRNr,0),"\",3))="" ; Set PRNr="" For Set PRNr=$O(Gen(PRNr)) Quit:PRNr="" Do . w PRNr . do $$$PRSet($$$LeveringsTermijn,0) Quit Stock Set MPRNr=$$SELECT^PRODUKT6() Do StartTimer^vhLib Kill Teller Set BSKey="" For Set BSKey=$O(^PRBS("BS",MPRNr,BSKey)) Quit:BSKey="" Do . Quit:$P(^PRBS("BS",MPRNr,BSKey),"\",3)'="K" . Set KPRNr=$P(^PRBS("BS",MPRNr,BSKey),"\",1) . Quit:'KPRNr . Set lbOrder=$$GetOrders(KPRNr) . Set lbToeLev=$$GetToeLev(KPRNr) . Set Teller("KIND")=$G(Teller("KIND"))+1 . set AantalKinderenNodig = $P(^PRBS("BS",MPRNr,BSKey),"\",2) . Set Rec=$G(^PRSTOCK("D",KPRNr)) . set FysischKind = $P(Rec,D,1) . set idxMoeder = "" . set AantalMoedersMogelijk="" . for set idxMoeder = $o(arMoeders(idxMoeder)) q:idxMoeder="" do . . set AantalMogelijk = ##class(TECH.Math).Floor(arMoeders(idxMoeder)/AantalKinderenNodig) . . quit:AantalMogelijk<0 . . if '$length(AantalMoedersMogelijk) set AantalMoedersMogelijk = AantalMogelijk . . else if (AantalMoedersMogelijk > AantalMogelijk) set AantalMoedersMogelijk = AantalMogelijk . . Do StopTimer^vhLib w @F11,@F1 w !,MPRNr," ",$P(^KPR(MPRNr,0),"\")_" "_"aantal mogelijk : "_AantalMoedersMogelijk,! Write $$GetInterval^vhLib(),! zw Teller Quit GetOrders(KPRNr) New MPRNr,BSKey Set MPRNr="" For Set MPRNr=$O(^PRBS("IP",KPRNr,MPRNr)) Quit:MPRNr="" Do . Set BSKey="" . Set Found=0 . For Set BSKey=$O(^PRBS("IP",KPRNr,MPRNr,BSKey)) Quit:BSKey="" Quit:Found Do . . Set Found=$P(^PRBS("IP",KPRNr,MPRNr,BSKey),"\")="K" . . Set:Found Teller("KINDMOEDER")=$G(Teller("KINDMOEDER"))+1 . Set:Found lbOrder=$$GetMoederOrders(MPRNr) . Set:Found Teller("MOEDER")=$G(Teller("MOEDER"))+1 . Set Rec=$G(^PRSTOCK("D",MPRNr)) . set arOrder(MPRNr)=Rec Quit $G(lbOrder) GetMoederOrders(MPRNr) Set ORDNr="" For Set ORDNr=$O(^ORD("IP",MPRNr,ORDNr)) Quit:ORDNr="" Do . Set OLUNr="" . For Set OLUNr=$O(^ORD("IP",MPRNr,ORDNr,OLUNr)) Quit:OLUNr="" Do . . Set OLNr=^(OLUNr) . . Set KLNr=$P(^KO1(ORDNr,"F"),"\") . . Set Qty=$P(^KOD(KLNr,"F",ORDNr,OLNr),"\",3) . . Set Teller("ORDER")=$G(Teller("ORDER"))+1 . . Set arMoeders(MPRNr)=$Get(arMoeders(MPRNr))+Qty Quit "" GetToeLev(KPRNr) Set TOENr="" For Set TOENr=$O(^TO("IP",KPRNr,TOENr)) Quit:TOENr="" Do . Set TLUNr="" . For Set TLUNr=$O(^TO("IP",KPRNr,TOENr,TLUNr)) Quit:TLUNr="" Do . . Set TLNr=^(TLUNr) . . Set LEVNr=$P(^KTO1(TOENr),"\") . . Set Qty=$P(^KTO(LEVNr,TOENr,TLNr),"\",3) . . Set Teller("TOE")=$G(Teller("TOE"))+1 . . set arToe(KPRNr)=$G(arToe(KPRNr))+Qty Quit "" Toegang #include BL.EC.Common ;$$$blSession Set %ECSession=##class(Derde.EC.Session).%New() Set %ECSession.KlantNr=4943 Set %ECSession.Taal="N" Set %Taal="N" ;$$$blSession ;do %blSession.SetKlant(4943,"N") $$$blProduct s PRNr=3551 w !,PRNr," ",$P(^KPR(PRNr,0),"\")," : ",##class(BL.EC.Product).IsAllowed(PRNr),! Q GetNext(QueueID) ; Translatie van QueueID naar batch &SQL(SELECT BatchID, Sequence INTO :BatchID,:Sequence FROM PPS.TBX_Queue WHERE ID=:QueueID) ; Volgende QueueID in de sequence ophalen &SQL(SELECT TOP 1 ID,Sequence INTO :NewID,:NewSequence FROM PPS.TBX_Queue WHERE BatchID= :BatchID and Sequence>:Sequence order by Sequence ) ; tijdelijk DEBUG info - PV - 4/11/2010 Set ^PVVerpakLookAhead(BatchID,$I(^PVVerpakLookAhead))=$LB($zdt($H,8),QueueID,Sequence,NewID,NewSequence) Quit OD3 Set Dev=$$OPEN^vhDEV(,"Klanten vzw.txt","W","T") Use Dev Set KLID=0 For Set KLID=$O(^KKL(KLID)) Quit:KLID="" Do . Set Vzw=$P(^KKL(KLID,2),D,16) . Set KLNr=$P(^KKL(KLID,0),D,1) . Write $P(^KKL(KLID,0),D,1),*9,$P(^KKL(KLID,0),D,2),*9,$P(^KKL(KLID,0),D,6),*9,$P(^KKL(KLID,0),D,7),*9,$P(^KKL(KLID,0),D,8),*9,$$$ExcelNum($$KLANT^STAT(KLNr,0,"2009.10 ","2010.09 ",3)),*9,Vzw,! Do CLOSE^vhDEV(Dev) Quit OLTXT Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set KT=$P(^KPR(PRNr,0),D,1) . Quit:$P($$GENTYP^HAD(PRNr),"\",1,2)'="DIV\ASM" . . Set Orgalux=0 . Set MPRNr="" . For Set MPRNr=$O(^PRBS("IP",PRNr,MPRNr)) Quit:MPRNr="" Do . . Quit:'$$ISORGAL^ORGALUX(MPRNr) . . Set Orgalux=MPRNr . Quit:'Orgalux . Set MPRNr=Orgalux . Write PRNr,*9,KT," -> " ;,MPRNr,*9,$P(^KPR(MPRNr,0),D,1),! . ;Write $P(^KPR(PRNr,4),D,1),! . Set LT=$P(^KPR(PRNr,4),D,1) . Set LT=$$REPLACE^vhRtn1(LT,"mat","mat ORGALUX") . write LT,! . Set $P(^KPR(PRNr,4),D,1)=LT Quit StatJB Set Dev=$$OPEN^vhDEV(,"Omzet MDS.txt","W","T") Use Dev Set KLNr=0 Write "KLNr Naam Regio PRNr KortTekst Aantal Omzet",! For Set KLNr=$O(^KSTKL(KLNr)) Quit:KLNr="" Do ;q:KLNr>1007 .Set oKlant=##class(Derde.Klant.Klant).%OpenId(KLNr) .Set Divisie=oKlant.Divisie . Set PRNr=0 . For Set PRNr=$O(^KSTKL(KLNr,PRNr)) Quit:PRNr="" Do . . Set KT=$P($G(^KPR(PRNr,0)),D,1) . . Quit:$E(KT,1,3)'="MDS" . . Set Omzet=$$KLANT^STAT(KLNr,PRNr,"20010.11 ","2011.10 ","1,4") . . Quit:'Omzet . . Set GenTyp=$P($$GENTYP^HAD(PRNr),"\",1,2) . . Set oProd=##class(Prod.Product).%OpenId(PRNr) . . Set ProductGroep=oProd.ProductGroep . . Write KLNr,*9,oKlant.Naam,*9,oKlant.Sektor,*9,PRNr,*9,KT,*9,$$$ExcelNum($P(Omzet,"\",1)),*9,$$$ExcelNum($P(Omzet,"\",3)),*9,$$$ExcelNum($P(Omzet,"\",4)),! Do CLOSE^vhDEV(Dev) Quit AllProdVIL Set Dev=$$OPEN^vhDEV(,"pROD.txt","W","T") Use Dev Set PRNr="" For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set LT=$$$PRGet(123) . Write PRNr,*9,LT,! Do CLOSE^vhDEV(Dev) Quit All Set Dev=0 ;$$OPEN^vhDEV(,"ProdBufferWeken2.txt","W","T") Use Dev Set PRNr="" For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Quit:'$$$PRGet($$$StockType) . Quit:$$$PRGet($$$BufferWeken)>1 . Quit:$$$PRGet($$$LinkType)="S" . Write PRNr,*9,$$$PRGet($$$KortTekst)," ",$$$PRGet($$$StockType),"->",$$$PRGet($$$BufferWeken)," ",$$$PRGet($$$LinkType),! . Do $$$PRSet($$$BufferWeken,2) Do CLOSE^vhDEV(Dev) Quit AllOL Set Dev=$$OPEN^vhDEV(,"Orgalux.txt","W","T") Use Dev Set PRNr="" For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Quit:'$$ISORGAL^ORGALUX(PRNr) . Write PRNr,*9,$$SORTKEY^PRODUKT(PRNr),*9,$$$PRGet($$$KortTekst),*9,$$$PRGet($$$NONAktief),*9,$$$PRGet($$$NotAvailableTo),! Do CLOSE^vhDEV(Dev) Quit ResImage Set blImg=##class(BL.Prod.ImageLink).Instantiate() Set Dev=$$OPEN^vhDEV(,"ResImage.txt","W","T") Use Dev Write "PRNr KortTekst Stock Verkoop HasVerkoop LastDat LastJr HasURL URL",! Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set Afgeleid=$$$PRGet($$$GenProduct) . Quit:(Afgeleid'="")&&(Afgeleid'?4.7N) . Set Stock=$$$PRGet($$$StockType) . Set LinkType=$$$PRGet($$$LinkType) . Set Stock=$S(Afgeleid?4.7N:"A",LinkType="K":"K",LinkType["H":"H",Stock:"S",1:"N") . Set IdentNr=$$$PRGet($$$IdentNummer) . Set VolgNr="" . Set Dat="" . For Set VolgNr=$O(^PRHIST(PRNr,VolgNr),-1) Quit:VolgNr="" Do Quit:Dat'="" . . Set Actie=$P(^PRHIST(PRNr,VolgNr),"\",4) . . Set:Actie?1(1"U",1"H",1"I") Dat=+$P(^PRHIST(PRNr,VolgNr),"\") . Quit:$E(IdentNr)=6 . Quit:$E(IdentNr)=7 . Set KortTekst=$$$PRGet($$$KortTekst) . Set URL=blImg.GetProductImageURL(PRNr,##class(APPS.common.enu.Toepassing).Web()) . Set Verkoop=$$PROD^STAT(PRNr,0,"2009.01 ","2010.01 ",1) . Set Jaar=$S(Dat="":0,1:$$EXTDATE^vhLib.DataTypes(Dat,"J4")>2008) . Write PRNr,*9,KortTekst,*9,Stock,*9,Verkoop,*9,(Verkoop>0),*9,$$$ExcelDat(Dat),*9,Jaar,*9,($L(URL)>1),*9,URL,! . Do CLOSE^vhDEV(Dev) Quit VoorraadTellingLijst Kill MultiProd &sql(DECLARE VTL CURSOR FOR Select VoorraadTelling,MultipleProducts_Product into :PRNr,:MultiPRNr from Prod.VoorraadTelling_MultipleProducts) &sql(OPEN VTL) For &sql(FETCH VTL) Quit:SQLCODE Do . Set MultiProd(MultiPRNr)=PRNr &sql(CLOSE VTL) Set Dev=$$OPEN^vhDEV(,"VoorraadTelling.txt","W","T") Use Dev Write "PRNr IdentNr KortTekst MultiProd OpslagZone HuidigeWV Tel TelMin1",! Set PRNr="" For Set PRNr=$O(^PRSTOCK("D",PRNr)) Quit:PRNr="" Do . Set WV=$P(^PRSTOCK("D",PRNr),"\",5) . Quit:WV="" ; nog nooit voorgekomen op de werkvloer . Set oVoorraadTelling=##class(DS.Prod.VoorraadTelling).%OpenId(PRNr) . Do OverzichtTellingen(oVoorraadTelling,.Tel,.TelMin1) . Set OpslagZone=$S($isObject(oVoorraadTelling):$LG(oVoorraadTelling.Zones),1:"") . Set:$L(OpslagZone) OpslagZone=$P($G(^RES("PRODUKT","PI","HFWVSUBMAG","D",OpslagZone)),"`",2) . Set MultiKT="" . If $D(MultiProd(PRNr)) Set MultiKT=$$$ProductGet(MultiProd(PRNr),$$$KortTekst) . Write PRNr,*9,$$$PRGet($$$IdentNummer),*9,$$$PRGet($$$KortTekst),*9,MultiKT,*9,OpslagZone . Write *9,$$$ExcelNum(WV),*9,$$$ExcelNum(Tel),*9,$$$ExcelNum(TelMin1) . Write ! Do CLOSE^vhDEV(Dev) Quit OverzichtTellingen(oVT,Tel,TelMin1) Set (Tel,TelMin1)="" Quit:'$isObject(oVT) Set Key="" Kill Sum For Set oTel=oVT.Tellingen.GetNext(.Key) Quit:Key="" Do . Set Sum(oTel.TellingNr)=$G(Sum(oTel.TellingNr))+oTel.Aantal Set MaxKey=$O(Sum(""),-1) Quit:MaxKey="" Set Tel=$G(Sum(MaxKey)) Set MaxKey=$O(Sum(MaxKey),-1) Quit:MaxKey="" Set TelMin1=$G(Sum(MaxKey)) Quit KlantenBTWVrij Set Dev=$$OPEN^vhDEV(,"KlantBTWVrij.txt","W","T") use Dev Write "TBX Qty LC Diepte",! Set KLID=0 For Set KLID=$O(^KKL(KLID)) Quit:KLID="" Do . Quit:$P(^KKL(KLID,0),D,15)'=0 . Set KLNr=$P(^KKL(KLID,0),D,1) . Set KLNm=$P(^KKL(KLID,0),D,2) . Set LandCode=$$LAND^vhRtn1($P(^KKL(KLID,0),D,8),1) . . Set Omzet=$$KLANT^STAT(KLNr,0,"2009.07 ","2009.07",3) . . Write KLNr,*9,KLNm,*9,LandCode,*9,Omzet,! Do CLOSE^vhDEV(Dev) Quit Masson Set KLNr=6279 ; optima pack Set Dev=$$OPEN^vhDEV(,"TBX"_KLNr_".txt","W","T") use Dev Write "TBX Qty LC Diepte",! Set PRNr="" For Set PRNr=$O(^KSTKL(KLNr,PRNr)) Quit:PRNr="" Do . Quit:$P($$GENTYP^HAD(PRNr),"\")'="TBX" . Set Qty=$$KLANT^STAT(KLNr,PRNr,"2008.10 ","2009.10 ",1) . Quit:'Qty . Set MKortTxt=$P(^KPR(PRNr,0),D,1) . Set DC=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"DC")) . Set DS=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"DS")) . Set LC=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"LC")) . Set LD=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"LD")) . Write MKortTxt,*9,(Qty),*9,LC,*9,DC,*9,DS,*9,LD,! Do CLOSE^vhDEV(Dev) Quit KellerHF Set Dev=$$OPEN^vhDEV(,"KellerHF.txt","W","T") use Dev Write "Moeder KindIdentNr Kind Qty CifPPL PPL",! Set PRNr="" For Set PRNr=$O(^KSTKL(1239,PRNr)) Quit:PRNr="" Do . Quit:'$D(^PRBS("BS",PRNr)) . Set Qty=$$KLANT^STAT(1239,PRNr,"2008.09 ","2009.08",1) . Quit:'Qty . Set MKortTxt=$P(^KPR(PRNr,0),D,1) . Set BSKey="" . For Set BSKey=$O(^PRBS("BS",PRNr,BSKey)) Quit:BSKey="" Do . . Set BSRec=^PRBS("BS",PRNr,BSKey) . . Quit:$P(BSRec,D,3)'="H" . . Set HFPRNr=$P(BSRec,D,1) . . Quit:HFPRNr'?4.7N . . Quit:'$D(^KPR(HFPRNr,"J5005")) . . Set HFQty=$P(BSRec,D,2) . . Set CifPPL=$P(^KPR(HFPRNr,"J5005"),D,23) . . Set PPL=$P(^KPR(HFPRNr,"J5005"),D,19) . . Write MKortTxt,*9,$P(^KPR(HFPRNr,2),D,25),*9,$P(^KPR(HFPRNr,0),D,1),*9,(Qty*HFQty),*9,$$$ExcelNum(CifPPL),*9,$$$ExcelNum(PPL),! Do CLOSE^vhDEV(Dev) Quit tel k Cnt Set KLNr="" For Set KLNr=$O(^DLOG("K","KL",KLNr)) Quit:KLNr="" Do . Set Key=20080000 . For Set Key=$O(^DLOG("K","KL",KLNr,Key)) Quit:Key="" Do ;Quit:Key>20089999 Do . . Q:$P(^DLOG("K","KL",KLNr,Key),"\")'="O" . . Set Cnt($E(Key,1,6))=$G(Cnt($E(Key,1,6)))+1 . . Set Cnt=$G(Cnt)+1 zW Cnt tel2 k Cnt2 Set KLNr="" Set Dat=$$CALCDATE^vhLib.DataTypes($H,"M",-15,"FD")-1 For Set Dat=$O(^LOG(Dat)) Quit:Dat="" Do . Set Key="" . For Set Key=$O(^LOG(Dat,Key)) Quit:Key="" Do ;Quit:Key>20089999 Do . . Q:$P(^LOG(Dat,Key),"\")'="KL" . . Q:$P(^LOG(Dat,Key),"\",3)'="O" . . Set Mnd=$$EXTDATE^vhLib.DataTypes($$CALCDATE^vhLib.DataTypes(Dat,"M","FD"),"DM4") . . Set Cnt2(Mnd)=$G(Cnt2(Mnd))+1 . . Set Cnt2=$G(Cnt2)+1 zW Cnt2 q q ; d ORDSTAT^PV($H-400,$H) ORDINTAKE S Van=$$CALCDATE^vhLib.DataTypes($H,"M",-12,"FD") ;S Van=$$CALCDATE^vhLib.DataTypes($H,"M",-1,"FD") S Tot=$$CALCDATE^vhLib.DataTypes($H,"M",-1,"LD") Set FaktVan=-Van Set Datum=-Tot-1 Set Omzet=0 ;W Datum," ",Van,! s t1=$P($H,",",2) Set %J=$$%J^vhRtn1() Kill ^HULP(%J) Set KLNr="" For Set KLNr=$O(^KFA1("F",KLNr)) Quit:KLNr="" Do . Set Datum="" ; beginnen vanaf vandaag omdat orders van vorige maand ook in facturen van vandaag kunnen zitten . For Set Datum=$O(^KFA1("F",KLNr,Datum)) Quit:Datum="" Quit:Datum>FaktVan Do . . Set FAKNr="" . . For Set FAKNr=$O(^KFA1("F",KLNr,Datum,FAKNr)) Quit:FAKNr="" Do . . . Set BONNr="U" . . . Set ORDNr="" . . . For Set BONNr=$O(^KFA("F",FAKNr,BONNr)) Quit:$E(BONNr)'="U" Do . . . . Set LNr=99 . . . . For Set LNr=$O(^KFA("F",FAKNr,BONNr,LNr)) Quit:LNr="" Do . . . . . Set FakRec=^KFA("F",FAKNr,BONNr,LNr) . . . . . If $P(FakRec,D,17)="KF5" Do . . . . . . Set ORDNr=$P($P(FakRec,D,5)," - ") . . . . . . Quit:$D(^HULP(%J,"C",KLNr,ORDNr)) . . . . . . Set ORDDat=$$INTDATE^vhLib.DataTypes($P($P(FakRec,D,5)," - ",2),"DK") . . . . . . If (ORDDatTot) Set ORDNr="" Quit . . . . . . Set EDIRef=$P(FakRec,D,21) . . . . . . If (EDIRef'?4.8N)&&(KLNr=1239)&&($P(FakRec,D,5)["EDI") Do . . . . . . . Set EDIRef=$P($P(FakRec,D,5),"EDI",2) . . . . . . . Set EDIRef=$P($P(EDIRef,"."),"/") . . . . . . . Set EDIRef=$$TRIMN^vhRtn1(EDIRef) . . . . . . Set ^HULP(%J,"C",KLNr,ORDNr)=$Lb(ORDNr,ORDDat,EDIRef,FAKNr) . . . . . Else If ORDNr,$P(FakRec,D,2)?4.7N Do . . . . . . Set PRNr=$P(FakRec,D,2) . . . . . . Set GenTyp=$$GENTYP^HAD(PRNr,1) ; ook in KPRO . . . . . . If $P(GenTyp,"\")="TBX" Do . . . . . . . Set ^HULP(%J,"C",KLNr,ORDNr,$O(^HULP(%J,"C",KLNr,ORDNr,""),-1)+1)=FakRec s t2=$P($H,",",2) Set Dev=$$OPEN^vhDEV(,"OrderIntake.txt","W","T") Use Dev Write "KLNr KLNm Regio ORDNr OrdDat FactNr EdiRef LevDat Werkdagen Aantal PRNr KortTekst" Do HeaderKenmerken^PVJB Write ! Set KLNr="" For Set KLNr=$O(^HULP(%J,"C",KLNr)) Quit:KLNr="" Do . Set ORDNr="" . For Set ORDNr=$O(^HULP(%J,"C",KLNr,ORDNr)) Quit:ORDNr="" Do . . Set Rec0=^KKL(^KK1(KLNr),0) . . Set KLNm=$P(Rec0,D,2) . . Set Regio=$P(Rec0,D,20) . . Set lbOrder=^HULP(%J,"C",KLNr,ORDNr) . . Set VolgNr="" . . For Set VolgNr=$O(^HULP(%J,"C",KLNr,ORDNr,VolgNr)) Quit:VolgNr="" Do . . . Set FakRec=^HULP(%J,"C",KLNr,ORDNr,VolgNr) . . . Set PRNr=$P(FakRec,D,2) . . . Do FetchKenmerken^PVJB(PRNr) . . . Write KLNr,*9,KLNm,*9,Regio,*9,ORDNr . . . Write *9,$$EXTDATE^vhLib.DataTypes($LG(lbOrder,2),"DK") . . . Write *9,$LG(lbOrder,4),*9,$LG(lbOrder,3) . . . Set DiffDate=$$DIFFDATE^vhLib.DataTypes($LG(lbOrder,2),$P(FakRec,D,25),"A") . . . Write *9,$$$ExcelDat($P(FakRec,D,25)),*9,DiffDate,*9,$$$ExcelNum($P(FakRec,D,3)) . . . Write *9,PRNr,*9,$P(^KPR(PRNr,0),D) . . . Do WriteKenmerken . . . W ! ;Close:0'[Dev Dev Do CLOSE^vhDEV(Dev) s t3=$P($H,",",2) Write "Duur fetch=",t2-t1,! Write "Duur file=",t3-t2,! Quit WriteKenmerken Write *9,DC,*9,DS,*9,KLAS,*9,LC,*9,LT,*9,LD,*9,RH,*9,$$$ExcelNum(IB),*9,KL,*9,DK,*9,KB,*9,IsSR,*9,BS,*9,VPK,*9,KB,*9,$S(FS=0:"",1:FS),*9,$S(BGRP=0:"",1:BGRP),*9,$S(ASM=0:"",1:ASM),*9,$S(BM=0:"",1:BM),*9,KV,*9,NMCP,*9,RSTL,*9,$$$ExcelNum(ProboxDoos),*9,$$$ExcelNum(ProboxDeksel),*9,$$$ExcelNum(ProboxPallet) Write *9,LadeBeoordeling Write *9,$$$ExcelNum(KostenplaatsTBZAAG) Write *9,$$$ExcelNum(KostenplaatsTBMONT) Write *9,$$$ExcelNum(KostenplaatsTBVERPAK) Write *9,$$$ExcelNum(KostenplaatsHALUXKARTON) Quit KLANTVZW Set Dev=$$OPEN^vhDEV(,"KlantVZW.txt","W","T") Use Dev Set KLID=0 Write "KLNr KLNm Regio Vzw Omzet",! For Set KLID=$O(^KKL(KLID)) Quit:KLID="" Do . Set Regio=$P(^KKL(KLID,0),"\",20) . Set KLNr=$P(^KKL(KLID,0),"\",1) . Set KLNm=$P(^KKL(KLID,0),"\",2) . Set Stat=$$KLANT^STAT(KLNr,0,"2008.05 ","2009.06 ",3) . Quit:Stat<100 . Set Vzw=$$SHOW^KLVERZW(,KLNr) . Quit:Vzw'["OD" . Quit:Vzw'["Vr" . Write KLNr,*9,KLNm,*9,Regio . Write *9,Vzw,*9,$$$ExcelNum(Stat),! Do CLOSE^vhDEV(Dev) Q STATHETAL Set Dev=$$OPEN^vhDEV(,"Regio23Hetal.txt","W") Use Dev Set KLID=0 Write "KLNr KLNm Regio Maand OmzetStat OmzetHetal",! For Set KLID=$O(^KKL(KLID)) Quit:KLID="" Do . Set Regio=$P(^KKL(KLID,0),"\",20) . Quit:Regio'?1(1"2",1"3") . Set KLNr=$P(^KKL(KLID,0),"\",1) . ;q:KLNr'=9077 . Set KLNm=$P(^KKL(KLID,0),"\",2) . For MndCnt=1:1:37 Do . . Set Mnd=$$CALCDATE^vhLib.DataTypes($H,"M",-MndCnt) . . Set MndFmt=$$EXTDATE^vhLib.DataTypes(Mnd,"DM4")_" " . . Set KlantStat=$$KLANT^STAT(KLNr,0,MndFmt,MndFmt,3) . . Set HetalStat=$$FAKT(KLNr,$$CALCDATE^vhLib.DataTypes(Mnd,"M","FD"),$$CALCDATE^vhLib.DataTypes(Mnd,"M","LD"),"cbCheck^PV") . . Quit:'KlantStat&&'HetalStat . . Write KLNr,*9,KLNm,*9,Regio . . Write *9,$TR($$EXTDATE^vhLib.DataTypes($$CALCDATE^vhLib.DataTypes(Mnd,"M","FD"),"DKP"),".","/"),*9,$$$ExcelNum(KlantStat),*9,$$$ExcelNum(HetalStat),! Close:0'[Dev Dev Q FAKT(KLNr,Van,Tot,cbFunc) Set Van=-Van Set Datum=-Tot-1 Set Omzet=0 ;W Datum," ",Van,! For Set Datum=$O(^KFA1("F",KLNr,Datum)) Quit:Datum="" Quit:Datum>Van Do . Set FAKNr="" . For Set FAKNr=$O(^KFA1("F",KLNr,Datum,FAKNr)) Quit:FAKNr="" Do . . Set BONNr="U" . . For Set BONNr=$O(^KFA("F",FAKNr,BONNr)) Quit:$E(BONNr)'="U" Do . . . ;w "." . . . Set LNr=99 . . . For Set LNr=$O(^KFA("F",FAKNr,BONNr,LNr)) Quit:LNr="" Do . . . . Set FakRec=^KFA("F",FAKNr,BONNr,LNr) . . . . ;W FakRec,! . . . . Set PRNr=$P(FakRec,"\",2) . . . . Quit:PRNr'?4.7N . . . . X "Set Check=$$"_cbFunc_"(KLNr,PRNr,FAKNr,BONNr,FakRec)" . . . . Quit:'Check . . . . Set Omzet=Omzet+$P(FakRec,"\",34) Quit Omzet cbCheck(KLNr,PRNr,FAKNr,BONInd,FakRec) ;Q 1 Set Key=$O(^KPR(PRNr,"J")) Set:$E(Key)'="J" Key=$O(^KPRO(PRNr,"J")) Quit:$E(Key)'="J" 0 ;w Key,"*" Quit Key?1(1"J6054",1"J6808") TEST Set PRNr="" For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set KT=$P(^KPR(PRNr,0),D,1) . Quit:$E(KT,1,6)'="SD1.PH" . Set DosNr=$E(KT,10,11) . Write PRNr," ",KT," ",$G(^KPR(PRNr,"G")),"->",DosNr,! . s ^KPR(PRNr,"G")=DosNr . D DELIND^PRODUKT2(PRNr) . D BLDIND^PRODUKT2(PRNr) Q RECALCV1 Set PRNr="" For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set KT=$P(^KPR(PRNr,0),D,1) . Quit:$P(^KPR(PRNr,0),"\",3)'=89322 ; alleen V1 . Write PRNr," ",KT,! . Set Pakket=$$DISP^PAKKET(1239,PRNr) . Write PRNr," ",KT," ",Pakket,! . Do $$$PRSet($$$SchaduwDBPerc,$S($L(Pakket):50.08,1:50.58)) . Do $$$PRSet($$$SchaduwCifPerc,4) Q RECALCPRO Set PRNr="" For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set KT=$P(^KPR(PRNr,0),D,1) . Set GenPRNr=$P(^KPR(PRNr,0),"\",3) . Set:";435287;209370;209369;89325;"[(";"_PRNr_";") GenPRNr=PRNr . Quit:GenPRNr'?4.7N . Quit:";435287;209370;209369;89325;"'[(";"_GenPRNr_";") . ;Write PRNr," ",KT,! . ;Set Pakket=$$DISP^PAKKET(1239,PRNr) . Write PRNr," ",KT," ",$S(GenPRNr=89325:51.04,1:50.56),! . Do $$$PRSet($$$SchaduwDBPerc,$S(GenPRNr=89325:51.04,1:51.04)) . Do $$$PRSet($$$SchaduwCifPerc,$S(GenPRNr=89325:2,1:2)) Q HALLEAN Set Maand=$$CALCDATE^vhLib.DataTypes($H,"M",$G(Delta,-1)) Set MndBegin=$$CALCDATE^vhLib.DataTypes($H,"M","FD",-6) Set MndEnd=$$CALCDATE^vhLib.DataTypes($H,"M","LD",-1) Set Dev=0 Set Dev=$$OPEN^vhDEV(,"Producten opmaat"_$TR($$EXTDATE^vhLib.DataTypes(MndBegin,"DM"),".-"," ")_".txt","W") Use Dev Write $TR("GenTyp;SubGT;PRNr;Product;Aantal;Datum;ProfType;Vulling;Gehard;Hoogte;Breedte;Mon;Verpak;Toep",";",$C(9)),! Set PRNr="" For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Quit:'$D(^KPR(PRNr,"J6332")) . Set KT=$P(^KPR(PRNr,0),D,1) . Set GenTyp=$$GENTYP^HAD(PRNr) . Quit:$P(GenTyp,"\")="" . Quit:$P(GenTyp,"\")="TBX" . Set VolgNr="" . Set Qty="" . For Set VolgNr=$O(^PRHIST(PRNr,VolgNr)) Quit:VolgNr="" Do . . Set Rec=^PRHIST(PRNr,VolgNr) . . Set Datum=+$P(Rec,D,1) . . Quit:DatumMndEnd . . Set Actie=$P(Rec,D,4) . . Quit:Actie'="I" . . Set Qty=$P(Rec,D,2) . . Write $P(GenTyp,D,1),$C(9),$P(GenTyp,D,2),$C(9),PRNr,$C(9),$P(^KPR(PRNr,0),D) . . Write $C(9),Qty,*9,$TR($$EXTDATE^vhLib.DataTypes(Datum,"DKP"),".","/") ; Aantal . . Set Toep=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("KAD",PRNr,"TOEP")) . . Set (Hoogte,Breedte,Vulling,Hard,Profiel,Montage,Verpak)="" . . If Toep'="" Do . . . Set Hoogte=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("KAD",PRNr,"PH")) . . . Set Breedte=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("KAD",PRNr,"PB")) . . . Set Profiel=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("KAD",PRNr,"PT")) . . . Set Vulling=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("KAD",PRNr,"VULCODE")) . . . Set Hard=##class(Prod.Kenmerk.DataDefinitie).Get("KAD",PRNr,"LVE") . . . Set:Hard'="" Hard=$S($LF(Hard,"HARD"):1,1:"") . . . Set Montage=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("KAD",PRNr,"MON")) . . . Set Verpak=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("KAD",PRNr,"VPK")) . . . Write *9,Profiel,*9,Vulling,*9,Hard,*9,Hoogte,*9,Breedte,*9,Montage,*9,Verpak,*9,Toep . . Write ! Close:Dev'=0 Dev Quit OIE Set Dev=$$OPEN^vhDEV(,"OIE.txt","W") Use Dev Write $TR("SortKey;ProductNaam;IdentNr;Oms",";",$C(9)),! Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Quit:$P(^KPR(PRNr,0),D,3)'="" . Set SortKey=$$SORTKEY^PRODUKT(PRNr) . Set KT=$$$PRGet($$$KortTekst) . Set IdentNr=$$$PRGet($$$IdentNummer) . Set LinkType=$$$PRGet($$$LinkType) . Quit:LinkType["H" . Quit:LinkType["K" . Quit:$$$PRGet($$$NONAktief) . . Quit:$E(IdentNr)=6 . Quit:$E(IdentNr)=7 . Set Key=$$$Trim($E(KT,1,11))_"."_$$$Trim($E(KT,22,25))_"."_$E(IdentNr,1) . Set LangT=##class(Prod.ProductTekst).GetOmschrijvingViaPRNr(PRNr, "N", ">CR<", 1) . Set StockNietstock=##class(Prod.ProductTekst).GetOmschrijvingViaPRNr(PRNr, "N", ">CR<", 1) . Set Verpakking=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TB",PRNr,"Verpakking")) . Set LiRe=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TB",PRNr,"LiRe")) . Write SortKey,*9,KT,*9,IdentNr,*9,LangT,*9,*9,*9,$$$PRGet($$$StockType),*9,Key,*9,LiRe,*9,Verpakking,*9,! Close:Dev'=0 Dev Quit GREEP #define ExcelNum(%n) $TR(%n,".",",") Set Maand=$$CALCDATE^vhLib.DataTypes($H,"M",$G(Delta,-1)) Set MndBegin=$$CALCDATE^vhLib.DataTypes($H,"M","FD",-6) Set MndEnd=$$CALCDATE^vhLib.DataTypes($H,"M","LD",-1) Set Dev=0 Set Dev=$$OPEN^vhDEV(,"Grepen.txt","W") Use Dev Write $TR("SortKey;ProductNaam;Oms;LevNm;LevRef;OmsLev;JaarAantal;JaarOmz;VoorraadOp180209;CifPPL;PPL;LevKort%;Cif%",";",$C(9)),! Set PRNr="" For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . ;Quit:'$D(^KPR(PRNr,"J6332")) . Set SortKey=$$SORTKEY^PRODUKT(PRNr) . Quit:$E(SortKey,7,9)'="G*K"&&($E(SortKey,7,9)'="GMW") . Set KT=$P(^KPR(PRNr,0),D,1) . Set VolgNr="" . Set Qty="" . Set Stat=$$PROD^STAT(PRNr,0,"2008.02 ","2009.01 ","1,3") . Set LangT=##class(Prod.ProductTekst).GetOmschrijvingViaPRNr(PRNr, "N", ">CR<", 1) . Set LangR=##class(Prod.ProductTekst).GetOmschrijvingViaPRNr(PRNr, "BR", ">CR<", 1) . Set CifPPL=$$$PRGet($$$CifPPLEUR) . Set MTL=$$$PRGet($$$PPLMTL) . Set Cif=$$$PRGet($$$CifPerc) . Set Kort=$$$PRGet($$$KortingPerc) . Set LevRef=$$$PRGet($$$Leveranciersreferentie) . Set LevNr=$E($O(^KPR(PRNr,"J")),2,5) . Set LevNm=$P(^KLE(^KL1(LevNr),0),D,2) . Write SortKey,*9,KT,*9,LangT,*9,LevNm,*9,LevRef,*9,LangR,*9,$$$ExcelNum($P(Stat,"\")),*9,$$$ExcelNum($P(Stat,"\",3)),*9,$$$ExcelNum($$GETSTOCK^PRODUKT4(PRNr,"F")) . Write *9,$$$ExcelNum(CifPPL),*9,$$$ExcelNum(MTL),*9,$$$ExcelNum(Kort),*9,$$$ExcelNum(Cif) . Write ! Close:Dev'=0 Dev Quit GREEPK #define ExcelNum(%n) $TR(%n,".",",") Set Maand=$$CALCDATE^vhLib.DataTypes($H,"M",$G(Delta,-1)) Set MndBegin=$$CALCDATE^vhLib.DataTypes($H,"M","FD",-6) Set MndEnd=$$CALCDATE^vhLib.DataTypes($H,"M","LD",-1) Set Dev=0 Set Dev=$$OPEN^vhDEV(,"GrepenKlanten.txt","W") Use Dev Write $TR("SortKey;ProductNaam;Oms;LevNm;KLNr;KLNm;JaarAantal;JaarOmz;Prijs",";",$C(9)),! Set PRNr="" For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . ;Quit:'$D(^KPR(PRNr,"J6332")) . Set SortKey=$$SORTKEY^PRODUKT(PRNr) . Quit:$E(SortKey,7,9)'="G*K"&&($E(SortKey,7,9)'="GMW") . Set KT=$P(^KPR(PRNr,0),D,1) . Set VolgNr="" . Set Qty="" . Set Stat=$$PROD^STAT(PRNr,0,"2008.02 ","2009.01 ","1") . Quit:Stat<1 . Set LangT=##class(Prod.ProductTekst).GetOmschrijvingViaPRNr(PRNr, "N", ">CR<", 1) . Set LangR=##class(Prod.ProductTekst).GetOmschrijvingViaPRNr(PRNr, "BR", ">CR<", 1) . Set CifPPL=$$$PRGet($$$CifPPLEUR) . Set MTL=$$$PRGet($$$PPLMTL) . Set Cif=$$$PRGet($$$CifPerc) . Set Kort=$$$PRGet($$$KortingPerc) . Set LevRef=$$$PRGet($$$Leveranciersreferentie) . Set LevNr=$E($O(^KPR(PRNr,"J")),2,5) . Set LevNm=$P(^KLE(^KL1(LevNr),0),D,2) . Set KLNr=0 . For Set KLNr=$O(^KSTPR(PRNr,KLNr)) Quit:KLNr="" Do . . Set Stat=$$PROD^STAT(PRNr,KLNr,"2008.02 ","2009.01 ","1,3") . . Quit:$P(Stat,D,1)<1 . . Set KLNm=$P(^KKL(^KK1(KLNr),0),D,2) . . Set Land=##class(Derde.Klant.Klant).%OpenId(KLNr).LandCode . . Write SortKey,*9,KT,*9,LangT,*9,LevNm,*9,KLNr,*9,KLNm,*9,Land,*9,$$$ExcelNum($P(Stat,"\")),*9,$$$ExcelNum($P(Stat,"\",3)),*9,$$$ExcelNum(+$$KLANTPR^KPRIJS(KLNr,PRNr)) . . Write ! Close:Dev'=0 Dev Quit DL Set Dev=$$OPEN^vhDEV(,"IntivoDL.txt","W") Use Dev S PRNr=416620 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do ;Quit:$E(IdentNr)=6 . Quit:'$D(^KPR(PRNr,"J6332")) ; halux . Quit:$P($$GENTYP^HAD(PRNr),"\")'="TBX" . Set KT=$P(^KPR(PRNr,0),D,1) . Set IdentNr=$P(^KPR(PRNr,2),D,25) . Set LC=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"LC")) . ;w PRNr," ",LC,! . Quit:LC'["DL" . Set BS=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"BS")) . Set KLNr="" . Set KLNr=$O(^KSTPR(PRNr,0)) . Set QtyStat=0 . Set Mnd="" . Set MemKLNr="" . If KLNr Do . . Set Mnd=$O(^KSTPR(PRNr,KLNr,0)) . . Set MemKLNr=KLNr . . Set QtyStat=$$PROD^STAT(PRNr,0,"2008.09 ","2009.02 ",1) . . Set (ORDNr,OLUNr)="" . Set (QtyOrd,QtyToe)="" . For Set ORDNr=$O(^ORD("IP",PRNr,ORDNr)) Quit:ORDNr="" Do . . For Set OLUNr=$O(^ORD("IP",PRNr,ORDNr,OLUNr)) Quit:OLUNr="" Do . . . Set OLNr=^ORD("IP",PRNr,ORDNr,OLUNr) . . . Set KLNr=$P(^KO1(ORDNr,"F"),"\") . . . Set:KLNr MemKLNr=KLNr . . . Set OLRec=^KOD(KLNr,"F",ORDNr,OLNr) . . . Set:$P(OLRec,D,27)'="" QtyToe=QtyToe+$P(OLRec,D,3) . . . Set:$P(OLRec,D,27)="" QtyOrd=QtyOrd+$P(OLRec,D,3) . . Set (BONNr,BLNr)="" . Set (QtyBon)="" . For Set BONNr=$O(^KUP(PRNr,BONNr)) Quit:BONNr="" Do . . For Set BLNr=$O(^KUP(PRNr,BONNr,BLNr)) Quit:BLNr="" Do . . . Set KLNr=^KUP(PRNr,BONNr,BLNr) . . . Set:KLNr MemKLNr=KLNr . . . Set QtyBon=QtyBon+$P(^KUL(KLNr,"F",BONNr,BLNr),D,3) . Quit:'MemKLNr . Set KLNm=$P(^KKL(^KK1(MemKLNr),0),D,2) . Write MemKLNr,*9,KLNm,*9,PRNr,*9,KT,*9,BS,*9,Mnd,*9,QtyStat,*9,QtyBon,*9,QtyOrd,*9,QtyToe,! c Dev Quit KindEnDO S PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do ;Quit:$E(IdentNr)=6 . Quit:'$D(^KPR(PRNr,"J5005")) ; Blum . Set KT=$P(^KPR(PRNr,0),D,1) . Set IdentNr=$P(^KPR(PRNr,2),D,25) . Quit:$E(IdentNr)'=6 . Write !, PRNr," ",KT," ",IdentNr . . If $D(^PRBS("IP",PRNr)) . . Set Found=0 . . Set (MPRNr,BSKey)="" . . For MPRNr=$O(^PRBS("IP",PRNr,MPRNr)) Quit:MPRNr="" Do . . . For BSKey=$O(^PRBS("IP",PRNr,MPRNr,BSKey)) Quit:BSKey="" Do . . . . Set Found=^PRBS("IP",PRNr,MPRNr,BSKey)="H" . . w:Found "Product gebruikt als bouwsteen" . q . ; Huidig . Do $$$PRSet($$$KortingPerc,"") . Do $$$PRSet($$$PPLMTL,"") . Do $$$PRSet($$$CifPerc,"") . Do $$$PRSet($$$DBPerc,"") . Do $$$PRSet($$$VorkPerc,"") . Do RECALC^PRODUKT2(PRNr) . ; Schaduw . Do $$$PRSet($$$SchaduwKortingPerc,"") . Do $$$PRSet($$$SchaduwPPL,"") . Do $$$PRSet($$$SchaduwCifPerc,"") . Do $$$PRSet($$$SchaduwDBPerc,"") . Do $$$PRSet($$$SchaduwVorkPerc,"") . Set $P(^KPR(PRNr,2),D,27)="" . Do PUTLOG^PRODUKT(PRNr,,$P(^KPR(PRNr,2),D,27),"","SchaduwDatum") Quit q OFF Write "KLNr Naam OfferteNr",! S KLNr=0 For Set KLNr=$O(^KOFKL(KLNr)) Quit:KLNr="" Do . SEt OFFNr=0 . For Set OFFNr=$O(^KOFKL(KLNr,"F",OFFNr)) Quit:OFFNr="" Do . . Set OFLNr=99 . . For Set OFLNr=$O(^KOFKL(KLNr,"F",OFFNr,OFLNr)) Quit:OFLNr="" Do . . . Set OLRec=$G(^KOFKL(KLNr,"F",OFFNr,OFLNr)) . . . Set PRNr=$P(OLRec,D,2) . . . Quit:PRNr'=371505 . . . Write KLNr,*9,$P(^KKL(^KK1(KLNr),0),D,2),*9,OFFNr,! Quit Do MAILKL("",,"") ;Do MAILKL("F",,"") Sequence() s Dev=$$OPEN^vhDEV(,"CheckKleller.txt","W") u Dev #define LevHalux 6332 set lbTOENrs=$Lb("284254") Set Count=0 For I=1:1:$LL(lbTOENrs) Do . Set TOENr=$LG(lbTOENrs,I) . Set TLNr=99 . For Set TLNr=$O(^KTO($$$LevHalux,TOENr,TLNr)) Quit:TLNr="" Do ;Quit:Count>10 . . Set LRec=^KTO($$$LevHalux,TOENr,TLNr) . . Set PRNr=$P(LRec,"\",2) . . Quit:$P($$GENTYP^HAD(PRNr),"\")'="TBX" . . Set TLUNr=$P(LRec,"\",15) . . Set KLNr=$P($G(^KTO($$$LevHalux,TOENr,1)),"\",8) ; klant . . Set ORDNr=$P($G(^KTO($$$LevHalux,TOENr,$G(^TO("IU",TOENr,TLUNr),"*"))),"\",27) ; KOMLink . . Set OLNr=$P($G(^KTO($$$LevHalux,TOENr,$G(^TO("IU",TOENr,TLUNr),"*"))),"\",28) ; KOMLink . . Set KlantOrdRef=$S(ORDNr&&OLNr:$P($G(^KOD(KLNr,"F",ORDNr,OLNr)),"\",45),1:"") ; Klantreferentie (ritnummer bij Keller EDI) . . Set TransportRef=$P(^KOD(KLNr,"F",ORDNr,1),"\",33) . . Set KlantProdRef=$S(KLNr:$$DISP^PAKKET(KLNr,PRNr),1:"") . . Write *9,TransportRef,*9,KlantOrdRef,*9,KlantProdRef,*9,PRNr,*9,$P(^KPR(PRNr,0),"\"),*9,$P(LRec,"\",3),! c Dev q KT26 Write "PRNr SortKey KortTekst HalfFabr LEVNr LevNm #Fakt Omzet Marge",! S PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . ;Quit:$P(^KPR(PRNr,0),D,3)?4.7N ; afgeleid . Quit:'$D(^KPR(PRNr,"J6332")) ; Halux . Set KT=$P(^KPR(PRNr,0),D,1) . Quit:$L(KT)'>25 . Write PRNr," ",KT,! . Do DELIND^PRODUKT2(PRNr) . Set $P(^KPR(PRNr,0),D,1)=$E(KT,1,25) . Do BLDIND^PRODUKT2(PRNr) Quit MAILKL(TaalSel,LandSel,ExclTyp,InclTyp,LimGlobRef) Set Dev=0 New U Set U=$C(9) ; TaalSel = N of F ; LandSel = "NL;BE" ; ExclTyp = "" bv "BH;XX" (boekhouding;diverse) ; InclTyp = "" bv "AK;AB" (Aankoop;Algemeen beheerder) ; LimGlobRef wordt gebruikt om te testen of een klant mag opgenomen worden in de maillijst - $D(@LimGlobRef@(KLNr)) Set BeginOmzetMaand=$$EXTDATE^vhLib.DataTypes($$CALCDATE^vhLib.DataTypes($H,"M",-12),"DM4")_" " Set EndOmzetMaand=$$EXTDATE^vhLib.DataTypes($$CALCDATE^vhLib.DataTypes($H,"M",-1),"DM4")_" " New %J,Dev,KLId,KLNr,KLNm,Taal,Land,Pers,Nr,Found,I,connect,Typconnect,email,Naam,Voornaam,elink Set Dev=$$OPEN^vhDEV(,"MAILLIST"_$G(TaalSel)_".TXT","W") Use Dev Set KLId="" Write "KLNr KLNm ToeNaam Aanspr Straat GEmeente PostKode Land eLink email Regio Taal Persoon",! Set %J=$$%J^vhRtn1() Kill ^HULP(%J) For Set KLId=$O(^KKL(KLId)) Quit:KLId="" Do . Set eFound=0 . Set KLNr=$P(^KKL(KLId,0),D) . If $L($G(LimGlobRef)) Quit:'$D(@LimGlobRef@(KLNr)) . Quit:$P(^KKL(KLId,2),D,10) ; non akt . Quit:$L($P(^KKL(KLId,0),D,30)) ; non akt of verwijderd . Quit:'$P(^KKL(KLId,0),D,20) ; geen regio . Quit:$P(^KKL(KLId,1),D,25)="Z" ; Non akt . Quit:$P(^KKL(KLId,1),D,25)=0 ; Non akt . . ;Quit:$L($P(^KKL(KLId,1),D,10)) ; Klant Van . . ;Set Found=0 . ;Set Vzwn=$P(^KKL(KLId,2),D,16) . ;For I=1:1:$L(Vzwn,"`") Do . . Set Vzw=$P(Vzwn,"`",I) . . Set:($P(Vzw,";")="OD4")&&($P(Vzw,";",2)=1) Found=1 . . Set:($E($P(Vzw,";"),1,2)="OD")&&($P(Vzw,";",2)=1) Found=1 . ;Quit:'Found . ;Quit:'$$IncludeKlant(KLNr) . . Set Regio=$P(^KKL(KLId,0),D,20) . ;Quit:(Regio)'?1(1"1",1"2",1"3",1"20",1"21",1"22",1"23",1"24",1"25",1"26",1"27") . ;Quit:(Regio>12) . ;Quit:Regio=1 ; geen key accounts . ;Quit:Regio'=30 . Set Omzet=$$KLANT^STAT(KLNr,0,BeginOmzetMaand,EndOmzetMaand,3) . ;Quit:'Omzet . . Set KLNm=$P(^KKL(KLId,0),D,2) . Set Taal=$P(^KKL(KLId,0),D,9) . ;Quit:(Taal="D")!(Taal="E") . If $L($G(TaalSel)) Quit:Taal'=TaalSel . Set Land=$$LAND^vhRtn1(KLNr,"K",1,1) . If $L($G(LandSel)) Quit:(";"_LandSel_";")'[(";"_Land_";") . Set Nr="" . For Set Nr=$O(^PERS("K",KLNr,Nr)) Quit:Nr="" Do .. Set Pers=^PERS("K",KLNr,Nr) .. .. ;Controleren of het één van de VerantwType NIET tot de ExclTyp behoort .. Set Typ=$P(Pers,D,5) .. Set Found=$S($L($G(ExclTyp)):0,1:1) .. If 'Found For I=1:1:$L(Typ,";") Do ... Quit:'$L($P(Typ,";")) ... Set:(";"_ExclTyp_";")'[(";"_$P(Typ,";",I)_";") Found=1 .. Quit:'Found ; Behoort to ExclTyp .. .. ;Controleren of het één van de VerantwType tot de InclTyp behoort .. Set Typ=$P(Pers,D,5) .. Set Found=$S($L($G(InclTyp)):0,1:1) .. If 'Found For I=1:1:$L(Typ,";") Do ... Quit:'$L($P(Typ,";")) ... Set:(";"_InclTyp_";")[(";"_$P(Typ,";",I)_";") Found=1 ; Type van persoon behoort tot InclTyp .. Quit:'Found ; Behoort to IncTyp .. For I=15:1:19 Do ... Quit:$P(Pers,D,6) ; mail non aktief ... Set connect=$P(Pers,D,I) ... Quit:$P(connect,";")'="E" ... Set email=$P(connect,";",2) ... Quit:'$l(email) ... Quit:email'["@" ... Quit:$E(email)="#" ; NOOIT versturen ... Quit:$E(email)="~" ; PROBLEEM GEVAL niet versturen ... If $E(email)="~" Set $E(email)="" ; UNDELIVERABLE ... Quit:$D(^HULP(%J,$$UPTRIMAN^vhRtn1(email))) ;dubbel ... Set Naam=$P(Pers,D,2) ... Set VoorNaam=$P(Pers,D,3) ... Set elink=Naam_$S($L(VoorNaam):" "_VoorNaam,1:"") ... Set ^HULP(%J,$$UPTRIMAN^vhRtn1(email))="" ... ;Do WriteAdres(KLNr) ... Set eFound=1 ... ;Write elink,U,email,U,$P(^KKL(KLId,0),D,20),U,Taal,U,$P(Pers,D,1),! . Set email=$P(^KKL(KLId,2),D,19) Do . Quit:eFound . If $E(email)="~" Set $E(email)="" ; UNDELIVERABLE . if $$UPTRIMAN^vhRtn1(email)'="" Quit:$D(^HULP(%J,$$UPTRIMAN^vhRtn1(email))) ;dubbel . If '((email="")||(email'["@")||($E(email)="#")||($E(email)="~")) Quit . Do WriteAdres(KLNr) . ;Write U,email,U,$P(^KKL(KLId,0),D,20),U,Taal,! . Write U,U,$P(^KKL(KLId,0),D,20),U,Taal,! Close:Dev'=0 Dev Quit WriteAdres(KLNr) Set Adres=^KKL(^KK1(KLNr),0) Set KLNr=$P(Adres,D,1) Set KLNm=$P(Adres,D,2) Set Aanspr=$P(Adres,D,4) Set ToeNm=$P(Adres,D,3) Set Straat=$P(Adres,D,5) Set Gemeente=$P(Adres,D,7) Set PostKode=$P(Adres,D,6) Set Land=$$LAND^vhRtn1($P(Adres,D,8),1) Write KLNr,U,KLNm,U,ToeNm,U,Aanspr,U,Straat,U,Gemeente,U,PostKode,U,Land,U Quit IncludeKlant(KLNr) Set PRNr=0 Set Found=0 For Set PRNr=$O(^KSTKL(KLNr,PRNr)) Quit:PRNr="" Do Quit:Found . Quit:$E($P($G(^KPR(PRNr,0)),"\",1),1,4)'=" 20S" ; Aventos HS . Set Found=1 Quit Found Image(PRNr) Set StartPad="\\Notes01\Images\" Set rsImg=##class(%ResultSet).%New("Res.ImageLink:GetViaFunctieTypes") Do rsImg.Execute("PR",PRNr,$LB("PB"),"N") ; Haalt alle objecten waarvang de functietype is PB en AG (ook dubbels worden getoond) Set TFile="" For Quit:'rsImg.Next() Do . Set TFile=##class(Res.ImageLink).GetFile(StartPad,rsImg.Data("%ID"),"W","\") Quit TFile Banco S Dev=$$OPEN^vhDEV(,"PVH Banco.txt","W") Use Dev Write "PRNr SortKey KLNr KLNm KortTekst #Fakt Omzet Marge",! S PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . ;Quit:$P(^KPR(PRNr,0),D,3)?4.7N ; afgeleid . Quit:($P(^KPR(PRNr,0),D,3)'=36945)&&($P(^KPR(PRNr,0),D,3)'=136797) ; Banco moeder . Set Stat=$$PROD^STAT(PRNr,0,"2007.11 ","2008.10","1,4") . Quit:+$P(Stat,D,3)=0 . S KLNr=$O(^KSTPR(PRNr,0)) . S KLNm=$P(^KKL(^KK1(KLNr),0),D,2) . Write PRNr,*9,$$SORTKEY^PRODUKT(PRNr),*9,KLNr,*9,KLNm,*9,$P(^KPR(PRNr,0),D,1),*9,$TR($P(Stat,D,2),".",","),*9,$TR($P(Stat,D,3),".",","),*9,$TR($P(Stat,D,4),".",","),! Close Dev Quit TransProd S Dev=$$OPEN^vhDEV(,"PVH Producten.txt","W") Use Dev Write "PRNr SortKey KortTekst HalfFabr LEVNr LevNm #Fakt Omzet Marge",! S PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . ;Quit:$P(^KPR(PRNr,0),D,3)?4.7N ; afgeleid . Quit:$D(^KPR(PRNr,"J5005")) ; Blum . Quit:$D(^KPR(PRNr,"J6332")) ; Halux . Quit:$$$PRGet($$$NONAktief) . Quit:$$$PRGet($$$Hoofdgroep)["OL" . Set Stat=$$PROD^STAT(PRNr,0,"2007.11 ","2008.10","1,4") . Set HalfFabr=$$$PRGet($$$LinkType) . Set LEVNr=$E($O(^KPR(PRNr,"J")),2,99) . Set LEVNm=$P(^KLE(^KL1(LEVNr),0),D,2) . Write PRNr,*9,$$SORTKEY^PRODUKT(PRNr),*9,$P(^KPR(PRNr,0),D,1),*9,HalfFabr,*9,LEVNr,*9,LEVNm,*9,$TR($P(Stat,D,2),".",","),*9,$TR($P(Stat,D,3),".",","),*9,$TR($P(Stat,D,4),".",","),! Close Dev Quit BLUMProd Set Dev=0 Set Dev=$$OPEN^vhDEV(,"BlumIdVH.txt","W") Use Dev Kill MemIDNr S PRNr="" Set IDLoop="" For Set IDLoop=$O(^KPR2(IDLoop)) Quit:IDLoop="" Do . Set PRNr=$P(^KPR2(IDLoop),"\") . Quit:$$$PRGet($$$NONAktief) . Quit:'$D(^KPR(PRNr,"J5005")) . Set KortT=$P(^KPR(PRNr,0),"\") . Set IDNr=$P(^KPR(PRNr,2),"\",25) . Set $E(IDNr)=0 . Quit:$D(MemIDNr(IDNr)) . Set MemIDNr(IDNr)="" . Write IDNr,*9,KortT,! Close:Dev'=0 Dev Quit OLBeperkAF S PRNr="" For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Quit:'$$$PRGet($$$NONAktief) . Quit:$$$PRGet($$$Hoofdgroep)'["OL" . Set Grp=$$$PRGet($$$Groep) . Quit:+$E(Grp,5,6)>15 ;15OL15SER . Set KortT=$P(^KPR(PRNr,0),"\") . Write Grp," ",KortT,! . Do $$$PRSet($$$NONAktief,"") Quit SetOLKenmerk(String) Set Q="K",D="\",U=";" Set PRNr=$P(String,"\",1) Set WandDikte=$P(String,"\",2) Set Diepte=$P(String,"\",3) Set Kleur=$P(String,"\",4) Quit:PRNr'?4.7N "NOK" Quit:'$D(^KPR(PRNr)) "NOK" Set sc1=##class(Prod.Kenmerk.DataDefinitie).Set("OL",PRNr,"Diepte",Diepte,";",17) Set sc2=##class(Prod.Kenmerk.DataDefinitie).Set("OL",PRNr,"WandDikte",WandDikte,";",17) Set sc3=##class(Prod.Kenmerk.DataDefinitie).Set("OL",PRNr,"Kleur",Kleur,";",17) Quit "SET"_$$ParseStatus^vhLib(sc1)_$$ParseStatus^vhLib(sc2)_$$ParseStatus^vhLib(sc3) CtrlProd Set Dev=0 Set Dev=$$OPEN^vhDEV(,"Prijsvgl.txt","W") Use Dev S PRNr="" For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set Qty=$$PROD^STAT(PRNr,0,"2007.08 ","2008.08 ",1) . Quit:Qty<1 . Quit:$$$PRGet($$$NONAktief)=1 . Quit:$E($P(^KPR(PRNr,0),"\"),1,2)="OL" . Set Prijs=$$PRIJSGEG^KPRIJS(PRNr,"S") . Set Schaduw=$P(Prijs,"\",6) . Set Prijs=$$PRIJSGEG^KPRIJS(PRNr,"N") . Set Norm=$P(Prijs,"\",6) . Write $$SORTKEY^PRODUKT(PRNr),*9,PRNr,*9,$P(^KPR(PRNr,0),"\"),*9,$TR(Norm,".",","),*9,$TR(Schaduw,".",","),! Close:Dev'=0 Dev Quit CtrlProdDeBetho Set Dev=0 Set Dev=$$OPEN^vhDEV(,"PrijsvglDeBetho.txt","W") Use Dev S PRNr="" For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set Qty=$$PROD^STAT(PRNr,0,"2007.08 ","2008.08 ",1) . ;Quit:Qty<1 . Quit:$$$PRGet($$$NONAktief)=1 . Quit:'$D(^KPR(PRNr,"J5529")) . Set Schaduw=$$$PRGet($$$SchaduwPPL) . Set Norm=$$$PRGet($$$PPLMTL) . Write $$SORTKEY^PRODUKT(PRNr),*9,$P(^KPR(PRNr,2),"\",25),*9,PRNr,*9,$P(^KPR(PRNr,0),"\"),*9,$TR(Norm,".",","),*9,$TR(Schaduw,".",","),! Close:Dev'=0 Dev Quit Ninka Set Dev=0 S PRNr="" For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Quit:$$$PRGet($$$NONAktief)=1 . Quit:'$D(^KPR(PRNr,"J6118")) . Set KortT=$P(^KPR(PRNr,0),"\") . Set Opslag=$S($E(KortT,1,3)="AFV":2.5,1:4) . Set Prijs=$$$PRGet($$$SchaduwPPL) . Set:Prijs="" Prijs=$$$PRGet($$$PPLMTL) . Set SPrijs=+$J(Prijs*(1+(Opslag/100)),0,2) . Write PRNr," ",$P(^KPR(PRNr,0),"\")," ",$$$PRGet($$$PPLMTL),"->",Prijs," + ",Opslag,"% = ",SPrijs,! . Do $$$PRSet($$$SchaduwPPL,SPrijs) Quit Prijs(KlantProdID) d MASTER^cQ5 S Q="K" s D="\",U=";" S QU="PV",QU(1)=17,QU(2)="Paul Verhulst" s DT="26.09.08" Set KLNr=$P(KlantProdID,"\") Set ProdID=$P(KlantProdID,"\",2) q "OK:"_IDNr_";"_SchaduwPPL SchadDB(String) S Q="K" s D="\",U=";" S QU="PV",QU(1)=17,QU(2)="Paul Verhulst" s DT="01.09.08" Set IDNr=$$TRIMN^vhRtn1($P(String,"$")) Set Schaduw=$P(String,"$",2) Set PRNr=$P($G(^KPR2($TR(IDNr,". ","")_" ")),"\") Quit:'SchaduwDB "NO DB"_IDNr_";"_$G(SchaduwDB) Quit:PRNr="" "NOT FOUND:"_IDNr_";"_$G(SchaduwDB) ;d WLIP^vhDBG(15,IDNr_" "_SchaduwDB) Do $$$PRSet($$$SchaduwDBPerc,SchaduwDB) q "OK:"_IDNr_";"_SchaduwDB SchadPPL(String) S Q="K" s D="\",U=";" S QU="PV",QU(1)=17,QU(2)="Paul Verhulst" s DT="01.09.08" Set IDNr=$$TRIMN^vhRtn1($P(String,"$")) Set SchaduwPPL=$P(String,"$",2) Quit:'SchaduwPPL "NO DB"_IDNr_";"_$G(SchaduwPPL) Set PRNr=$P($G(^KPR2($TR(IDNr,".","")_" ")),"\") Quit:PRNr="" "NOT FOUND:"_IDNr_";"_$G(SchaduwPPL) ;d WLIP^vhDBG(15,IDNr_" "_SchaduwPPL) Do $$$PRSet($$$SchaduwPPL,SchaduwPPL) q "OK:"_IDNr_";"_SchaduwPPL Kaderdeur Set MPRNr="" For Set MPRNr=$O(^PRBS("BS",MPRNr)) Quit:MPRNr="" Do . Quit:$P($G(^PRBS("BS",MPRNr)),"\",2)'="KAD" . Quit:'$$PROD^STAT(MPRNr,0,"2007.08 ","2008.07 ",1) . Set BSKey="" . Set Found=0 . For Set BSKey=$O(^PRBS("BS",MPRNr,BSKey)) Quit:BSKey="" Do . . Set BSRec=^PRBS("BS",MPRNr,BSKey) . . Set Oms=$zcvt($P(BSRec,D,13),"U") . . If Oms="VULLING ENERGIETOESLAG" Do . . . Set:$P(BSRec,"\",9)="" Found=1 . . If Oms="VULLING" Do . . . Set:$P(BSRec,"\",9)="" Found=1 . Quit:'Found . Write MPRNr,*9,$P(^KPR(MPRNr,0),"\"),! Quit AutoOrgalux(PRNr) ;Set PRNr=124919 New Status,Result,BSKey,KindHalf,BSDefCod,Type,HFPRNr,Aantal,Lengte,Breedte,HistID,SnijMachineID,VolgNr,Rec,DimRec #define LabelOld "VERPAK" #define OmsVouwenOld "Vouwen" #define OmsInpakOld "Inpakken" #define OmsAfwerkOld "Afwerken" #define OmsLuchtZakOld "Luchtzak" #define OmsToeslagOld "Toeslag oververpakking" #define LabelNew "VERPAK" #define OmsVouwenNew "Vouwen" #define OmsInpakNew "Inpakken" #define OmsAfwerkNew "Afwerken" #define OmsLuchtZakNew "Luchtzak" #define OmsToeslagNew "Toeslag oververpakking" ; Get old values Set Values="" Set BSKey="" For Set BSKey=$O(^HULP(%J,"C",BSKey)) Quit:BSKey="" Do . Set BSRec=^HULP(%J,"C",BSKey) . If ($P(BSRec,D,11)=$$$LabelOld)||($P(BSRec,D,11)=$$$LabelNew) Do . . If ($P(BSRec,D,13)=$$$OmsVouwenOld)||($P(BSRec,D,13)=$$$OmsVouwenNew) Set $P(Values,D,1)=$P(BSRec,D,7) . . If ($P(BSRec,D,13)=$$$OmsInpakOld)||($P(BSRec,D,13)=$$$OmsInpakNew) Set $P(Values,D,2)=$P(BSRec,D,7) . . If ($P(BSRec,D,13)=$$$OmsAfwerkOld)||($P(BSRec,D,13)=$$$OmsAfwerkNew) Set $P(Values,D,3)=$P(BSRec,D,7) . . If ($P(BSRec,D,13)=$$$OmsToeslagOld)||($P(BSRec,D,13)=$$$OmsToeslagNew) Set $P(Values,D,4)=$P(BSRec,D,5) . . If ($P(BSRec,D,13)=$$$OmsLuchtZakOld)||($P(BSRec,D,13)=$$$OmsLuchtZakNew) Set $P(Values,D,5)=$P(BSRec,D,2) Set Verpakking=$zobjclassmethod("BL.Prod.OptiBox.Diverse","OptiDataDisplayName",PRNr) If '$P(Values,D,1)&&'$P(Values,D,1)&&'$P(Values,D,1) Do ; Defaulting . Set $P(Values,D,4)=.05 . If Verpakking["(Volume)" Do ; alleen volume . . Set $P(Values,D,1)=0 . . Set $P(Values,D,2)=5 . . Set $P(Values,D,3)=15 . Else If Verpakking[";" Do ; meerdere verpakkingen . . Set $P(Values,D,1)=15 . . Set $P(Values,D,2)=30 . . Set $P(Values,D,3)=15 . Else If Verpakking["/" Do ; combinatie . . Set $P(Values,D,1)=5 . . Set $P(Values,D,2)=10 . . Set $P(Values,D,3)=5 . Else Do ; single . . Set $P(Values,D,1)=10 . . Set $P(Values,D,2)=20 . . Set $P(Values,D,3)=15 Set sFL(1)=Values Do NIEUW^vhScherm("PRBSOLAUTO",,,,,,1) Quit:'%SC Do AutoOrgaluxSet(PRNr,sFL(1)) Quit AutoOrgaluxSet(PRNr,Values) ; Delete old values Set BSKey="" For Set BSKey=$O(^HULP(%J,"C",BSKey)) Quit:BSKey="" Do . Set BSRec=^HULP(%J,"C",BSKey) . If $P(BSRec,D,1)?4.7N,$E($P(^KPR(PRNr,0),D,1),1,3)="VPO" Kill ^HULP(%J,"C",BSKey) . Else If ($P(BSRec,D,11)=$$$LabelOld)||($P(BSRec,D,11)=$$$LabelNew) Kill ^HULP(%J,"C",BSKey) ; ToeslagMateriaal If $P(Values,D,4) Do . Set Rec=D_1_D_"S" . Set $P(Rec,D,11)=$$$LabelNew . Set $P(Rec,D,13)=$$$OmsToeslagNew . Set $P(Rec,D,5)=$P(Values,D,4) . Set BSKey=$$DEFBSKEY^PRBS("KOST") . Set ^HULP(%J,"C",BSKey)=Rec ; Vouwen If $P(Values,D,1) Do . Set Rec=D_1_D_"T" . Set $P(Rec,D,11)=$$$LabelNew . Set $P(Rec,D,13)=$$$OmsVouwenNew . Set $P(Rec,D,7)=$P(Values,D,1) . Set $P(Rec,D,8)=$P(Values,D,1) . Set $P(Rec,D,9)="OLVERPAK" . Set BSKey=$$DEFBSKEY^PRBS("TIJD") . Set ^HULP(%J,"C",BSKey)=Rec ; Inpak If $P(Values,D,2) Do . Set Rec=D_1_D_"T" . Set $P(Rec,D,11)=$$$LabelNew . Set $P(Rec,D,13)=$$$OmsInpakNew . Set $P(Rec,D,7)=$P(Values,D,2) . Set $P(Rec,D,8)=$P(Values,D,2) . Set $P(Rec,D,9)="OLVERPAK" . Set BSKey=$$DEFBSKEY^PRBS("TIJD") . Set ^HULP(%J,"C",BSKey)=Rec ; Afwerken If $P(Values,D,3) Do . Set Rec=D_1_D_"T" . Set $P(Rec,D,11)=$$$LabelNew . Set $P(Rec,D,13)=$$$OmsAfwerkNew . Set $P(Rec,D,7)=$P(Values,D,3) . Set $P(Rec,D,8)=$P(Values,D,3) . Set $P(Rec,D,9)="OLVERPAK" . Set BSKey=$$DEFBSKEY^PRBS("TIJD") . Set ^HULP(%J,"C",BSKey)=Rec ; ToeslagMateriaal If $P(Values,D,5) Do . Set Rec=D_1_D_"S"_D_"0.25" . Set $P(Rec,D,11)=$$$LabelNew . Set $P(Rec,D,13)=$$$OmsLuchtZakNew . Set $P(Rec,D,1)=$P(Values,D,5) . Set BSKey=$$DEFBSKEY^PRBS("KOST") . Set ^HULP(%J,"C",BSKey)=Rec ;zw ^HULP(%J,"C") Set sMod=1 Do SORT^PRBS ;zw ^HULP(%J,"S") Do UPDATE^PRBS Quit