#include vhLib.Macro #include Prod.Product #include BL.Derde.KlantSpecifiek #include BL.Derde.LevSpecifiek q MESStockage ;Resource stockagegrp s ^RES("PRODUKT","PI","STOCKAGEGRP","D","OMC")="5`Objt MES component" s ^RES("PRODUKT","PI","STOCKAGEGRP","D","OMS")="6`Objt MES samengesteld" ; Aanpassen stockagegroep in Admin Set PRNr=80000 Write $H,! For Set PRNr=$O(^KPR(PRNr)) Quit:(PRNr>2658415) Do ;Geen relevante generische producten meer . Set KT=$$$PRGet($$$KortTekst) . Set LEVNr=$$$PRGet($$$LeveranciersNr) . ;If (";VF2;"[(";"_$E(KT,1,3)_";")) && (LEVNr=7631) Do ;Europal fanfold . . Write PRNr,*9,$$$PRGet($$$KortTekst)," OMC",$$$PRGet($$$ProductGroepWMS),! . . D $$$PRSet($$$ProductGroepWMS,"OMC") . ;If (";VPK;"[(";"_$E(KT,1,3)_";")) && (KT'["TAX") && (KT'["SYF") && (LEVNr=6317) Do ;Lefevere . . Write PRNr,*9,$$$PRGet($$$KortTekst)," OMC",$$$PRGet($$$ProductGroepWMS),! . . D $$$PRSet($$$ProductGroepWMS,"OMC") . ;If (";SLE.;SLME;SME.;SPE.;"[(";"_$E(KT,1,4)_";")) && (LEVNr=7802) Do ;spaanplaat egger . . Write PRNr,*9,$$$PRGet($$$KortTekst)," OMC",$$$PRGet($$$ProductGroepWMS),! . . D $$$PRSet($$$ProductGroepWMS,"OMC") . If ("GEN.HAL"=$E(KT,1,7)) && (";TBX;LBX;MVX;SST;"[(";"_$P($$GENTYP^HAD(PRNr,,1),"\")_";")) Do . . Write PRNr,*9,$$$PRGet($$$KortTekst),*9,$P($$GENTYP^HAD(PRNr,,1),"\")," OMS",$$$PRGet($$$ProductGroepWMS),! . . D $$$PRSet($$$ProductGroepWMS,"OMS") Write $H,!,PRNr q HFL Read "Klant:",HflKlant Set HflKlant=$$TrimBeginOfText^vhLib($$TrimEndOfText^vhLib(HflKlant)) Do NL(HflKlant) Do BE(HflKlant) Quit NL(Klant) quit:Klant'?1"NL".E do ##class(zTryout.JWI.Haefele.UrlGenerator).%New().GenereerEen(12,"8SH88xGWpyaTSiSba3ptxQ--",Klant) BE(Klant) quit:Klant'?1"BE".E do ##class(zTryout.JWI.Haefele.UrlGenerator).%New().GenereerEen(7,"k0uGXfFcFjZZFa7InVf7aw--",Klant) Quit CORRVOORRAAD ;Correctie voorraad indien verschil KPR <-> PRSTOCK Set ObjtFase=##class(OBJTimpl.CheckObjectiveFase).%New() set Device=$$OPEN^vhDEV(,"Voorraad zonder orders.txt","W","T") Use Device Write "PRNr Korttekst Voorraad Direct=1",! Set PRNr=0 For Set PRNr=$O(^PRSTOCK("D",PRNr)) Quit:PRNr="" Do . Quit:'$D(^KPR(PRNr)) . Quit:(+$P(^PRSTOCK("D",PRNr),"\"))=0 . Quit:ObjtFase.VoorraadSync(PRNr,"VHBE")=1 . Quit:$D(^ORD("IP",PRNr))>0 . Set MPRNr=0 . For Set MPRNr=$O(^PRBS("IP",PRNr,MPRNr)) Quit:MPRNr="" Quit:$D(^ORD("IP",MPRNr))>0 . Quit:MPRNr'="" . Write PRNr,*9,$$$PRGet($$$KortTekst),*9,$P(^PRSTOCK("D",PRNr),"\"),*9,MPRNr="",! D CLOSE^vhDEV(Device) q HISTTAB(Jaar) Set Jaar=$G(Jaar,2022) Set Device=$$OPEN^vhDEV(,"TAB productie.txt","W","T") Use Device Write "ORDNr KLNr PRNr Identnummer Korttekst Pallet Aantal Tijdstip",! Set Vanaf=$zdh(Jaar_"0101",8) Set Tot=$zdh(Jaar_"1231",8) Set Cnt=0 Set PRNr=4137846 For Set PRNr=$O(^PRHIST(PRNr)) Quit:PRNr="" Do ;Quit:PRNr=532738 . Set Key="" . Kill Cache . Set ProdGrp=$$PRODGRP^PRODUKT(PRNr) . Quit:ProdGrp'="TA.B" . For Set Key=$O(^PRHIST(PRNr,Key)) Quit:Key="" Do .. Set Rec=^PRHIST(PRNr,Key) .. Quit:+$P(Rec,"\")'=+$H .. Quit:$P(Rec,"\",5)'="M" .. Quit:$P(Rec,"\",4)'?1(1"I") .. Set Qty=$P(Rec,"\",2) .. Set Ref=$P(Rec,"\",7) .. Set KLNr=$P(Rec,"\",6) .. Set Datum=+$P(Rec,"\") .. Set ORDNr=$O(^ORD("IP",PRNr,"")) .. Set KLNr="" .. Set:ORDNr KLNr=$P($G(^KO1(ORDNr,"F")),"\",1) .. Set Loc="" Set Cnt=0 .. For Set Loc=$O(^PRHIST(PRNr,Key,Loc)) Quit:Loc="" Do ... Set Cnt=Cnt+1 ... Write ORDNr,*9,KLNr,*9,PRNr,*9,$$$PRGet($$$IdentNummer),*9,$$$PRGet($$$KortTekst),*9,$P(^PRHIST(PRNr,Key,Loc),"\",1),*9,$P(^PRHIST(PRNr,Key,Loc),"\",2),*9,$zdt($P(^PRHIST(PRNr,Key,Loc),"\",3),8),! .. If Cnt=0 Do ... Write PRNr,*9,$$$PRGet($$$IdentNummer),*9,$$$PRGet($$$KortTekst) Do CLOSE^vhDEV(Device) Write Cnt Quit HISTKarton ;Set Jaar=$G(Jaar,$$EXTDATE^vhLib.DataTypes($H,"J4")) Set Vanaf=$$CALCDATE^vhLib.DataTypes($H,"BJ","FD",-4) Set Tot=$$CALCDATE^vhLib.DataTypes($H,"BJ","LD",-4) Write $zd(Vanaf,8)," - ",$zd(Tot,8),! Set Device=$$OPEN^vhDEV(,"Karton hist "_$$EXTDATE^vhLib.DataTypes($P(Tot,","),"BJ")_".txt","W","T") Use Device Write "PRNr Identnummer Korttekst Actie Magazijn Aantal Waarde Tijdstip" Write *9,"LevNr",*9,"LevNm",! Set Cnt=0 Set PRNr="" For Set PRNr=$O(^PRHIST(PRNr)) Quit:PRNr="" Do:($D(^KPR(PRNr,"J6317"))||$D(^KPR(PRNr,"J8910"))||$D(^KPR(PRNr,"J7631"))||$D(^KPR(PRNr,"J7012"))) . Set Key="" . Set LevNr=$$$PRGet($$$LeveranciersNr) . Set LevNm=$P(^KLE(^KL1(LevNr),0),"\",2) . For Set Key=$O(^PRHIST(PRNr,Key)) Quit:Key="" Do .. Set Rec=^PRHIST(PRNr,Key) .. Set Tijdstip=$P(Rec,"\") .. Quit:+TijdstipTot .. Set Magazijn=$P(Rec,"\",5) .. Quit:Magazijn'="W" .. Set Qty=$P(Rec,"\",2) .. Set Ref=$P(Rec,"\",7) .. Set DerdeNr=$P(Rec,"\",6) .. Set Actie=$P(Rec,"\",4) .. Set AxConfigId=$P(Rec,"\",20) .. Set AxInventTransId=$P(Rec,"\",19) .. Set AxItemId=$P(Rec,"\",21) .. Set FSCClaim=$P(Rec,"\",17) .. Set FaktRcpNr=$P(Rec,"\",10) .. Set Waarde=$P(Rec,"\",12) .. Set MoederFSCClaim=$P(Rec,"\",18) .. Set MoederPRNr=$P(Rec,"\",15) .. Set Omschrijving=$P(Rec,"\",11) .. Set UitToeLevDatum=$P(Rec,"\",9) .. Set UitToeLevNr=$P(Rec,"\",7) .. Write PRNr,*9,$$$PRGet($$$IdentNummer),*9,$$$PRGet($$$KortTekst) .. Write *9,Actie,*9,Magazijn,*9,$$$ExcelNum(Qty),*9,$$$ExcelNum(Waarde) .. Write *9,$$$ExcelDat($P(Tijdstip,",")),*9,LevNr,*9,LevNm,*9,$$EXTDATE^vhLib.DataTypes($P(Tijdstip,","),"BJ") .. Write ! Do CLOSE^vhDEV(Device) Write Cnt Quit HISTEXPORT(Jaar) Set Jaar=$G(Jaar,$$EXTDATE^vhLib.DataTypes($H,"J4")) Set Vanaf=$$CALCDATE^vhDTyp($H,"BJ","FD",-4) Set Tot=$$CALCDATE^vhDTyp($H,"BJ","LD",-1) Write $zdh(Vanaf,8)," - ",$zdh(Tot,8),! Set Device=$$OPEN^vhDEV(,"Karton hist.txt","W","T") Use Device Write "DerdeNr PRNr Identnummer Korttekst Actie Magazijn Aantal Tijdstip" Write *9,"AxConfigId",*9,"AxInventTransId",*9,"AxItemId",*9,"FSCClaim",*9,"FaktRcpNr",*9,"MoederFSCClaim" Write *9,"MoederPRNr",*9,"MoederKorttekst",*9,"Omschrijving",*9,"UitToeLevDatum",*9,"UitToeLevNr",! Set Cnt=0 Set PRNr="" For Set PRNr=$O(^PRHIST(PRNr)) Quit:PRNr="" Do:($D(^KPR(PRNr,"J7631"))||$D(^KPR(PRNr,"J7012"))) . Set Key="" . For Set Key=$O(^PRHIST(PRNr,Key)) Quit:Key="" Do .. Set Rec=^PRHIST(PRNr,Key) .. Set Tijdstip=$P(Rec,"\") .. Quit:+TijdstipTot .. Set Magazijn=$P(Rec,"\",5) .. Quit:Magazijn="W" .. Set Qty=$P(Rec,"\",2) .. Set Ref=$P(Rec,"\",7) .. Set DerdeNr=$P(Rec,"\",6) .. Set Actie=$P(Rec,"\",4) .. Set AxConfigId=$P(Rec,"\",20) .. Set AxInventTransId=$P(Rec,"\",19) .. Set AxItemId=$P(Rec,"\",21) .. Set FSCClaim=$P(Rec,"\",17) .. Set FaktRcpNr=$P(Rec,"\",10) .. Set MoederFSCClaim=$P(Rec,"\",18) .. Set MoederPRNr=$P(Rec,"\",15) .. Set Omschrijving=$P(Rec,"\",11) .. Set UitToeLevDatum=$P(Rec,"\",9) .. Set UitToeLevNr=$P(Rec,"\",7) .. Write DerdeNr,*9,PRNr,*9,$$$PRGet($$$IdentNummer),*9,$$$PRGet($$$KortTekst) .. Write *9,Actie,*9,Magazijn,*9,$$$ExcelNum(Qty) .. Write *9,$zdt(Tijdstip) .. Write *9,AxConfigId,*9,AxInventTransId,*9,AxItemId,*9,FSCClaim,*9,FaktRcpNr,*9,MoederFSCClaim .. Write *9,MoederPRNr,*9,$S(MoederPRNr?4.10N&&($D(^KPR(MoederPRNr,0))):$$$ProductGet(MoederPRNr,$$$KortTekst),1:"") .. Write *9,Omschrijving,*9,$$$ExcelDat(UitToeLevDatum),*9,UitToeLevNr .. Write ! Do CLOSE^vhDEV(Device) Write Cnt Quit HISTCOMP(Jaar) Set Jaar=$G(Jaar,2022) Set Device=$$OPEN^vhDEV(,"Statistiek componentverbruik"_Jaar_".txt","W","T") Use Device Write "PRNr Identnummer Korttekst MoederProdGrp SubMag InVoorraad LocCode #Lijnen #Stuks Datum",! Set Vanaf=$zdh(Jaar_"0101",8) Set Tot=$zdh(Jaar_"1231",8) Set Cnt=0 Set PRNr="" ;532737 For Set PRNr=$O(^PRHIST(PRNr)) Quit:PRNr="" Do ;Quit:PRNr=532738 . Set Key="" . Kill Cache . Set ProdGrp=$$PRODGRP^PRODUKT(PRNr) . Quit:ProdGrp'?1(1"REST",1"BLUM") . For Set Key=$O(^PRHIST(PRNr,Key)) Quit:Key="" Do .. Set Rec=^PRHIST(PRNr,Key) .. Set MPRNr=$P(Rec,"\",15) .. Quit:'MPRNr .. Quit:'$D(^KPR(MPRNr)) .. Quit:($$$ProductGet(MPRNr,$$$LeveranciersNr)'=$$$LevHalux) .. Quit:+$P(Rec,"\")PraStock) w InStock ;If InStock { ; Product in voorraad, controle op gemiddelde weekverkoop ; Set R=^KPR(PRNr,1),GemWVK=$P(R,D,23) ; Set GemWVK=GemWVK+$P(GemWVK,"#",2) ; Set:GemWVK InStock=(PraStock>(GemWVK+Aantal)) ;} Quit $G(InStock,1) RCP Set PRNr="" Set Cnt=0 Set RCPNr="" For Set RCPNr=$O(^RCP("D",RCPNr)) Quit:RCPNr="" Do . . Set Rec=^RCP("D",RCPNr) . Quit:$P(Rec,"\",20)="I" . Set $P(^RCP("D",RCPNr),"\",20)="I" . ;Do RCPNR^EWTOE(RCPNr) . ;r k . Set Rec=^RCP("D",RCPNr) . Write RCPNr," ",$P(Rec,"\",20),! q VerzendW Set PRNr="" Set Cnt=0 Set VerzendW="" Set Device=$$OPEN^vhDEV(,"Verzendw.txt","W","T") USe Device Write "VerzendW DueOut Beloofd Productie P1 P2 P3",! For Set VerzendW=$O(^RES("KLANT","PI","VERZENDWIJZE","D",VerzendW)) Quit:VerzendW="" Do . Set Rec=^RES("KLANT","PI","VERZENDWIJZE","D",VerzendW) . Write VerzendW,*9,$$$ExcelTime($p(Rec,"`",4)),*9,$$$ExcelTime($p(Rec,"`",13)),*9,$$$ExcelTime($p(Rec,"`",16)),*9,$TR(Rec,"`",$c(9)),! Do CLOSE^vhDEV(Device) q SubMag Set PRNr="" Set Cnt=0 Kill Cache Set Device=$$OPEN^vhDEV(,"SubMag Verzendwijze.txt","W","T") Use Device Write "PRNr IdentNr Korttekst SubMag Oms Verzendwijze #St 100d #L 100d HerbestelAfrCode HerbestelAfrAantal HerbestelSurplus",! For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do ;Quit:Cnt=100 . Set Cnt=Cnt+1 . Set BSKey="" . ;Set ProdGrp=$$PRODGRP^PRODUKT(PRNr) . Set SubMag=$$$PRGet($$$WerkvloerSubMag) . Quit:SubMag="" . Do HISTO^STAT(PRNr,$H-100,$H,"T","M",.Cumul,.Aantal) . Quit:'Cumul . Set VerzendWijze=$P($G(^RES("PRODUKT","PI","HFWVSUBMAG","D",SubMag)),"`",4) ; Vertaling naar een code voor HALUX TRANSFER verzendwijze . Set SubMagOms=$P($G(^RES("PRODUKT","PI","HFWVSUBMAG","D",SubMag)),"`",2) ; Vertaling naar een code voor HALUX TRANSFER verzendwijze . Set VerzendWijze=$S(VerzendWijze'="":"TH"_VerzendWijze,1:"HLX") . Set WvAfrCode=$$$PRGet($$$WerkvloerHerbestelAfronding) . Set WvAfrAantal=$$GETVPK^MRP(PRNr,WvAfrCode,1) . Write PRNr,*9,$$$PRGet($$$IdentNummer),*9,$$$PRGet($$$KortTekst),*9,SubMag,*9,SubMagOms,*9,VerzendWijze,*9,-Cumul,*9,Aantal,*9,WvAfrCode,*9,WvAfrAantal,*9,$$$PRGet($$$WerkvloerHerbestelAantal),! Do CLOSE^vhDEV(Device) Quit KostenplaatsGebruik Set PRNr="" Set Cnt=0 Kill Cache ;Set Device=$$OPEN^vhDEV(,"KostenplaatsGebruik Detail.txt","W","T") ;Use Device For Set PRNr=$O(^KSTPR(PRNr)) Quit:PRNr="" Do ;Quit:Cnt=100 . Quit:'$d(^KPR(PRNr)) . Quit:'$D(^PRBS("BS",PRNr)) . Set Aantal=$$PROD^STAT(PRNr,0,"2021.08 ","2022.02 ",1) . Quit:Aantal<1 . Set Cnt=Cnt+1 . Set BSKey="" . For Set BSKey=$o(^PRBS("BS",PRNr,BSKey)) Quit:BSKey="" Do . . Set BSRec=^PRBS("BS",PRNr,BSKey) . . Quit:$P(BSRec,"\",3)'="T" . . Set AantalBS=$P(BSRec,"\",2) . . Set KostenPl=$P(BSRec,"\",9) . . Quit:KostenPl="" . . Set Tijd=$P(BSRec,"\",7) . . Set Tijd2=$P(BSRec,"\",8) . . Set ProdGrp=$$PRODGRP^PRODUKT(PRNr) . . Set lb=$G(Cache(ProdGrp_";"_KostenPl)) . . Set $LI(lb,1)=$LG(lb,1)+1 . . Set $LI(lb,2)=$LG(lb,2)+(AantalBS*Aantal*Tijd) . . Set $LI(lb,3)=$LG(lb,3)+(AantalBS*Aantal*Tijd2) . . Set Cache(ProdGrp_";"_KostenPl)=lb . . ;Write PRNr,*9,$$PRODGRP^PRODUKT(PRNr),*9, KostenPl,*9,Aantal,*9,$$$ExcelNum(AantalBS*Aantal*Tijd),! ;Do CLOSE^vhDEV(Device) Set Device=$$OPEN^vhDEV(,"KostenplaatsGebruik.txt","W","T") Use Device Write "ProdGrp KostenPl #Keer #Tijd",! Set KostenPl="" For Set KostenPl=$o(Cache(KostenPl)) Quit:KostenPl="" Do . Set lb=$G(Cache(KostenPl)) . Write $P(KostenPl,";"),*9,$P(KostenPl,";",2),*9,$$$ExcelNum($LI(lb,1)),*9,$$$ExcelNum($LI(lb,2)),! ;,*9,$LI(lb,3),! Do CLOSE^vhDEV(Device) Quit ControleORDW Set Device=0 ;$$OPEN^vhDEV(,"ORDW HLX.txt","W","T") Use Device Write "KLNr CONSNr VerzendW Datum Mag",! Set CONSNr=0 For Set CONSNr=$O(^ORDW("D",CONSNr)) Quit:CONSNr="" Do .Set Rec=^ORDW("D",CONSNr) .Quit:$P(Rec,"\",20)'="" .Set VerzendW=$P(Rec,"\",2) .Quit:VerzendW'?1"OD".E .Set Datum=$P(Rec,"\",3) .Quit:$P(Datum,",")'=66261 .W $P(Rec,"\",1),*9,CONSNr,*9,VerzendW,*9,$$$ExcelDat(Datum),*9,Rec,! .Set $P(Datum,",")=66253 .Set $p(Rec,"\",3)=Datum .W *9,Rec,! . r K .Set ^ORDW("D",CONSNr)=Rec Do CLOSE^vhDEV(Device) Quit VHLOGKL Set Device=$$OPEN^vhDEV(,"VHLOG Voorraad klein"_$zd($H,8)_".txt","W","T") Use Device Write "Klassificatie Leverancier IdentNr BlumID Korttekst ABC StockNietStock Opslagzone Grootverpakking Kleinverpakking PalletAantal Gewicht Gemiddeldevoorraad Voorraad" Write " #L Out #L TransferNP #L TransferP #L In #L Out GVP #L Out KVP #L Out Pal sep" Write " #StuksG #StuksK #StuksTNP #StuksTP sep" Write " SubMag Onderdeel Herbestelafr",! Set PRNr=0 Set cnt=0 Set blOBJT=##class(OBJTimpl.PM.OBJTIdentLookupService).%New() Set TransProd=##class(AX.Uitgaand.MAG.impl.ExportProductie).%New() For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do ;quit:cnt=100 . Quit:$$$PRGet($$$LeveranciersNr)=$$$LevHalux&&('$$$PRGet($$$StockType)) . Quit:$$$PRGet($$$LinkType)="S" ; stock overkinderen . Quit:$$$PRGet($$$LinkType)["HH" ; Halux . ;Quit:$$$PRGet($$$LeveranciersNr)'=5005 . Quit:$D(^PRBS("BS",PRNr))&&('$$$PRGet($$$StockType)) ; heeft kinderen of componenten . Write $$$PRGet($$$Groep),*9,$$$PRGet($$$LeveranciersNr),*9,blOBJT.GeefOBJTIdentNr($$$PRGet($$$IdentNummer)),*9,$$GetBlumID^BLPROD(PRNr),*9,$$$PRGet($$$KortTekst),*9,$P($$$PRGet($$$ABCKlassificatie),"#") . Write *9,$S('$$$PRGet($$$StockType):"Niet",1:"Stock"),*9,$$$PRGet($$$OpslagZone),*9,$$$PRGet($$$GrootVerpakking),*9,$$$PRGet($$$KleinVerpakking),*9,$$$PRGet($$$PalletQty),*9,$$$ExcelNum($$$PRGet($$$Gewicht)) . Write *9,$P($$$PRGet($$$Rotatie),"#",2),*9,$$$PRGet($$$Voorraad) . Do HISTVHLOGKL(PRNr,.AantalU,.AantalI,.AantalUK,.AantalUG,.StuksK,.StuksG,.AantalP,.AantalTNP,.AantalTP,.StuksTNP,.StuksTP) . Write *9,$$$ExcelNum(AantalU),*9,$$$ExcelNum(AantalTNP),*9,$$$ExcelNum(AantalTP),*9,$$$ExcelNum(AantalI),*9,$$$ExcelNum(AantalUG),*9,$$$ExcelNum(AantalUK),*9,$$$ExcelNum(AantalP),*9,"S" . Write *9,$$$ExcelNum(StuksG),*9,$$$ExcelNum(StuksK),*9,$$$ExcelNum(StuksTNP),*9,$$$ExcelNum(StuksTP),*9,"S" . Write *9,$$$PRGet($$$WerkvloerSubMag),*9,$S($$$PRGet($$$WerkvloerSubMag)'="":$P(TransProd.ConversieSubMag(PRNr),"`"),1:"") . Write *9,$$$PRGet($$$WerkvloerHerbestelAfronding),*9,*9,$$$ExcelNum(AantalTP),*9,$$$ExcelNum(StuksTP),*9,$$$PRGet($$$GrootVerpakking) . Write *9,$$$ExcelNum(Lijn1),*9,$$$ExcelNum(Lijn10),*9,$$$ExcelNum(Lijn25),*9,$$$ExcelNum(Lijn50),*9,$$$ExcelNum(Lijn100) . ;Do:($$$PRGet($$$LeveranciersNr)=5005)&&(AantalT>10) HISTINCOMING(PRNr) . Write ! . set cnt=cnt+1 Do CLOSE^vhDEV(Device) Quit HISTVHLOGKL(PRNr,AantalU,AantalI,AantalUK,AantalUG,StuksK,StuksG,AantalP,AantalTNP,AantalTP,StuksTNP,StuksTP) ;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) Set Key="" Set Pal=$$$PRGet($$$PalletQty) Set GVP=$$$PRGet($$$GrootVerpakking) Set GVP=$$$PRGet($$$GrootVerpakking) Set:'GVP GVP=$$$PRGet($$$NormaleVerpakking) Set:'GVP GVP=$$$PRGet($$$KleinVerpakking) Set:'GVP GVP=1 Set (AantalI,AantalU,AantalUK,AantalUG,StuksK,StuksG,AantalP,AantalTNP,AantalTP,StuksTP,StuksTNP)="" Set (Lijn1,Lijn10,Lijn25,Lijn50,Lijn100)=0 For Set Key=$O(^PRHIST(PRNr,Key)) Quit:Key="" Do . Set Rec=^PRHIST(PRNr,Key) . Quit:+$P(Rec,"\")<($H-180) . Quit:$P(Rec,"\",5)'="M" . Set Qty=-$P(Rec,"\",2) . Set QtyP=$S((Pal>0):Qty\Pal*Pal,1:0) . Set QtyNP=Qty-QtyP . Set:$P(Rec,"\",4)="I" AantalI=AantalI+1 . Set:$P(Rec,"\",4)="T" AantalTNP=AantalTNP+$S(QtyNP>0:1,1:0),AantalTP=AantalTP+$S(QtyP>0:QtyP/Pal,1:0),StuksTNP=StuksTNP+QtyNP,StuksTP=StuksTP+QtyP . Set:$P(Rec,"\",4)="U" AantalU=AantalU+1 . Set:($P(Rec,"\",4)="U")&&((QtyGVP)&&(GVP'=1) AantalUG=AantalUG+1,StuksG=StuksG+Qty-$S((Pal>0):Qty\Pal*Pal,1:0) ; zonder volle paletten . Set:Pal>0&&($P(Rec,"\",4)="U") AantalP=AantalP+(Qty\Pal) . IF $P(Rec,"\",4)'?1(1"U",1"T") . Else If Qty>100 Set Lijn100=Lijn100+1 . Else If Qty>50 Set Lijn50=Lijn50+1 . Else If Qty>25 Set Lijn25=Lijn25+1 . Else If Qty>10 Set Lijn10=Lijn10+1 . Else Set Lijn1=Lijn1+1 Quit VHLOG Set Device=$$OPEN^vhDEV(,"VHLOG Voorraad"_$zd($H,8)_".txt","W","T") Use Device Write "Klassificatie Leverancier IdentNr BlumID Korttekst ABC StockNietStock Opslagzone Grootverpakking Kleinverpakking PalletAantal Gewicht Gemiddeldevoorraad Voorraad" Write " #L Out #L TransferNP #L TransferP #L In #L Out GVP #L Out KVP #L Out Pal sep" Write " #StuksG #StuksK #StuksTNP #StuksTP sep" Write " SubMag Onderdeel Herbestelafr",! Set PRNr=0 Set cnt=0 Set blOBJT=##class(OBJTimpl.PM.OBJTIdentLookupService).%New() Set TransProd=##class(AX.Uitgaand.MAG.impl.ExportProductie).%New() For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do ;quit:cnt=100 . Quit:$$$PRGet($$$LeveranciersNr)=$$$LevHalux&&('$$$PRGet($$$StockType)) . Quit:$$$PRGet($$$LinkType)="S" ; stock overkinderen . Quit:$$$PRGet($$$LinkType)["HH" ; Halux . ;Quit:$$$PRGet($$$LeveranciersNr)'=5005 . Quit:$D(^PRBS("BS",PRNr))&&('$$$PRGet($$$StockType)) ; heeft kinderen of componenten . Write $$$PRGet($$$Groep),*9,$$$PRGet($$$LeveranciersNr),*9,blOBJT.GeefOBJTIdentNr($$$PRGet($$$IdentNummer)),*9,$$GetBlumID^BLPROD(PRNr),*9,$$$PRGet($$$KortTekst),*9,$P($$$PRGet($$$ABCKlassificatie),"#") . Write *9,$S('$$$PRGet($$$StockType):"Niet",1:"Stock"),*9,$$$PRGet($$$OpslagZone),*9,$$$PRGet($$$GrootVerpakking),*9,$$$PRGet($$$KleinVerpakking),*9,$$$PRGet($$$PalletQty),*9,$$$ExcelNum($$$PRGet($$$Gewicht)) . Write *9,$P($$$PRGet($$$Rotatie),"#",2),*9,$$$PRGet($$$Voorraad) . Do HISTVHLOG(PRNr,.AantalU,.AantalI,.AantalUK,.AantalUG,.StuksK,.StuksG,.AantalP,.AantalTNP,.AantalTP,.StuksTNP,.StuksTP) . Write *9,$$$ExcelNum(AantalU),*9,$$$ExcelNum(AantalTNP),*9,$$$ExcelNum(AantalTP),*9,$$$ExcelNum(AantalI),*9,$$$ExcelNum(AantalUG),*9,$$$ExcelNum(AantalUK),*9,$$$ExcelNum(AantalP),*9,"S" . Write *9,$$$ExcelNum(StuksG),*9,$$$ExcelNum(StuksK),*9,$$$ExcelNum(StuksTNP),*9,$$$ExcelNum(StuksTP),*9,"S" . Write *9,$$$PRGet($$$WerkvloerSubMag),*9,$S($$$PRGet($$$WerkvloerSubMag)'="":$P(TransProd.ConversieSubMag(PRNr),"`"),1:"") .WRite *9,$$$PRGet($$$WerkvloerHerbestelAfronding),*9,*9,$$$ExcelNum(AantalTP),*9,$$$ExcelNum(StuksTP) . ;Do:($$$PRGet($$$LeveranciersNr)=5005)&&(AantalT>10) HISTINCOMING(PRNr) . Write ! . set cnt=cnt+1 Do CLOSE^vhDEV(Device) Quit HISTVHLOG(PRNr,AantalU,AantalI,AantalUK,AantalUG,StuksK,StuksG,AantalP,AantalTNP,AantalTP,StuksTNP,StuksTP) ;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) Set Key="" Set Pal=$$$PRGet($$$PalletQty) Set GVP=$$$PRGet($$$GrootVerpakking) Set GVP=$$$PRGet($$$GrootVerpakking) Set:'GVP GVP=$$$PRGet($$$NormaleVerpakking) Set:'GVP GVP=$$$PRGet($$$KleinVerpakking) Set:'GVP GVP=1 Set (AantalI,AantalU,AantalUK,AantalUG,StuksK,StuksG,AantalP,AantalTNP,AantalTP,StuksTP,StuksTNP)="" For Set Key=$O(^PRHIST(PRNr,Key)) Quit:Key="" Do . Set Rec=^PRHIST(PRNr,Key) . Quit:+$P(Rec,"\")<($H-180) . Quit:$P(Rec,"\",5)'="M" . Set Qty=-$P(Rec,"\",2) . Set QtyP=$S((Pal>0):Qty\Pal*Pal,1:0) . Set QtyNP=Qty-QtyP . Set:$P(Rec,"\",4)="I" AantalI=AantalI+1 . Set:$P(Rec,"\",4)="T" AantalTNP=AantalTNP+$S(QtyNP>0:1,1:0),AantalTP=AantalTP+$S(QtyP>0:QtyP/Pal,1:0),StuksTNP=StuksTNP+QtyNP,StuksTP=StuksTP+QtyP . Set:$P(Rec,"\",4)="U" AantalU=AantalU+1 . Set:($P(Rec,"\",4)="U")&&((Qty#GVP)||(GVP=1)) AantalUK=AantalUK+1, StuksK=StuksK+$S(GVP=1:Qty,1:Qty#GVP) . Set:($P(Rec,"\",4)="U")&&(Qty>GVP)&&(GVP'=1) AantalUG=AantalUG+1,StuksG=StuksG+Qty-(Qty#GVP)-$S((Pal>0):Qty\Pal*Pal,1:0) ; zonder volle paletten . Set:Pal>0&&($P(Rec,"\",4)="U") AantalP=AantalP+(Qty\Pal) Quit HISTJAAR For Jaar=2017:1:2022 Do . Do HISTOUT(Jaar) HISTOUT(Jaar) Set Device=$$OPEN^vhDEV(,"Statistiek Picklijnen"_Jaar_".txt","W","T") Use Device Write "PRNr Identnummer Korttekst KLNr #Lijnen #Stuks Datum Type ProdGrp",! Set Vanaf=$zdh(Jaar_"0101",8) Set Tot=$zdh(Jaar_"1231",8) Set Cnt=0 Set PRNr="" ;532737 For Set PRNr=$O(^PRHIST(PRNr)) Quit:PRNr="" Do ;Quit:PRNr=532738 . Set Key="" . Kill Cache . Set ProdGrp=$$PRODGRP^PRODUKT(PRNr) . For Set Key=$O(^PRHIST(PRNr,Key)) Quit:Key="" Do .. Set Rec=^PRHIST(PRNr,Key) .. ;Set MPRNr=$P(Rec,"\",15) .. ;Quit:MPRNr&&($$$ProductGet(MPRNr,$$$LeveranciersNr)=$$$LevHalux) .. Quit:+$P(Rec,"\")1 For Set Key=$O(^PRHIST(PRNr,Key)) Quit:Key="" Do . Set Rec=^PRHIST(PRNr,Key) . Quit:+$P(Rec,"\")<($H-300) . Quit:$P(Rec,"\",5)'="M" . Quit:$P(Rec,"\",4)'="I" . Set Qty=$P(Rec,"\",2) . Set Ref=$P(Rec,"\",11) . Set:$L(Ref) Temp(Ref)=$G(Temp(Ref))+Qty Set Ref="" ;w !,PRNr zw Temp For Set Ref=$O(Temp(Ref)) Quit:Ref="" Do . Set Qty=Temp(Ref) . If PaletQty>Qty Write *9,$$$ExcelNum(Qty/PaletQty) . If PaletQty'>Qty Write *9,$$$ExcelNum($J(Qty/PaletQty,0,0)) Quit KPImportSchaduw k Cache For Read KPenKost Quit:KPenKost="" Do . Set KP=$P(KPenKost,$c(9),1) . Set Kost=+$tr($P(KPenKost,$c(9),2),", ",".") . Set oKostPlaats=##class(Prod.GAMeta.BT.KostPlaats).%OpenId(KP) . If $isObject(oKostPlaats) Do . . w KP," ",Kost,! . . Set oKostPlaats.BasisKostSchaduw=Kost . . ;Do DumpObject^%apiOBJ(oKostPlaats) . . set sc= oKostPlaats.%Save() w sc Quit KP k Cache Set MPRNr=0 For Set MPRNr=$O(^KSTPR(MPRNr)) Quit:MPRNr="" Do . Quit:'$D(^PRBS("BS",MPRNr)) . Set Rec=$$PROD^STAT(MPRNr,0,"2020.05 ","2021.04 ","1") . Set Qty=$P(Rec,"\",1) . Quit:+Qty<1 . Set BSKey="" . For Set BSKey=$O(^PRBS("BS",MPRNr,BSKey)) Quit:BSKey="" Do . . Set BSRec=^PRBS("BS",MPRNr,BSKey) . . Quit:$P(BSRec,"\",3)'="T" ;w ";" . . Quit:$P(BSRec,"\",9)="" ; w "+" . . Set $LI(Cache($P(BSRec,"\",9)),1)=$LG($G(Cache($P(BSRec,"\",9))),1)+1 . . Set $LI(Cache($P(BSRec,"\",9)),2)=$LG($G(Cache($P(BSRec,"\",9))),2)+($P(BSRec,"\",7)*$P(BSRec,"\",2)*Qty) Set Dev=$$OPEN^vhDEV(,"Kostenplaats Export.txt","W","T") Use Dev W "KP Oms Kost GV KV Voorkomen Tijd",! Set KP="" For Set KP=$O(Cache(KP)) Quit:KP="" Do . Set oKostPlaats=##class(Prod.GAMeta.BT.KostPlaats).%OpenId(KP) . If $isObject(oKostPlaats) Do . . Set KV=oKostPlaats.GetToeslagKleinVerlet() . . Set GV=oKostPlaats.GetToeslagGrootVerlet() . . Set Kost=oKostPlaats.GetBasisKost() . . Write KP,*9,oKostPlaats.Omschrijving,*9,$$$ExcelNum(Kost),*9,$$$ExcelNum(GV),*9,$$$ExcelNum(KV),*9,$LI(Cache(KP),1),*9,$$$ExcelNum($LI(Cache(KP),2)),! . Else Do . . Write KP,*9,"NVT",*9,*9,*9,$LI(Cache(KP),1),*9,$$$ExcelNum($LI(Cache(KP),2)),! Do CLOSE^vhDEV(Dev) Quit HDEvooraf(DueOut) Set KLNr=$$$KlantHaefeleNL ; Te veranderen in HaefeleDE Set DueOut=$G(DueOut,$H+1) ; Moet morgen vertrekken Set RefDate=$H ; Referentiedatum waarop de terugrekening moet gebeuren van de leveringstermijn Set ORDNr="" For Set ORDNr=$O(^KOD(KLNr,"F",ORDNr)) Quit:ORDNr="" Do . Set OLNr=99 . Set Verzendwijze=$P(^KOD(KLNr,"F",ORDNr,1),"\",7) . Set blVerzendwijze=##class(APPS.VKP.VerzendWijze).%New(KLNr,Verzendwijze) . Set blLevertermijn=##class(APPS.VKP.LeveringsTermijn).%New(RefDate,blVerzendwijze) . Set MinStatus=99 . For Set OLNr=$O(^KOD(KLNr,"F",ORDNr,OLNr)) Quit:OLNr="" Do:$P(^KOD(KLNr,"F",ORDNr,OLNr),"\",2) . . Set OntvangstDatum=$P(^KOD(KLNr,"F",ORDNr,OLNr),"\",25) . . Set LeverDatum=blLevertermijn.GetLaatstePicking(OntvangstDatum) . . Set Status=99 . . If LeverDatum=DueOut Do . . . Set TOENr=$P(^KOD(KLNr,"F",ORDNr,OLNr),"\",27) . . . Set TLNr=$P(^KOD(KLNr,"F",ORDNr,OLNr),"\",28) . . . Set Status=0 . . . If TLNr="KOM" Do . . . . Set Status=1 ; reeds gerecepteerd . . . Else Do . . . . Set OLUNr=$P(^KOD(KLNr,"F",ORDNr,OLNr),"\",15) . . . . Set FabKey=$$FABKEYO^HADOPV(KLNr, ORDNr, OLUNr) . . . . Set:(FabKey'="")&&($P($G(^HADPR("F",FabKey,"K")),"\",3)="A") Status=2 . . . Set:MinStatus>Status MinStatus=Status . . Write " ",ORDNr,*9,OLNr,*9,$G(Status,"NVT"),*9,OntvangstDatum,*9,LeverDatum,*9,DueOut,! . If (MinStatus>0) && (MinStatus<99) Do . . Write ORDNr,*9,Verzendwijze, *9,MinStatus,! Quit VRD Set (CONSNr,ORDNr,OLUNr,SOLNr)="" Set (Count1,Count2,Count3,Count4)=0 kill Array For Set CONSNr=$O(^ORDW("D",CONSNr)) Quit:CONSNr="" Do . Set Rec=^ORDW("D",CONSNr) . Set KLNr=$P(Rec,"\") . Set Status=$P(Rec,"\",20) . Quit:Status="" ; Staat W,P,A,B zijn toegelaten . Set DueOut=+$P(Rec,"\",3) . Quit:DueOut'=+$H ; niet voor vandaag . Set Vzw=$P(Rec,"\",2) . Quit:Vzw'="DI1" . Set Count1=Count1+1 . Quit:$$CheckOpTransport(KLNr,CONSNr) . Set Count2=Count2+1 . Do GetKenmerken(KLNr,CONSNr,.Gewicht,.AantalMaatwerk) . Set AdresID=$P($G(^ORDW("D",CONSNr,"A")),"\",29) . Set Array(AdresID_KLNr,CONSNr)=$LB(KLNr,AdresID,Gewicht, AantalMaatwerk) ; kleine en geen maatwerk er uit gooien Kill ArrayVRD Set (Key, CONSNr)="" For Set Key=$O(Array(Key)) Quit:Key="" Do . Set KLNr="" . Set Gewicht="" . Set AantalMaatwerk="" . For Set CONSNr=$O(Array(Key,CONSNr)) Quit:CONSNr="" Do . . Set Gewicht=Gewicht+$LI(Array(Key,CONSNr),3) . . Set AantalMaatwerk=AantalMaatwerk+$LI(Array(Key,CONSNr),4) . . Set KLNr=$LI(Array(Key,CONSNr),1) . . Set AdresID=$LI(Array(Key,CONSNr),2) . . Set Adres=$G(^ORDW("D",CONSNr,"A")) . Quit:(Gewicht<20)&&('AantalMaatwerk) ; 20Kg en geen maatwerk . Set ArrayVRD(AdresID)=$LB(KLNr,$P(Adres,"\",2,8),AdresID,Gewicht,AantalMaatwerk) . Set Count4=Count4+1 w ! zw Count1,Count2,Count4,ArrayVRD Quit CheckOpTransport(KLNr,CONSNr) Quit $P($G(^KUL(KLNr,"F",CONSNr,1)),"\",8)'="" GetKenmerken(KLNr,COSNr,Gewicht, AantalMaatwerk) Set (ORDNr,OLUNr,SOLNr)="" Set (Gewicht,AantalMaatwerk)=0 For Set ORDNr=$O(^ORDW("D",CONSNr,"D",ORDNr)) Quit:ORDNr="" Do . For Set OLUNr=$O(^ORDW("D",CONSNr,"D",ORDNr,OLUNr)) Quit:OLUNr="" Do .. Set Rec=^(OLUNr) .. Set PRNr=$P(Rec,"\",1) .. Set Qty=$P(Rec,"\",4) .. Set ProdGrp=$$PRODGRP^PRODUKT(PRNr) .. Set:",TBX,LBX,TA.B,KAD,"[(","_ProdGrp_",") AantalMaatwerk=AantalMaatwerk+Qty .. Set Gewicht=Gewicht+($$$PRGet($$$Gewicht)*Qty/1000) Quit RCP0 Set RCP="" Set Cnt=0 For Set RCP=$O(^RCP("D",RCP)) Quit:RCP="" Do . Set TOENr="" . For Set TOENr=$O(^RCP("D",RCP,"D",TOENr)) Quit:TOENr="" Do .. Set TULNr="" .. ;Quit:TOENr'=270062 .. For Set TULNr=$O(^RCP("D",RCP,"D",TOENr,TULNr)) Quit:TULNr="" Do ... Set SULNr="" ... Set TULRec=^RCP("D",RCP,"D",TOENr,TULNr) ... For Set SULNr=$O(^RCP("D",RCP,"D",TOENr,TULNr,SULNr)) Quit:SULNr="" Do .... Set SULRec=^RCP("D",RCP,"D",TOENr,TULNr,SULNr) .... If ($P(SULRec,"\",5)="00000000") && ($P(TULRec,"\",2)="P") Do ..... Set PRNr=$P(SULRec,"\") ..... Set Cnt=Cnt+1 ..... Write RCP," ",TOENr," ",TULNr," ",PRNr,! ..... ;Set $p(^RCP("D",RCP,"D",TOENr,TULNr),"\",2)="W" ..... ;Set $p(^RCP("D",RCP,"D",TOENr,TULNr,SULNr),"\",2)="W" ..... ;Set $p(^RCP("D",RCP,"D",TOENr,TULNr,SULNr),"\",5)="" ..... ;Set $p(^RCP("D",RCP,"D",TOENr,TULNr,SULNr),"\",7)="" W Cnt,! Q s dto=##Class(APPS.Halux.PPS.TAORProductie.ZijkantTester.impl.OphalenData).%New("TZT1").OphalenData("ZFU55L96948") w dto.BarcodeID, " ", dto.HoogteCode, " ", dto.Hoogte," ",dto.Diepte," ",dto.Kar,! s dto=##Class(APPS.Halux.PPS.TAORProductie.ZijkantTester.impl.OphalenData).%New("TZT1").OphalenData("ZCV60L97903") w dto.BarcodeID, " ", dto.HoogteCode, " ", dto.Hoogte," ",dto.Diepte," ",dto.Kar,! s dto=##Class(APPS.Halux.PPS.TAORProductie.ZijkantTester.impl.OphalenData).%New("TZT1").OphalenData("ZKV60R97846") w dto.BarcodeID, " ", dto.HoogteCode, " ", dto.Hoogte," ",dto.Diepte," ",dto.Kar,! s dto=##Class(APPS.Halux.PPS.TAORProductie.ZijkantTester.impl.OphalenData).%New("TZT1").OphalenData("ZMV60L97841") w dto.BarcodeID, " ", dto.HoogteCode, " ", dto.Hoogte," ",dto.Diepte," ",dto.Kar,! s dto=##Class(APPS.Halux.PPS.TAORProductie.ZijkantTester.impl.OphalenData).%New("TZT1").OphalenData("ZNA40L97863") w dto.BarcodeID, " ", dto.HoogteCode, " ", dto.Hoogte," ",dto.Diepte," ",dto.Kar,! q s PRNr=20627 w $$$PRGet($$$NONAktief) w $P(^KPR(PRNr,1),"\",25) w $$KLANTPR^KPRIJS(4810,PRNr) BackFlush Set Device=$$OPEN^vhDEV(,"RECEPTIE TAX.txt","W","T") Use Device Write "Actie PalletID KLLEVNr Regio Verzendwijze RefNr MPRNr MKorttekst Familie Datum Tijd Aantal",! Set %J=$$%J^vhRtn1() Kill ^HULP(%J) Set PRNr="" Set Cnt=0 Set Vanaf=$$CALCDATE^vhLib.DataTypes($H,"A",-230) Set Tot=$$CALCDATE^vhLib.DataTypes($H,"A",-0) s PRNr=2617800 For Set PRNr=$O(^PRHIST(PRNr)) Quit:PRNr="" Do ;Quit:Cnt>1 . Quit:'$d(^KPR(PRNr)) . Set ProdGrp=$$PRODGRP^PRODUKT(PRNr) . Quit:";TBX;LBX;TA.B;"'[(";"_ProdGrp_";") . Set KeyHist="" . use 0 W Cnt," " use Device . For Set KeyHist=$O(^PRHIST(PRNr,KeyHist)) Quit:KeyHist="" Do . . Set Rec=^PRHIST(PRNr,KeyHist) . . Set Datum=+$P(Rec,"\") . . Quit:DatumTot . . Quit:($P(Rec,"\",4)'="I")&&($P(Rec,"\",4)'="U") . . Quit:$P(Rec,"\",5)'="M" . . S KLNr=$P(Rec,"\",6) . . S DOCNr=$P(Rec,"\",7) . . S Regio="",KlKey="" . . S:($P(Rec,"\",4)="U")&&KLNr KlKey=$G(^KK1(KLNr)) . . Set:KlKey'="" Regio=$P(^KKL(KlKey,0),"\",20) . . If DOCNr&&KLNr&&($P(Rec,"\",4)="U") Do . . . For Node="F","G" Quit:$D(^KUL(KLNr,Node,DOCNr)) . . . Set Verzendwijze=$P($P($G(^KUL(KLNr,Node,DOCNr,1)),"\",7),"#") . . S Cnt=Cnt+1 . . Set KeyPal="" . . For Set KeyPal=$O(^PRHIST(PRNr,KeyHist,KeyPal)) Quit:KeyPal="" Do . . . Write $P(Rec,"\",4),*9,$P(^PRHIST(PRNr,KeyHist,KeyPal),"\",1),*9,KLNr,*9,Regio,*9,Verzendwijze,*9,DOCNr,*9,PRNr,*9,$$$ProductGet(PRNr,$$$KortTekst),*9,ProdGrp . . . Write *9,$$$ExcelDat(Datum),*9,$$$ExcelTime($P($P(Rec,"\"),",",2)),*9,$$$ExcelNum($P(^PRHIST(PRNr,KeyHist,KeyPal),"\",2)) . . . Write ! . Set Cnt=Cnt+1 Do CLOSE^vhDEV(Device) Quit MWStat(Familie) Set Device=$$OPEN^vhDEV(,"RECEPTIE TAX2.txt","W","T") Use Device Write "PRNr Familie Datum Aantal TOENr TLNr",! Set %J=$$%J^vhRtn1() Kill ^HULP(%J) Set PRNr="" Set Cnt=0 Set Vanaf=$$CALCDATE^vhLib.DataTypes($H,"M",-1,"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:$$PRODGRP^PRODUKT(PRNr)'="TA.B" . ;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)'="M" . . Quit:$P(Rec,"\",4)'="I" . . Write PRNr,*9,$P($$GENTYP^HAD(PRNr),"\",1,2),*9,$$$ExcelDat(Datum),*9,$$$ExcelNum($P(Rec,"\",2)),*9,$P(Rec,"\",7),*9,$P(Rec,"\",7)_";"_$P(Rec,"\",8) . . 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 COGSKAD Set Device=$$OPEN^vhDEV(,"COGS KAD.txt","W","T") Use Device Write "Grp PRNr Korttekst Maand Component Vulling Rest Aantal Omzet Marge",! Set PRNr="" For Set PRNr=$O(^KSTPR(PRNr)) Quit:PRNr="" Do . Quit:'$d(^KPR(PRNr)) . Quit:$$$PRGet($$$LeveranciersNr)'=$$$LevHalux . Quit:($P($$GENTYP^HAD(PRNr),"\")'="KAD")&&($P($$GENTYP^HAD(PRNr),"\")'="GLA") . Set Maand="" . Set Maand="2020.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(Vulling),*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 Vulling=Vulling+ $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=2671 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 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 Dev=$$OPEN^vhDEV(,"Verzendwijze.txt","W","T") Use Dev Set Vzw="" For Set Vzw=$o(^RES("KLANT","PI","VERZENDWIJZE","D",Vzw)) Quit:Vzw="" Do . Write Vzw,*9,$P(^RES("KLANT","PI","VERZENDWIJZE","D",Vzw),"`",2),*9,$zt($P(^RES("KLANT","PI","VERZENDWIJZE","D",Vzw),"`",4)),*9,$zt($P(^RES("KLANT","PI","VERZENDWIJZE","D",Vzw),"`",10)),! Do CLOSE^vhDEV(Dev) 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