#Include BL.Derde.Kennis #Include BL.Derde.Kennis.AutoRes #define LevHalux 6332 #Include %occInclude #Include %Prod.Product #Include %CHUI.System A B C D E F G H I J K L M N=O P Q R S U V W X Y,Z H Type2Proforma(ORDNr) New R,KLNr,OLNr,OrdType,OrderTotaal,Proforma Set KLNr=$P($G(^KO1(ORDNr,"F")),D),OrdType="",OrderTotaal=0 If KLNr { Set OrdType=$P(^KOD(KLNr,"F",ORDNr,1),D,25) If OrdType'="M",OrdType'="P" { Set OLNr=100 For { Set OLNr=$O(^KOD(KLNr,"F",ORDNr,OLNr)) Quit:'OLNr Set OrderTotaal=OrderTotaal+$P(^KOD(KLNr,"F",ORDNr,OLNr),D,9) } } } If OrdType'="M",OrdType'="P" { If OrderTotaal,'$$IsVTW^KLANT(KLNr) Quit Set Buttons="Buttons",Buttons(1)="Annuleer",Buttons(2)="Proforma&P",Buttons(3)="+ factuur&F" Set:OrderTotaal Buttons(2)=Buttons(2)_"*" Set:'OrderTotaal Buttons(3)=Buttons(3)_"*" Set Proforma=$$^vhTXTPOP("FLOWORD","TYPE2PROFORMA","",$$EXTNUM^vhDTyp(ORDNr,0,".",0),$P(^KKL(^KK1(KLNr),0),D,2),$$EXTNUM^vhDTyp(OrderTotaal,0,".T",2)) If $L(Proforma) Set R=^KOD(KLNr,"F",ORDNr,1),$P(R,D,25)="P",$P(R,D,29)=$S(Proforma="F":"P",1:"F"),^KOD(KLNr,"F",ORDNr,1)=R } Quit ; blg(Document,DocNum) New BevatLanggoed Set BevatLanggoed=0 If Document="O" { New ORDNr,OrderAPI,Order Set ORDNr=DocNum Set OrderAPI = ##class(DOM.DomeinContext).Instance().GeefOrderAPI() Set Order = OrderAPI.GeefOrder(ORDNr) Set BevatLanggoed = ##class(APPS.OV.impl.FlowObjectInhoudService).OrderBevatLangGoed(Order) } If Document="L" { New BONNr,OrderAPI,Bon Set BONNr=DocNum Set OrderAPI = ##class(DOM.DomeinContext).Instance().GeefOrderAPI() Set Bon = OrderAPI.GeefBon(BONNr) Set BevatLanggoed = ##class(APPS.OV.impl.FlowObjectInhoudService).BonBevatLangGoed(Bon) } If Document="F" { New FANr,OrderAPI,Factuur Set FANr=DocNum Set OrderAPI = ##class(DOM.DomeinContext).Instance().GeefOrderAPI() Set Factuur = OrderAPI.GeefFactuur(FANr) Set BevatLanggoed = ##class(APPS.OV.impl.FlowObjectInhoudService).FactuurBevatLangGoed(Factuur) } If Document="P" { New PROFNr,OrderAPI,Proforma Set PROFNr=DocNum Set OrderAPI = ##class(DOM.DomeinContext).Instance().GeefOrderAPI() Set Proforma = OrderAPI.GeefProforma(PROFNr) Set BevatLanggoed = ##class(APPS.OV.impl.FlowObjectInhoudService).ProformaBevatLangGoed(Proforma) } Quit BevatLanggoed ; o New blg,KLNr,ORDNr 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 blg=$$blg("O",ORDNr) . . Quit:'blg . . Write !,KLNr,?10,ORDNr Quit ; l New blg,KLNr,BONNr Set KLNr=0 For Set KLNr=$O(^KUL(KLNr)) Quit:'KLNr Do . Set BONNr=0 . For Set BONNr=$O(^KUL(KLNr,"F",BONNr)) Quit:BONNr="" Do . . Set blg=$$blg("L",BONNr) . . Quit:'blg . . Write !,KLNr,?10,BONNr Quit ; f New blg,KLNr,FANr Set KLNr="" For Set KLNr=$O(^KFA1("F",KLNr)) Quit:'KLNr Do . Set Datum="" . For Set Datum=$O(^KFA1("F",KLNr,Datum)) Quit:Datum="" Do . . Set FANr="" . . For Set FANr=$O(^KFA1("F",KLNr,Datum,FANr)) Quit:FANr="" Do . . . Quit:'$D(^KFA("F",FANr)) . . . Set blg=$$blg("F",FANr) . . . Quit:'blg . . . Write !,KLNr,?10,FANr Quit ; p New blg,KLNr,PROFNr Set KLNr="" For Set KLNr=$O(^KFAP1("F",KLNr)) Quit:'KLNr Do . Set Datum="" . For Set Datum=$O(^KFAP1("F",KLNr,Datum)) Quit:Datum="" Do . . Set PROFNr="" . . For Set PROFNr=$O(^KFAP1("F",KLNr,Datum,PROFNr)) Quit:PROFNr="" Do . . . Quit:'$D(^KFAP("F",PROFNr)) . . . Set blg=$$blg("F",PROFNr) . . . Quit:'blg . . . Write !,KLNr,?10,PROFNr Quit ; cx(BONNr) ;Set ^HULP($J,"T",BONNr)="",Document="L",DOCNr="ULNr" ;Do PRINT^DCPRINT ;Set Data("TextId")=0 ;Do EXTERN^DCPRINT("L",BONNr,"P",,,.Data) Do EXTERN^DCPRINT("L",BONNr,"","",1) Quit ; fc() Quit "Dit is een test" ; sl New I,Tekst,LD,Input Write @F11,@F1 For I=1:1:$r(30) Set Tekst(I)="Dit is lijn "_I Do INIT^vhLIST("CW","SL",.LD) Do WRITE^vhLIST(.LD) For Set Input=$$SCROLL^vhLIST(.LD) Quit:Input="ENTER" Quit ; slb ;New I,Tekst,LD,Input Write @F11,@F1 Set Tekst="Local" For I=1:1:$r(30) Set Local(I)="Dit is lijn "_I_" voor local" Do INIT^vhLIST("CW","SLB",.LD) Do WRITE^vhLIST(.LD) Set Input=$$SCROLL^vhLIST(.LD) Quit ; ; nlz Write @F11,@F1 Do ##Class(CHUI.TRANSP.impl.RegistratieNietGeleverdeBon).Verwerk() Quit ; ; d ##class(Prod.Kenmerk.DataDefinitie).DeleteViaPRNr(566858,"*") ; MoveAlias(FromPRNr,ToPRNr) New AliasI,AliasK,lbFromAliasI,lbFromAliasK,lbToAliasI,lbToAliasK,IdentNr,KortTekst,Mail,From,To,Subject,Body,Status ; Aliassen van het FromProduct Set lbFromAliasI=##class(Prod.Kenmerk.DataDefinitie).Get("OEI",FromPRNr,"AliasI") Set lbFromAliasK=##class(Prod.Kenmerk.DataDefinitie).Get("OEI",FromPRNr,"AliasK") If $LL(lbFromAliasI) For I=1:1:$LL(lbFromAliasI) Set IdentNr=$LI(lbFromAliasI),(AliasI(IdentNr),Mail("I",IdentNr))="" If $LL(lbFromAliasK) For I=1:1:$LL(lbFromAliasK) Set KortTekst=$LI(lbFromAliasK),(AliasK(KortTekst),Mail("K",KortTekst))="" ; Het FromProduct zelf als alias Set IdentNr=$P(^KPR(FromPRNr,2),D,25),AliasI(IdentNr)="" Set KortTekst=$P(^KPR(FromPRNr,0),D),AliasK(KortTekst)="" ; Aliassen van het ToProduct Set lbToAliasI=##class(Prod.Kenmerk.DataDefinitie).Get("OEI",ToPRNr,"AliasI") Set lbToAliasK=##class(Prod.Kenmerk.DataDefinitie).Get("OEI",ToPRNr,"AliasK") If $LL(lbToAliasI) For I=1:1:$LL(lbToAliasI) Set IdentNr=$LI(lbToAliasI),AliasI(IdentNr)="" Kill Mail("I",IdentNr) If $LL(lbToAliasK) For I=1:1:$LL(lbToAliasK) Set KortTekst=$LI(lbToAliasK),AliasK(KortTekst)="" Kill Mail("K",KortTekst) ; Nieuwe aliassen voor het ToProduct Set (lbToAliasI,IdentNr)="" For Set IdentNr=$O(AliasI(IdentNr)) Quit:IdentNr="" Set lbToAliasI=lbToAliasI_$LB(IdentNr) Set (lbToAliasK,KortTekst)="" For Set KortTekst=$O(AliasK(KortTekst)) Quit:KortTekst="" Set lbToAliasK=lbToAliasK_$LB(KortTekst) Do ##class(Prod.Kenmerk.DataDefinitie).Set("OEI",ToPRNr,"AliasI",lbToAliasI) Do ##class(Prod.Kenmerk.DataDefinitie).Set("OEI",ToPRNr,"AliasK",lbToAliasK) w !! zw Mail Do:$D(Mail) . Set From=$P($$USERNAME^vhUSER(,"@"),";") . Set:From="" From=$ZUTIL(110)_"@VANHOECKE.BE" . Set To=$$USERNAME^vhUSER("CW","@",1) . Set Subject="Fusie producten - aliassen" . Set KortTekst=$P(^KPR(ToPRNr,0),D) . Set Body="Aan product """_KortTekst_""" zijn volgende aliassen toegevoegd:"_$C(13),IdentNr="" . For Set IdentNr=$O(Mail("I",IdentNr)) Quit:IdentNr="" Set Body=Body_$C(13)_IdentNr . Set Status=$$SendMiniMail^vhLib(From,To,Subject,Body) Quit ; RedenAanmaak New zb,R,RedenAanmaak Set RedenAanmaak=$P($G(B(4)),D,15) Set K=$$PI^vhPOPUP("C;C","-ZDO1","Reden aanmaak","KLANT","REDEN",RedenAanmaak) Set:zb="CANC" K="-" If K="A" Do . Set R="K\22\3\Reden aanmaak\\50" . Do ^cA100 Set Locals("K")=K Quit ; ewpal New C Set PRNr=3510 Set Qty=500 Set PalId="PalId" Set Sectie="Sectie" Set TotFysSt=1750 Set OpslagPl="Opslagpl" Set Gewicht=8888 Set SampTyp="SamType" Set Date=+$H Set C("PRNR")=PRNr Set C("AANTAL")=Qty Set C("PALETID")=PalId Set C("SECTIE")=Sectie Set C("TOTFYSSTOCK")=TotFysSt Set C("STOCKAGEPLAATS")=OpslagPl Set C("GEWICHT")=Gewicht Set C("SAMPLETYPE")=SampTyp Set C("DATUM")=Date zw C Do CONTROL^EWPAL(.C) Quit ; CONTROL(C) ; Controle door de nachtelijkje stockscan, 1 per produkt en per palet, opgeroepen door S02^EWRECR New R,PRNr,Qty,TempQty,CorrQty,TotFysSt,PalId,OpslagPl,Gewicht,SampTyp,Date,FysStock,AddQty,ModTyp,Reden,Sectie Set S02Cnt=$G(S02Cnt)+1,Reden="Corr WMS" If S02Cnt=1 Do ; Indien eerste record dan opkuis .Kill ^EWPAL("M") .Do COPYOLD^EWPAL .Set ^EWPAL("D")=$H ; Begin tijdstip .Do BLDKUP^EWPAL2 ; Tijdelijk opbouw KUP bestand Set PRNr=C("PRNR"),Qty=C("AANTAL"),PalId=C("PALETID"),Sectie=C("SECTIE") If $L(PRNr),$D(^KPR(PRNr)) Else Do:";18786;18787;"'[(";"_PRNr_";") ERROR^EWLOG($T(NOPROD)) Quit If $G(PRNr) Quit:$$OPSLMAN^PRODUKT2(PRNr) Set CorrQty=$$CORR^EWPAL2(PRNr) Set ^EWPAL("D",PRNr)=CorrQty ;Bijhouden van de correctie factor Set TotFysSt=C("TOTFYSSTOCK")+CorrQty Set OpslagPl=C("STOCKAGEPLAATS"),Gewicht=C("GEWICHT"),SampTyp=C("SAMPLETYPE"),Date=C("DATUM") If +$E(OpslagPl,1,3)<1!(+$E(OpslagPl,1,3)>4)!($TR($E(OpslagPl,4,99),"0 ","")="") Do OPSLAGPL^EWPAL(PRNr,PalId,OpslagPl) ; Palet niet in AUTO,UGLY,Langgoed of Transit Do PALID^EWPAL(PRNr,PalId,OpslagPl) ;Controle op foutieve paletkode Do TOTPAL^EWPAL(PRNr,PalId,Qty,OpslagPl,Date,Sectie) ; Wijzigen paletaantal Set:$P(^KPR(PRNr,2),D,16) PRSTOCK",$P($G(^KPR(PRNr,0)),D),17,.Tekst,.Lnk,"U","A") .Set $P(^PRSTOCK("D",PRNr),D,1)=FysStock ; correctie If +FysStock'=+TotFysSt Do ; Verschil tussen Admin en WMS .Do ERROR^EWLOG($T(TOTSTOCK)) .Set AddQty=TotFysSt-FysStock .Do MAILSTCK^EWPAL(PRNr,AddQty,,"N.S.") .Set TempQty=AddQty .Set ModTyp=3 Set:AddQty<0 ModTyp=4,AddQty=-AddQty .Do ADDSTOCK^EWPAL(PRNr,AddQty,ModTyp,,Reden,,,,"N") ; Fys. Stock en historiek aanpassen .Set:$D(^PRLINK("IKM",PRNr)) ^EWPAL("M",PRNr)=TempQty ; De moeders worden pas gecontroleerd als alle kinderen verwerkt zijn ;Opslaan van gewicht en samplecode ;If Gewicht Do ; Tijdelijk geen gewicht aanpassingen .Set R=^KPR(PRNr,1) Set:$P(R,D,13)'=Gewicht/1000 $P(R,D,13)=Gewicht/1000,^KPR(PRNr,1)=R Set R=^KPR(PRNr,2) Set:$P(R,D,12)'=SampTyp $P(R,D,12)=SampTyp,^KPR(PRNr,2)=R ; de wijzing ^KPR moet niet doorgegeven worden aan het WMS Set:$L(PalId) R=^EWPAL("D",PRNr,PalId),$P(R,D,10)=1,^EWPAL("D",PRNr,PalId)=R ; Passed Quit ; Regio Set Dev=$$OPEN^vhDEV(,"Regio.TXT","W","A") Do:0'[Dev . Use Dev . Write "Regio",$C(9),"Omschrijving",$C(9),"Int. verantw.",$C(9),"Ext. verantw.",$C(13) . For I=1:1:50 Do . . Set R=$G(^RES("KLANT","PI","REGIO","D",I)) . . Quit:R="" . . Write I,$C(9),$P(R,"`",2),$C(9),$$REGIOVW^KLOPV(I,,1,"I"),$C(9),$$REGIOVW^KLOPV(I,,1,"E"),$C(13) . Close Dev Quit ; GLV(KLNr) New Nieuw Set Nieuw=1 Goto GetLidVan+8^KF21B ColorY New %Screen Set %Screen=##Class(%CHUI.TScreen).Create() Set Canvas=%Screen.Canvas Set Font=##class(%CHUI.TFont).%New() Set FontStd=##class(%CHUI.TFont).%New() Do FontStd.Init($LB($$$clBlack,$$$clWhite)) Set FG=5,BG=16 Do Font.Init($LB(FG,BG,)) Do Canvas.ChangeFont(Font) Do Canvas.MoveTo(10,10) Do Canvas.TextOut("Groene tekst") Set FG=5,BG=9 Do Font.Init($LB(FG,BG,)) Do Canvas.ChangeFont(Font) Do Canvas.MoveTo(12,10) Do Canvas.TextOut("Oranje tekst") Set FG=5,BG=13 Do Font.Init($LB(FG,BG,)) Do Canvas.ChangeFont(Font) Do Canvas.MoveTo(14,10) Do Canvas.TextOut("Rode tekst") Do Canvas.ChangeFont(FontStd) r !!,r Quit KVZ Set (k,r)="" For Set k=$o(^KK1(k)) q:k="" Do If $L(r),r'="g" Quit . Set v=$$DEFAULT^KLVERZW(,k) . Quit:$D(v(v)) . Set v(v)="" . Write !!,k,?10,$p(^KKL(^KK1(k),0),D,2) . Write !?10,v . Write !?10,$$GetLeverDatums^KLVERZW(k,$h+3,$h+20,"DCK",D) . Write !?10,$$GetLeverDatums^KLVERZW(k,$h+3,$h+20,"DL",D) . Read:r'="g" r Quit BHTreeView New %J,I,sFL,AT,BF,QD,BJ,BPA,BPB,J1,J3,J4,KM1,KM2,VM,BA39,Rekening,Groep1,Groep2,Groep3,Groep4,Groep5,Omschrijving,Debet1,Debet2,Debet3,Credit1,Credit2,Credit3 Set %J=$$%J^vhRtn1() Kill ^HULP(%J) D ^cT489 ; Bepalen van de default instellingen Set $P(sFL(1),D)=$$INTDATE^vhDTyp(KM1(BJ),"DM4") Set $P(sFL(1),D,2)=$$INTDATE^vhDTyp(BPA,"DM4") Set $P(sFL(1),D,3)=$$CALCDATE^vhDTyp($P(sFL(1),D),"M",-12) Set $P(sFL(1),D,4)=$$CALCDATE^vhDTyp($P(sFL(1),D,2),"M",-12) Set $P(sFL(1),D,5)=$$CALCDATE^vhDTyp($P(sFL(1),D),"M",-24) Set $P(sFL(1),D,6)=$$CALCDATE^vhDTyp($P(sFL(1),D,2),"M",-24) Set $P(sFL(1),D,11)=1 Set $P(sFL(1),D,12)=0 Do EDIT^vhScherm("BHTREEVIEW") Do:%SC ; Verzamelen van de gegevens . Set Rekening=0 . For Set Rekening=$O(^KAR(Rekening)) Quit:Rekening="" Do . . Set R=^KAR(Rekening,0),Omschrijving=$P(R,D,2) . . Set Debet1=$$DEBET(Rekening,$$EXTDATE^vhDTyp($P(sFL(1),D),"DM4"),$$EXTDATE^vhDTyp($P(sFL(1),D,2),"DM4")) . . Set Credit1=$$CREDIT(Rekening,$$EXTDATE^vhDTyp($P(sFL(1),D),"DM4"),$$EXTDATE^vhDTyp($P(sFL(1),D,2),"DM4")) . . Set Debet2=$$DEBET(Rekening,$$EXTDATE^vhDTyp($P(sFL(1),D,3),"DM4"),$$EXTDATE^vhDTyp($P(sFL(1),D,4),"DM4")) . . Set Credit2=$$CREDIT(Rekening,$$EXTDATE^vhDTyp($P(sFL(1),D,3),"DM4"),$$EXTDATE^vhDTyp($P(sFL(1),D,4),"DM4")) . . Set Debet3=$$DEBET(Rekening,$$EXTDATE^vhDTyp($P(sFL(1),D,5),"DM4"),$$EXTDATE^vhDTyp($P(sFL(1),D,6),"DM4")) . . Set Credit3=$$CREDIT(Rekening,$$EXTDATE^vhDTyp($P(sFL(1),D,5),"DM4"),$$EXTDATE^vhDTyp($P(sFL(1),D,6),"DM4")) . . If $P(sFL(1),D,11),'Debet1,'Credit1,'Debet2,'Credit2,'Debet3,'Credit3 Quit ; Enkel rekeningen met bedragen en er zijn geen bedragen voor de geselecteerde periodes . . If $L($TR(Rekening," ",""))=2 Do . . . Set Groep1=Rekening . . . Set R=1_D_Rekening_D_Omschrijving_D_Debet1_D_Credit1_D_(Debet1-Credit1)_D_Debet2_D_Credit2_D_(Debet2-Credit2)_D_Debet3_D_Credit3_D_(Debet3-Credit3) . . . Set ^HULP(%J,"BKH",Groep1)=R . . If $L($TR(Rekening," ",""))=3 Do . . . Set Groep1=$E(Rekening,1,2)_" ",Groep2=Rekening . . . Set:'$D(^KAR(Groep1)) Groep1=0 . . . Set R=2_D_Rekening_D_Omschrijving_D_Debet1_D_Credit1_D_(Debet1-Credit1)_D_Debet2_D_Credit2_D_(Debet2-Credit2)_D_Debet3_D_Credit3_D_(Debet3-Credit3) . . . Set ^HULP(%J,"BKH",Groep1,Groep2)=R . . If $L($TR(Rekening," ",""))=6 Do . . . Set Groep1=$E(Rekening,1,2)_" ",Groep2=$E(Rekening,1,3)_" ",Groep3=Rekening . . . Set:'$D(^KAR(Groep1)) Groep1=0 Set:'$D(^KAR(Groep2)) Groep2=0 . . . Set R=3_D_Rekening_D_Omschrijving_D_Debet1_D_Credit1_D_(Debet1-Credit1)_D_Debet2_D_Credit2_D_(Debet2-Credit2)_D_Debet3_D_Credit3_D_(Debet3-Credit3) . . . Set ^HULP(%J,"BKH",Groep1,Groep2,Groep3)=R . . . Do:$P(sFL(1),D,12) DETAIL(%J,Rekening,$$EXTDATE^vhDTyp($P(sFL(1),D),"DM4"),$$EXTDATE^vhDTyp($P(sFL(1),D,2),"DM4")) . Write !,"%J = ",%J . Read R . Kill ^HULP(%J) Quit ; Ophalen van het debet voor een bepaalde periode DEBET(Rekening,VanMaand,TotMaand) New R,Debet,BoekJaar,Maand,Piece Set VanMaand=$$INTDATE^vhDTyp(VanMaand,"DM4"),TotMaand=$$INTDATE^vhDTyp(TotMaand,"DM4") Set Debet=0 For I=0:1 Set Maand=$$CALCDATE^vhDTyp(VanMaand,"M",I) Quit:Maand>TotMaand Do . Set Piece=$P($$EXTDATE^vhDTyp(Maand,"DM4"),".",2) . Set Piece=$S(Piece>6:Piece-5,1:Piece+7) . Set BoekJaar=$$BJ^cAFE1("K",$$EXTDATE^vhDTyp(Maand,"DM4")),R=$G(^KAR(Rekening,BoekJaar)),Debet=Debet+$P(R,D,Piece) Quit Debet ; Ophalen van het credit voor een bepaalde periode CREDIT(Rekening,VanMaand,TotMaand) New R,Credit,BoekJaar,Maand,Piece Set VanMaand=$$INTDATE^vhDTyp(VanMaand,"DM4"),TotMaand=$$INTDATE^vhDTyp(TotMaand,"DM4") Set Credit=0 For I=0:1 Set Maand=$$CALCDATE^vhDTyp(VanMaand,"M",I) Quit:Maand>TotMaand Do . Set Piece=$P($$EXTDATE^vhDTyp(Maand,"DM4"),".",2) . Set Piece=$S(Piece>6:Piece-5,1:Piece+7) . Set BoekJaar=$$BJ^cAFE1("K",$$EXTDATE^vhDTyp(Maand,"DM4")),R=$G(^KAR(Rekening,BoekJaar+.02)),Credit=Credit+$P(R,D,Piece) Quit Credit ; DETAIL(%J,Rekening,VanMaand,TotMaand) New R,Credit,BoekJaar,Maand,Piece w !,Rekening,?15,"Detail" Set Maand=1_$TR(VanMaand,".","")_".01",Maand=$O(^KAR(Rekening,Maand),-1) For Set Maand=$O(^KAR(Rekening,Maand)) Quit CheckDigit(OfferteID) New CD Set CD=##Class(BL.Flow.Offerte.Build).%New() Write CD.CheckDigit(OfferteID) Quit ; Controle (en eventuele wijziging) van de leverdatum met daaraan gekoppeld het DueOut tijdstip van een consolidatie bij vrijgave door de boekhouding CHKLEVT(CONSNr) New R,KLNr,KlantId,Klant,Dagen,VerzW,DefaultVerzW,DOutTime,VerzDate,WMSDate Set R=^ORDW("D",CONSNr),KLNr=$P(R,D),VerzW=$P(R,D,2),DOutTime=$P(R,D,3),VerzDate=$P(R,D,5),WMSDate=$P(R,D,18) Set DefaultVerzW=$$DEFAULT^KLVERZW(,KLNr) Set Dagen=$H-VerzDate Do:Dagen>0 . Set KlantId=^KK1(KLNr),R=^KKL(KlantId,0),Klant=KLNr_" "_$P(R,D,2) . Set Dagen=$S(Dagen=1:"gisteren",1:Dagen_" dagen terug") . If VerzW=DefaultVerzW . Else If VerzW'=$P(DefaultVerzW,";") . Else Set VerzW=DefaultVerzW ; Leverdatum berekenen volgens de verzendwijze v/d klant . Set VerzDate=$$LEVERDATUM^KLVERZW(VerzW) . Set:VerzDate>$H VerzDate=$$CALCDATE^vhDTyp(VerzDate,"A",-1) . Set DOutTime=VerzDate_","_$P(DOutTime,",",2) . Quit:'$$^vhTXTPOP("FLOWBON","CHKLEVT","",$$EXTDATE^vhDTyp(DOutTime),$$EXTNUM^vhDTyp(CONSNr,0,".",0),Klant,$$EXTDATE^vhDTyp(WMSDate),Dagen) . Set R=^ORDW("D",CONSNr),$P(R,D,2)=$P(VerzW,";"),$P(R,D,3)=DOutTime,$P(R,D,5)=VerzDate,^ORDW("D",CONSNr)=R Quit ModPRBS New R,MPRNr,KPRNr,OldIndex,NewIndex,Key Quit Set MPRNr="" For Set MPRNr=$O(^PRBS("BS",MPRNr)) Quit:MPRNr="" Do . If $P(^PRBS("BS",MPRNr),D,2)="OL" Do . . Do DELIND^PRBS(MPRNr) . . Set OldIndex="" . . For Set OldIndex=$O(^PRBS("BS",MPRNr,OldIndex)) Quit:OldIndex="" Do . . . Set R=^PRBS("BS",MPRNr,OldIndex),KPRNr=$P(R,D),Key=$P(R,D,3) . . . If Key="S" Set NewIndex="KOST."_$P(OldIndex,".",2,99) . . . Else If Key="K" Set NewIndex=$S($D(^HISTPAK("P",KPRNr)):"PRVPK.",1:"KIND.")_$P(OldIndex,".",2,99) . . . Else If Key="T" Set NewIndex="TIJD."_$P(OldIndex,".",2,99) . . . Else Quit . . . Quit:OldIndex=NewIndex . . . Write !,OldIndex,?10,NewIndex . . . If $D(^PRBS("BS",MPRNr,NewIndex)) Write ?25,$ZR," ---> Bestaat reeds" Read R . . . Set ^PRBS("BS",MPRNr,NewIndex)=^PRBS("BS",MPRNr,OldIndex) . . . Kill ^PRBS("BS",MPRNr,OldIndex) . . Do BLDIND^PRBS(MPRNr) . If $P(^PRBS("BS",MPRNr),D,2)="KP" Do . . Do DELIND^PRBS(MPRNr) . . Set OldIndex="" . . For Set OldIndex=$O(^PRBS("BS",MPRNr,OldIndex)) Quit:OldIndex="" Do . . . Set R=^PRBS("BS",MPRNr,OldIndex),KPRNr=$P(R,D),Key=$P(R,D,3) . . . Set Key=$P(^PRBS("BS",MPRNr,OldIndex),D,3) . . . If Key="S" Set NewIndex="KOST."_$P(OldIndex,".",2,99) . . . Else If Key="K" Set NewIndex="KIND."_$P(OldIndex,".",2,99) . . . Else If Key="T" Set NewIndex="TIJD."_$P(OldIndex,".",2,99) . . . Else Quit . . . Quit:OldIndex=NewIndex . . . Write !,OldIndex,?10,NewIndex . . . If $D(^PRBS("BS",MPRNr,NewIndex)) Write ?25,$ZR," ---> Bestaat reeds" Read R . . . Set ^PRBS("BS",MPRNr,NewIndex)=^PRBS("BS",MPRNr,OldIndex) . . . Kill ^PRBS("BS",MPRNr,OldIndex) . . Do BLDIND^PRBS(MPRNr) Quit ; DelProdFusie(PRNr) New %J,MPRNr,GenPRNr,Fusie,VAN,NAAR,NoAsk,NoDel,NoPakket Set MPRNr="" For Set MPRNr=$O(^PRBS("IP",PRNr,MPRNr)) Quit:MPRNr="" Do . Set GenPRNr=$P($G(^KPR(MPRNr,0)),D,3) . Set:GenPRNr Fusie(GenPRNr,MPRNr)="" Do:$D(Fusie) . Set %J=$$%J^vhRtn1() . Kill ^HULP(%J) . Set NoAsk=1 . Set NoDel=0 . Set NoPakket=1 . Set GenPRNr="" . For Set GenPRNr=$O(Fusie(GenPRNr)) Quit:GenPRNr="" Do . . Kill VAN,NAAR,^HULP(%J) . . Set NAAR(GenPRNr)="\1\1" . . Set MPRNr="" . . For Set MPRNr=$O(Fusie(GenPRNr,MPRNr)) Quit:MPRNr="" Set VAN(MPRNr)="" . Kill ^HULP(%J) . Do FUSIE^PRFUSIE2 Quit CheckTBX New R,PRNr,KortTekst,CB,LD,KL,LC,Type,Diepte,Breedte,Hoogte,Kleur Set KLNr=1239,ORDNr=171234,OLNr=100 For Set OLNr=$O(^KOD(KLNr,"F",ORDNr,OLNr)) Quit:OLNr="" Do . Set R=^KOD(KLNr,"F",ORDNr,OLNr),PRNr=$P(R,D,2) . Quit:'PRNr Quit:'$$ISTBX^PRODUKT2(PRNr) . Set PRNr(PRNr)="" ZW PRNr Merge ^cw=PRNr Set PRNr="" For Set PRNr=$O(PRNr(PRNr)) Quit:PRNr="" Do . Set CB=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"CB")) ; corpusbreedte . Set LD=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"LD")) ; ladediepte . Set KL=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"KL")) ; kleur lade . Set LC=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX",PRNr,"LC")) ; ladecode . Set Type=$E(LC),Diepte=LD,Breedte=CB,Hoogte=$E(LC,$L(LC)),Kleur=KL . Set KortTekst=$P(^KPR(PRNr,0),D) . Set R=$P(KortTekst,"x"),R=$E(R,$L(R)-2,$L(R)) . If R'=Diepte Write !,PRNr,?10,Diepte,?15,R,?25,"<-- Diepte" . Set R=$P(KortTekst,"x",2),R=$E(R,1,3),R=R+50\50*50 . If R'=Breedte Write !,PRNr,?10,Breedte,?15,R,?25,"<-- Breedte" . Set R=KortTekst,R=$E(R,$L(R)-1,$L(R)) . If R'=Kleur Write !,PRNr,?10,Kleur,?15,R,?25,"<-- Kleur" Quit RAADPL(PRNr,Screen,NoMod) Set:'$D(Screen) Screen="" New (%ZR,%ZM,Q,QL,QM,QN,QO,QRVG,QT,QTU,QU,QW,QZ,D,DT,TD,DD,DM,DJ,F70,F71,U,boot,cs,master,workst,io,QP,QD,%Q1,PRNr,Screen,NoMod,sJC,sScr,sProgLog,RK) Xecute F71 Set LScreen=Screen,Aktie="" If '$D(^KPRO(PRNr)) Quit LScreen_D_Aktie Set EXTERN=1,PARAM=PRNr_D_Screen Do ^RPLPRO Set Aktie=$G(Aktie),LScreen=$G(LScreen) Set Aktie=$S(Aktie="(":"P",Aktie=")":"N",1:"") Quit LScreen_D_D_Aktie ; ; Definieren van een menuprompt MenuPrompt(Item) New Prompt If Item="MVkaLEVNr" Set Prompt="Verkoop analyze (wijzig beperking leverancier "_$S($G(VkaLEVNr):$P(^KLE(^KL1(VkaLEVNr),0),D,2),1:"?????")_")" Quit $G(Prompt) ; KlantenOrdBev New R,KlKey,KLNr,Regio Set KlKey=0 For Set KlKey=$O(^KKL(KlKey)) Quit:KlKey="" Do . Set KLNr=$P(KlKey," ",2),R=^KKL(KlKey,0),KlNaam=$P(R,D,2) . Set OrdBev=$P(^KKL(^KK1(KLNr),1),D,19) . Quit:OrdBev'=1 . Do EenKlantOrdBev(KLNr) . Write !,KLNr,?10,KlNaam Quit EenKlantOrdBev(KLNr) New KlKey,OrdBev Set KlKey=^KK1(KLNr) Set OrdBev=$P(^KKL(^KK1(KLNr),1),D,19) If OrdBev=1 w !,KLNr,?10,OrdBev Set $P(^KKL(^KK1(KLNr),1),D,19)="F" Quit prprijs(PRNr) Do:$$ISBLUM^PRODUKT2(PRNr) . Set VHRec=$O(^KPR(PRNr,"J")) Quit:$E(VHRec)'="J" . Set VHRec=^KPR(PRNr,VHRec) . Set VHPrijs=+$J($P(VHRec,D,19)*(1-($P(VHRec,D,9)/100))/$S($P(VHRec,D,28)="M":1000,$P(VHRec,D,28)="H":100,1:1)+.004,0,1) . Set LVPrijs=+$J($P($$LEVPR^KPRIJS(,PRNr),D,13),0,1) . Write !!,VHPrijs,!,LVPrijs . Set r="" . If VHPrijs'=LVPrijs Write !,PRNr r r Quit ; Nazicht of minstens een lijn van de factuur een waarde zal hebben IsZero(KLNr,BONNrs) New R,IsZero,BONNr,BLNr,CheckedBonnrs Set (BONNr,CheckedBonnrs)="",IsZero=1 For Set BONNr=$O(BONNrs(BONNr)) Quit:BONNr="" Do Quit:'IsZero . Set CheckedBonnrs=CheckedBonnrs_","_BONNr,BLNr=99 . For Set BLNr=$O(^KUL(KLNr,"F",BONNr,BLNr)) Quit:'BLNr Set R=^KUL(KLNr,"F",BONNr,BLNr),IsZero='$P(R,D,9) Quit:'IsZero Do:IsZero . Set $E(CheckedBonnrs)="" . Set:$L(CheckedBonnrs,",")>9 CheckedBonnrs=$P(CheckedBonnrs,",",1,9)_",..." . Set IsZero='$$^vhTXTPOP("KF20","CHKZERO","",$P(^KKL(^KK1(KLNr),0),D,2),CheckedBonnrs) Quit IsZero PL(KLNr) ;Do ##Class(CHUI.Flow.PrijsLijst).Open(KLNr) ;Do ##Class(CHUI.Flow.PrijsLijst).Mail(KLNr) Do ##Class(CHUI.Flow.PrijsLijst).OpenForXls(KLNr) ;Do ##Class(CHUI.Flow.PrijsLijst).OpenXml(KLNr) ;Do ##Class(CHUI.Flow.PrijsLijst).MailXml(KLNr) ;Do ##Class(CHUI.Flow.PrijsLijst).OpenXmlForXls(KLNr) ;Do ##Class(CHUI.Flow.PrijsLijst).AllCust() ;Do ##Class(CHUI.Flow.PrijsLijst).SelectedCust() Quit PRIJSLST Do STORE^vhTERMINA() Do ##Class(CHUI.Flow.PrijsLijst).SelectedCust($NA(^HULP(%J,"L"))) Do REFRESH^vhTERMINA() Quit ModVerzendwijze New R,From,To,ToOmschrijving,VerzW,KlKey,KLNr,ORDNr,FactSoort,BONNr,CONSNr,Date,Taal,VerpType ;Set From="AF",To="AFH" ;Set From="AFH",To="AF" ;Set From="PO",To="POB" ;Set From="POB",To="PO" ;Set From="KL",To="KLR" ;Set From="KLR",To="KL" ;Set From="EX",To="EXP" ;Set From="EXP",To="EX" ;Set From="OD4",To="DI2" ;Set From="DI2",To="OD4" Set From="SP",To="DI1" ;Set From="DI1",To="SP" ; ;Quit ; Write !!!,"Klanten",! Set KlKey=0 For Set KlKey=$O(^KKL(KlKey)) Quit:KlKey="" Do . Set R=^KKL(KlKey,2),VerzW=$P(R,D,16) . Quit:VerzW'[From . Set KLNr=$P(KlKey," ",2) . Write !! ZWrite @$ZR . Set VerzW=$$REPLACE^vhRtn1(VerzW,From,To) . Do MODFIELD^KLANT(KLNr,316,VerzW) ; ****************************** . ZWrite ^KKL(KlKey,2) Write !!!,"Orders",! Set KLNr=0 For Set KLNr=$O(^KOD(KLNr)) Quit:KLNr="" Do . Set ORDNr="" . For Set ORDNr=$O(^KOD(KLNr,"F",ORDNr)) Quit:ORDNr="" Do . . Set R=^KOD(KLNr,"F",ORDNr,1),VerzW=$P(R,D,7) . . Quit:VerzW'[From . . Write !! ZWrite @$ZR . . Set VerzW=$$REPLACE^vhRtn1(VerzW,From,To) . . Set $P(^KOD(KLNr,"F",ORDNr,1),D,7)=VerzW ; ****************************** . . ZWrite @$ZR Write !!!,"WMS",! Set CONSNr="" For Set CONSNr=$O(^ORDW("D",CONSNr)) Quit:CONSNr="" Do . Set R=^ORDW("D",CONSNr),VerzW=$P(R,D,2) . Quit:VerzW'=From . Write !!,$ZR,"=",@$zr . Set VerzW=To,$P(^ORDW("D",CONSNr),D,2)=VerzW ; ****************************** . Write !,$ZR,"=",@$zr Write !!!,"Leveringen",! Set KLNr=0 For Set KLNr=$O(^KUL(KLNr)) Quit:KLNr="" Do . Set Taal=$P(^KKL(^KK1(KLNr),0),D,9) Set:Taal="" Taal="N" . Set ToOmschrijving=$P($G(^RES("KLANT","PI","VERZENDWIJZE","D",To,Taal)),"`") . Set:ToOmschrijving="" ToOmschrijving=$P(^RES("KLANT","PI","VERZENDWIJZE","D",To,"N"),"`") . Set FactSoort="" . For Set FactSoort=$O(^KUL(KLNr,FactSoort)) Quit:FactSoort="" Do . . Set BONNr="" . . For Set BONNr=$O(^KUL(KLNr,FactSoort,BONNr)) Quit:BONNr="" Do . . . Set R=^KUL(KLNr,FactSoort,BONNr,1),VerzW=$P(R,D,7),VerpType=$P(R,D,30) . . . If $P(VerzW," ")'=From,VerpType'[From Quit . . . Write !! ZWrite @$ZR . . . If $P(VerzW," ")=From Set VerzW=To_" #"_ToOmschrijving,$P(R,D,7)=VerzW . . . If VerpType[From Set VerpType=$$REPLACE^vhRtn1(VerpType,From,"DI"),$P(R,D,30)=VerpType . . . Set ^KUL(KLNr,FactSoort,BONNr,1)=R ; ****************************** . . . ZWrite @$ZR Write !!!,"Index leveringen",! Set Date="" For Set Date=$O(^KU3(Date)) Quit:Date="" Do . Set VerzW="" . For Set VerzW=$O(^KU3(Date,VerzW)) Quit:VerzW="" Do . . Quit:$P(VerzW," ")'=From . . Write !,Date,! . . Merge ^KU3(Date,To_" ")=^KU3(Date,VerzW) ; ****************************** . . ZWrite @$ZR . . Kill ^KU3(Date,VerzW) ; ****************************** Quit ModOLProd New R,PRNr,KKey,HoofdGr,Groep Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . Set KKey=$$KKEY^KLASS(PRNr) . Set R=^KLAS("K",KKey),HoofdGr=$P(R,D,5),Groep=$P(R,D,6) . Quit:HoofdGr'="OL" . If "\BAS\BBX\OLB\OLV\WBB\WBV\WNB\WNV\KLB\KLV\OLO\WBO\WNO\KLO\"[Groep Do . . Write !,PRNr,?10,Groep . . Do MODFIELD^PRODUKT(PRNr,225,"") . . Do MODFIELD^PRODUKT(PRNr,403,1) . If "\SER\DRU\"[Groep Do . . Write !,PRNr,?10,Groep . . Do MODFIELD^PRODUKT(PRNr,225,"") . If "\OL3\OUD\DIV\"[Groep Do . . Write !,PRNr,?10,Groep . . Do MODFIELD^PRODUKT(PRNr,225,2) . . Do MODFIELD^PRODUKT(PRNr,403,"") Quit COLIAANT(BONNr) New R,KLNr,VervRef,GroepNr,Colli,TranspNr Set KLNr=$P(^KU1(BONNr,"F"),D) Set R=$G(^KUL(KLNr,"F",BONNr,1)) Set:'$L(R) R=$G(^KUL(KLNr,"G",BONNr,1)) Set:'$L(R) R=$G(^KUL(KLNr,"M",BONNr,1)) Set VervRef=$P($P(R,D,8),";"),GroepNr=$P($P(R,D,8),";",2),Colli=$P(R,D,24) If $L(VervRef),$L(GroepNr) Do .Set R=$G(^TRANSP("D",VervRef)),TranspNr=$P(R,D) .If R="" Set Colli="" .Else If TranspNr'=5036 Do ..If $L($$LevAdresNrsOpTransport(KLNr),";")<2 Set Colli="" Quit ..Set Colli=$$GetAdresNr^LEVADR(KLNr,$$GetLevAdr^KFLAD("L",BONNr)) ..w !,Colli r r .Else Set:GroepNr=BONNr Colli=$$COLIAANT^TRANSP(VervRef,GroepNr) Else Set Colli=$P(Colli,"#")+$P(Colli,"#",2)+$P(Colli,"#",3) w !,Colli r r Quit $S(Colli=0:"",$TR(Colli,"#","")="":"",1:Colli) ; ; Hoeveel leveringsadressen van een klant uit deze toerlijst staan reeds op transport? LevAdresNrsOpTransport(KLNr) New I,R,LevAdresNrs,BONNr,LevAdresNr Set LevAdresNrs="" For I=1:1 Set R=$G(^HULP(%J,"D",I)) Quit:R="" Do:$P(R,D,3)=KLNr . Set BONNr=$P(R,D) . Quit:'$L(##class(Flow.Cons.TransportBon).GetTransport(BONNr)) ; Niet op transport . Set LevAdresNr=$$GetAdresNr^LEVADR(KLNr,$$GetLevAdr^KFLAD("L",BONNr)) . Set:";"_LevAdresNrs_";"'[(";"_LevAdresNr_";") LevAdresNrs=LevAdresNrs_";"_LevAdresNr Set $E(LevAdresNrs)="" Quit LevAdresNrs ; Rel(KLNr) Do . New KLNr . Do ^A508 Write @F11,@F1 If '$G(KLNr) Set KLNr=$$SELECT^KLANT6() Do:KLNr . Do ##class(CHUI.Derde.Klant.Relaties).RPLKL(KLNr) . ;Do ##class(CHUI.Derde.Klant.Relaties).Verwerk(KLNr) Quit BldRel Do ^A508 Write @F11,@F1 Do ##class(BL.Derde.Klant.Relaties).convert() Quit DelRel d ^A508 Write @F11,@F1 Set KlKey=0 For Set KlKey=$O(^KKL(KlKey)) Quit:KlKey="" Do . Write !,KlKey . Set KLNr=$P(^KKL(KlKey,0),D) . Do ##class(BL.Derde.Klant.Relaties).DelAll(KLNr) Quit CheckLidVan N IsLidVan,%LidVan,KlKey,KC S KlKey=0 F S KlKey=$O(^KKL(KlKey)) Quit:KlKey="" Do . S KC=$P(^KKL(KlKey,0),D) . S IsLidVan=$P(^KKL(^KK1(KC),1),D,13),%LidVan=$P(^KKL(^KK1(KC),2),D,6) . I +IsLidVan,'$D(^KK1(+IsLidVan)) S IsLidVan="" . S:'IsLidVan %LidVan="" . Q:'IsLidVan . W !,KlKey,?35,IsLidVan," - ",%LidVan . Set IsLidVan=$$GetLidVan^KF21B(KC),%LidVan=$LI(IsLidVan,2),IsLidVan=$LI(IsLidVan) . W ?65,$J(IsLidVan,4)," - ",%LidVan Q ; FETCH(Max,Date) ;Goto FETCH+2^ULTOER New VerzWz,Beperk,Sort,LVerzWz,ULNr,KLNr,R,Type,SortKey,IsTerugN,VerzType,VervRef,ORDNr New KlantInd,KlantNm,PostKode,Gemeente,Land,FakSoort Kill ^HULP(%J,"T") Set LVerzWz=$P(Kriteria,D,3),VerzType=$P(Kriteria,D,7) Set VerzWz=LVerzWz_" " If $L(VerzWz) Set VerzWz=$O(^KU3(Date,VerzWz),-1) Set Beperk=$P(Kriteria,D,4),Sort=$P(Kriteria,D,5) For Set VerzWz=$O(^KU3(Date,VerzWz)) Quit:VerzWz=""!($E(VerzWz,1,$L(LVerzWz))'=LVerzWz) Do .Set ULNr="" .For Set ULNr=$O(^KU3(Date,VerzWz,ULNr)) Quit:ULNr="" Do ..Set R=^KU3(Date,VerzWz,ULNr),KLNr=$P(R,D),FakSoort=$P(R,D,2) ..Quit:'$D(^KUL(KLNr,FakSoort,ULNr)) ..If "\O\T\"[(D_Beperk_D),FakSoort'="F" Quit ..If $L(VerzType) Set IsTerugN=$$ISTERUGN^FLOWBON5(ULNr) Quit:$P("L\T",D,IsTerugN+1)'=VerzType ..If $D(BulkGroep) Quit:$L($P(^KUL(KLNr,FakSoort,ULNr,1),D,38)) Set BONNrs(ULNr)="" ..Set Type=$P("O\\F\F",D,$F("FXGM",FakSoort)-1) ..If "A"'[Beperk,"T"'[Beperk,Type'=Beperk Quit ..Set R=$$FETCHL(KLNr,ULNr,FakSoort),VervRef=$P($P(R,D,13),";") ..If Beperk["T",VervRef,##Class(BL.Flow.Cons.TransportData).IsClosed(VervRef) Quit ; Beperking openstaande en niet op transport ..Set SortKey=ULNr If Sort'="B" Set SortKey=KlantInd_SortKey If Sort'="K" Set SortKey=PostKode_SortKey If Sort'="P" Set SortKey=VerzWz_KlantInd_SortKey ..Set ^HULP(%J,"T",SortKey)=R Set ULNr="" If Beperk'="F" For Set ULNr=$O(^ORDW("D",ULNr)) Quit:ULNr="" Do:'$D(^KU1(ULNr)) .Set R=^ORDW("D",ULNr),KLNr=$P(R,D),FakSoort="W" .Quit:-$P(R,D,5)'=Date .Set ORDNr=$O(^ORDW("D",ULNr,"D","")) .Quit:'$D(^KOD(KLNr,"F",ORDNr)) .If $L(VerzType) Set IsTerugN=$$ISTERUGN^EWORDS3(ULNr) Quit:$P("L\T",D,IsTerugN+1)'=VerzType .Set Type="O" .If "A"'[Beperk,"T"'[Beperk,Type'=Beperk Quit .Set R=$$FETCHL(KLNr,ULNr,FakSoort),VervRef=$P($P(R,D,13),";"),VerzWz=$P(R,D,12) .Quit:$E(VerzWz,1,$L(LVerzWz))'=LVerzWz .If Beperk["T",VervRef,##Class(BL.Flow.Cons.TransportData).IsClosed(VervRef) Quit ; Beperking openstaande en niet op transport .Set SortKey=ULNr If Sort'="B" Set SortKey=KlantInd_SortKey If Sort'="K" Set SortKey=PostKode_SortKey If Sort'="P" Set SortKey=VerzWz_KlantInd_SortKey .Set ^HULP(%J,"T",SortKey)=R Set SortKey="",Count=Max For Set SortKey=$O(^HULP(%J,"T",SortKey)) Quit:SortKey="" Set Count=Count+1,^HULP(%J,"D",Count)=^HULP(%J,"T",SortKey) Kill ^HULP(%J,"T") Quit Count ; FETCHL(KLNr,ULNr,FakSoort) New R,KlantNm,Gemeente,Land,Type,Proforma,IsTerugN,ORDNr,VerzWz,LevDate If '$D(FakSoort) Set FakSoort="F" Set:'$D(^KUL(KLNr,FakSoort,ULNr)) FakSoort="G" If FakSoort="G",'$D(^KUL(KLNr,FakSoort,ULNr)) Set FakSoort="M" Do:FakSoort'="W" .Set R=^KUL(KLNr,FakSoort,ULNr,1) .Set Type=$P(R,D,28),Proforma="" .Set:$P(R,D,25)="M"!($P(R,D,25)="P") Proforma=$P(R,D,25)_$S($P(R,D,29)["P":"m",1:"z") .Set KlantInd=^KK1(KLNr),R=$G(^KUL(KLNr,FakSoort,ULNr,3)) .If '$P(R,D) Set R=^KKL(KlantInd,0) .Set KlantNm=$P(R,D,2),PostKode=$P(R,D,6),Gemeente=$P(R,D,7) .Set Land=$$LAND^vhRtn1($P(R,D,8)),IsTerugN=$$ISTERUGN^FLOWBON5(ULNr) .Set R=ULNr_D_Type_D_KLNr_D_KlantNm_D_$S(Land'="BE":Land_"-",1:"")_Gemeente .Set R=R_D_^KUL(KLNr,FakSoort,ULNr,1),$P(R,D,50)=Proforma,$P(R,D,51)=IsTerugN .Set KlantInd=$$UPTRIMAN^vhRtn1(KlantNm)_" "_KLNr Do:FakSoort="W" .Set R=^ORDW("D",ULNr),VerzWz=$P(R,D,2),LevDate=$P(R,D,5),ORDNr=$O(^ORDW("D",ULNr,"D","")) .Set R=^KOD(KLNr,"F",ORDNr,1) .Set Type="W",Proforma="" .Set:$P(R,D,25)="M"!($P(R,D,25)="P") Proforma=$P(R,D,25)_$S($P(R,D,29)["P":"m",1:"z") .Set KlantInd=^KK1(KLNr),R=$G(^KOD(KLNr,"F",ORDNr,3)) .If '$P(R,D) Set R=^KKL(KlantInd,0) .Set KlantNm=$P(R,D,2),PostKode=$P(R,D,6),Gemeente=$P(R,D,7) .Set Land=$$LAND^vhRtn1($P(R,D,8)),IsTerugN=$$ISTERUGN^EWORDS3(ULNr) .Set R=ULNr_D_Type_D_KLNr_D_KlantNm_D_$S(Land'="BE":Land_"-",1:"")_Gemeente .Set R=R_D_^KOD(KLNr,"F",ORDNr,1),$P(R,D,50)=Proforma,$P(R,D,51)=IsTerugN,$P(R,D,7)=$$EXTDATE^vhDTyp(LevDate),$P(R,D,12)=VerzWz_" " .Set KlantInd=$$UPTRIMAN^vhRtn1(KlantNm)_" "_KLNr Quit R ; af Set (aantalFout,aantalOK,aantalFac)=0 Set BeginDat=-$zdh(20080701,8)+1 w BeginDat,! r test Set KlantNr="" For Set KlantNr=$O(^KFA1("F",KlantNr)) Quit:KlantNr="" Do .Set Dat="" For Set Dat=$O(^KFA1("F",KlantNr,Dat)) Quit:Dat10 FANrCount=FANrCount+1,FANr(FANrCount)=NextFANr . Set FDat=$P(^KFA("F",NextFANr,0,0),D,6) . Set $P(FANr(FANrCount),D,3)=NextFANr,PrevFANr=NextFANr . Set:$P(FANr(FANrCount),D,2)="" $P(FANr(FANrCount),D,2)=FDat . Set $P(FANr(FANrCount),D,4)=FDat Quit FAPNr Set NextFAPNr="",(PrevFAPNr,FAPNrCount)=0 For Set NextFAPNr=$O(^KFAP("F",NextFAPNr)) Quit:NextFAPNr="" Do . Set:(NextFAPNr-PrevFAPNr)>10 FAPNrCount=FAPNrCount+1,FAPNr(FAPNrCount)=NextFAPNr . Set FDat=$P(^KFAP("F",NextFAPNr,0,0),D,6) . Set $P(FAPNr(FAPNrCount),D,3)=NextFAPNr,PrevFAPNr=NextFAPNr . Set:$P(FAPNr(FAPNrCount),D,2)="" $P(FAPNr(FAPNrCount),D,2)=FDat . Set $P(FAPNr(FAPNrCount),D,4)=FDat Quit ComparePersOld2New New R,VwBeperk Write @F11,@F1 Read !,"VwBeperk ? ",VwBeperk Do ConvertVwBeperkAllCust^PERS("O") ; Alle personen naar oude codes Write ! ZWrite ^PERS("K",1000),^PERS("K",2564) Write ! Read R Do PersOld(.VwBeperk) Do ConvertVwBeperkAllCust^PERS() ; Alle personen naar nieuwe codes Write ! ZWrite ^PERS("K",1000),^PERS("K",2564) Write ! Read R Do PersNew(.VwBeperk) Write !,"VwBeperk = ",VwBeperk New Do ^%GCMP Quit PersOld(VwBeperk) New KLNr,Opties,Pers Set Opties("NOPOP")=1 Set:$D(VwBeperk) Opties("VWBEPERK")=VwBeperk Kill ^cwpersold Set KLNr="" For Set KLNr=$O(^PERS("K",KLNr)) Quit:KLNr="" Do . Set Pers=$$SELECT^PERSS("K",KLNr,.Opties) . Quit:Pers="" . w !,KLNr,?8,Pers . Set ^cwpersold(KLNr)=Pers Quit PersNew(VwBeperk) New KLNr,Opties,Pers Set Opties("NOPOP")=1 Set:$D(VwBeperk) Opties("VWBEPERK")=VwBeperk Kill ^cwpersnew Set KLNr="" For Set KLNr=$O(^PERS("K",KLNr)) Quit:KLNr="" Do . Set Pers=$$SELECT^PERSS("K",KLNr,.Opties) . Quit:Pers="" . w !,KLNr,?8,Pers . Set ^cwpersnew(KLNr)=Pers Quit KlantTypeOudNaarNieuw(OudKlantType) New NewKlantType Set:"\A\B\C\D\"[(D_OudKlantType_D) NewKlantType=$Case(OudKlantType,"A":"B","B":"D","C":"F",:"G") Set:"\P\Q\R\S\"[(D_OudKlantType_D) NewKlantType=$Case(OudKlantType,"P":"B","Q":"D","R":"F",:"G") Set:"\1\2\"[(D_OudKlantType_D) NewKlantType=$Case(OudKlantType,"1":"B",:"F") Quit $G(NewKlantType) KlantTypeNieuwNaarOud(NewKlantType,Activiteit,Kwalitatief) New OudKlantType Set Activiteit=$$UPCASE^vhRtn1(Activiteit) If Activiteit="HANDEL" Set OudKlantType=$Case(Kwalitatief,1:1,:2) Else If "\INTERIEUR\KEUKENS\W & S\BURO\LABO\"[(D_Activiteit_D) Do . If Activiteit="BURO" Set OudKlantType=$Case(NewKlantType,"A":"P","B":"P","C":"Q","D":"Q","E":"R","F":"R",:"S") . Else Set OudKlantType=$Case(NewKlantType,"A":"A","B":"A","C":"B","D":"B","E":"C","F":"C",:"D") Quit $G(OudKlantType,NewKlantType) ConvertKwalitatief(Kwalitatief,Activiteit) New ActiviteitCode Set ActiviteitCode="" For Set ActiviteitCode=$O(^RES("KLANT","PI","ACTIVITEIT","D",ActiviteitCode)) Quit:ActiviteitCode="" Do . Set R=^RES("KLANT","PI","ACTIVITEIT","D",ActiviteitCode) . Set:$P(R,"`",7)=Activiteit Kwalitatief=$P(R,"`",Kwalitatief+2) Quit Kwalitatief ; CheckTransp New R,Dev,Global,Rec,Next Set Global="ABX2302B" w !,Global Set Dev=$$OPEN^vhDEV(,Global_".EDI","R","M") Do:0'[Dev . Set Next=0 . For Use Dev Read Rec Quit:Rec="" Do . . Set Next=Next+1 . . Set @("^"_Global_"(Next)")=Rec . Close Dev Quit GVP New KLNr,PRNr,vp Set KLNr=1146 For Set KLNr=$O(^KK1(KLNr)) Quit:KLNr="" Do . Set PRNr=0 . For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . . Set vp=##class(BL.Prod.Search).GetVervangProductIfFirstTime(PRNr,KLNr) . . Quit:'$LL(vp) . . Write !,KLNr,?10,PRNr,?20,$$LCVT^vhLib(vp) . . Read r Quit CheckLeverDagBijVrijgave(KLNr,ORDNr) New R,OLNr,LevDate Do:$$CheckRefDate^FLOW3(KLNr,ORDNr) . Write !,"Te lang geleden!" . Set OLNr=100 . For Set OLNr=$O(^KOD(KLNr,"F",ORDNr,OLNr)) Quit:OLNr="" Do . . Quit