EWORDST ;E'WMS Status orderpicking [ 11/29/2003 8:15 AM ] ; ; KritE : bevat alle Kriteria gewijzigd door het selectiescherm ; KritF : bevat alle Kriteria gebruikt voor het ophalen van de gegevens door FETCH, het is initieel een copy van KritE, maar kan tijdelijk bij Open Klant de kriteria bevatten voor die klant ; KritD : bevat de kriteria voor de display (incl. de beperking op klant of consolidatie ; ALL New KritE,KritF,KritF,LD,Input,%J,Node New KLNr,PRNr,CONSNr,ORDNr,OLUNr,SOLNr,OldCONSNr,ChkData Do INIT Do SELECT If %SC Do .If $G(KritE("K","KLNR")) Do ..Set KLNr=KritE("K","KLNR") ..Set KritE("A","DETAIL")="M" ..Do VWCUST(KLNr),COMMAND .Else If $G(KritE("O","ORDNR")) Do ..Set ORDNr=KritE("O","ORDNR") ..Quit:'ORDNr Quit:'$D(^KO1(ORDNr)) ..Set KLNr=$P(^KO1(ORDNr,"F"),D) ..Set KritE("K","KLNR")=KLNr ..Set KritE("A","DETAIL")="M" ..Do VWCUST(KLNr),COMMAND .Else If $G(KritE("O","CONSNR")) Do ..Set CONSNr=KritE("O","CONSNR") ..Set KLNr=$P(^ORDW("D",CONSNr),D) ..Set KritE("A","DETAIL")="M" ..Do VWCUST(KLNr),COMMAND .Else Do ..Set KritE("A","ALL")=1,KritD("A","ALL")=1 ..Do REWRITE(,"Do WRITE^vhLIST(.LD)") ..Do COMMAND Kill ^HULP(%J) Quit ; KLANT(KLNr) New KritD,KritE,KritF,LD,Input,%J,Node New PRNr,CONSNr,ORDNr,OLUNr,SOLNr Quit:'$D(^KK1(KLNr)) Do INIT Set KritE("A","DETAIL")="M" Set KritE("K","KLNR")=KLNr Merge KritF=KritE,KritD=KritE,^HULP(%J,"SF")=KritF Do FETCH^EWORDST4(%J,Node),DISPLAY^vhScherm("EWORDST") Do VWCUST(KLNr,1),COMMAND Kill ^HULP(%J) Quit ; CONSOL(CONSNr) New KritD,KritE,KritF,LD,Input,%J,Node New KLNr,PRNr,ORDNr,OLUNr,SOLNr If '$D(^ORDW("D",CONSNr)),'$D(^KU1(CONSNr,"F")) Quit Do INIT Set KLNr=$P($G(^ORDW("D",CONSNr),$G(^KU1(CONSNr,"F"))),D) Set KritE("A","DETAIL")="M" Set KritE("O","CONSNR")=CONSNr Merge KritF=KritE,KritD=KritE,^HULP(%J,"SF")=KritF Do FETCH^EWORDST4(%J,Node),DISPLAY^vhScherm("EWORDST") Do VWCONS(CONSNr,1),COMMAND Kill ^HULP(%J) Quit ; ORDER(ORDNr) New KritD,KritE,KritF,LD,Input,%J,Node New KLNr,PRNr,CONSNr,OLUNr,SOLNr Quit:'$D(^KO1(ORDNr,"F")) Do INIT Set KLNr=$P(^KO1(ORDNr,"F"),D) Set KritE("A","DETAIL")="M" Set KritE("O","ORDNR")=ORDNr Merge KritF=KritE,KritD=KritE,^HULP(%J,"SF")=KritF Do FETCH^EWORDST4(%J,Node),DISPLAY^vhScherm("EWORDST") Do VWORD(ORDNr,1),COMMAND Kill ^HULP(%J) Quit ; SELECT New R,KritTyp,Kriteria Do INITKR Do MACRO(0) Do DISPLAY^vhScherm("EWORDST") Do EDIT^vhScherm("EWORDSTS",,,,,1,3) Set KritTyp="" If %SC Do .For Set KritTyp=$O(Kriteria(KritTyp)) Quit:KritTyp="" Do ..Set Kriteria="" ..For Set Kriteria=$O(Kriteria(KritTyp,Kriteria)) Quit:Kriteria="" Do ...Set R=Kriteria(KritTyp,Kriteria) ...Quit:R="" ...Set KritE(KritTyp,Kriteria)=R,KritD(KritTyp,Kriteria)=R ...;Set:KritTyp'="A" KritF(KritTyp,Kriteria)=R ...Set KritF(KritTyp,Kriteria)=R .Set ChkData=1 Quit ; SELEDIT(Macro) New %SC,R,Kriteria,KritTyp Set Macro=$G(Macro),OldCONSNr="" Do:$L(Macro) MACRO(Macro) If $D(Kriteria) Set %SC=1 Else Do .Do INITKR .Merge Kriteria=KritE .Do DISPLAY^vhScherm("EWORDST") .Do EDIT^vhScherm("EWORDSTS",,,,,1,3) If %SC Do .Kill KritE,KritF,KritD .Set KritTyp="" .For Set KritTyp=$O(Kriteria(KritTyp)) Quit:KritTyp="" Do ..Set Kriteria="" ..For Set Kriteria=$O(Kriteria(KritTyp,Kriteria)) Quit:Kriteria="" Do ...Set R=Kriteria(KritTyp,Kriteria) ...Quit:R="" ...Set KritE(KritTyp,Kriteria)=R,KritD(KritTyp,Kriteria)=R ...;Set:KritTyp'="A" KritF(KritTyp,Kriteria)=R ...Set KritF(KritTyp,Kriteria)=R .Set SelKey="",LD("SELECT")=1 .If $G(KritE("K","KLNR")) Do ..Set KLNr=KritE("K","KLNR") ..Set KritE("A","DETAIL")="M" ..Do VWCUST(KLNr) .Else If $G(KritE("O","ORDNR")) Do ..Set ORDNr=KritE("O","ORDNR") ..Quit:'ORDNr Quit:'$D(^KO1(ORDNr)) ..Set KLNr=$P(^KO1(ORDNr,"F"),D) ..Set KritE("K","KLNR")=KLNr ..Set KritE("A","DETAIL")="M" ..Do VWCUST(KLNr) .Else If $G(KritE("O","CONSNR")) Do ..Set CONSNr=KritE("O","CONSNR") ..Set KLNr=$P(^ORDW("D",CONSNr),D) ..Set KritE("A","DETAIL")="M" ..Do VWCUST(KLNr) .Else Do REWRITE() .Set ChkData=1 Else Do REFRESH Quit ; COMMAND New NextRefr,NewNode,TempInp Set NextRefr=$G(KritD("A","REFRESH")) Set:NextRefr NextRefr=NextRefr+$P($H,",",2) Set NewNode="C" For Do Quit:Input="CANC" .If $G(KritD("A","DISPMODE"))="D" Do ..Do COMMSPEC^EWORDST2 .Else Do ..Set:$G(Input)'="COM" Input=$$SCROLL^vhLIST(.LD,,1) ..Do:$E(NewNode,2,9) CHKJOB ..If Input="" Do TIMEOUT ..If ChkData Do ...Set ChkData=0 ...Quit:$D(^HULP(%J,"L")) Quit:zb="ENTER" ...Do ADD^vhScherm(2,24),REFRESH ...Set R=$$^vhTXTPOP("EWORDST","NOCONS") ..Do GETREFS(LD("SELECT")) .Do REFRCONS .If Input="M" Do GETMACRO() .If Input="COM" Set Input="" Do CALL^vhMenu("EWORDST") .Do EXEC^vhMenu("EWORDST",.Input) Quit ; REFRCONS New KritTemp,sFL If CONSNr,CONSNr'=OldCONSNr Do .Merge KritTemp=KritD .Set KritD("K","KLNR")=KLNr .Set KritD("O","CONSNR")=CONSNr .Set sFL(1)=$G(^ORDW("D",CONSNr)) .Do DISPLAY^vhScherm("EWORDSTH",,,,"KLANT;CONSNR;AANMAAK;WMS;GERAAPT;OPBON",1) .Set OldCONSNr=CONSNr .Kill KritD .Merge KritD=KritTemp Quit ; REFRESH Do DISPLAY^vhScherm("EWORDST") If $G(KritD("A","DISPMODE"))'="D" Do .Do HOOFDING,WRITE^vhLIST(.LD) Else Do REFRESH^EWORDST2 Quit ; TIMEOUT Quit:$E(NewNode,2,9) If NextRefr,$P($H,",",2)>NextRefr Do .Set NewNode="C"_($E(Node,2,9)+1) .Kill ^HULP(%J,"SF") .Merge ^HULP(%J,"SF")=KritF .Job FETCH^EWORDST4(%J,NewNode) .Set NextRefr=NextRefr+KritD("A","REFRESH") Quit ; CHKJOB New %TC,OldNode For Quit:$D(^HULP(%J,NewNode)) Do ADD^vhLock("^HULP(%J,NewNode)") If %TC Do .Set OldNode=Node,Node=NewNode,NewNode="C" .Do UPDATE .Do REMOVE^vhLock("^HULP(%J,Node)") .Kill ^HULP(%J,OldNode) Quit ; VWSELECT Do UPDATE Quit ; VWCUST(KLNr,NextCust) Kill R,KritD,KlNaam Merge KritD=KritF If $G(NextCust) Do .Merge KritD("A")=KritE("A") .Kill:","_$G(KritD("O","STAT"))_","'[",3," KritD("O","STAT") Set KritD("K","KLNR")=KLNr Set KritD("A","DETAIL")="M" Set KritD("A","DISPMODE")="K" Set:$D(KritE("A","REFRESH")) KritD("A","REFRESH")=KritE("A","REFRESH") Do REWRITE('$G(NextCust)) If '$D(^ORDW("IK",KLNr)) Do .Set KlNaam=$P(^KKL(^KK1(KLNr),0),D,2) .Set R=$$^vhTXTPOP("EWORDST","NOORDWMS","",KlNaam) Quit ; VWCONS(CONSNr,NextCons) Kill R,KritD,KlNaam Merge KritD=KritF If $G(NextCons) Do .Merge KritD("A")=KritE("A") .Kill:","_$G(KritD("O","STAT"))_","'[",3," KritD("O","STAT") Set KritD("O","CONSNR")=CONSNr Set KritD("K","KLNR")=$P($G(^ORDW("D",CONSNr),$G(^KU1(CONSNr,"F"))),D) Set KritD("A","DETAIL")="A" Set KritD("A","DISPMODE")="C" Set:$D(KritE("A","REFRESH")) KritD("A","REFRESH")=KritE("A","REFRESH") Do REWRITE('$G(NextCons)) If '$D(^ORDW("D",CONSNr)) Do .Set KLNr=KritD("K","KLNR"),KlNaam=$P(^KKL(^KK1(KLNr),0),D,2) .Set R=$$^vhTXTPOP("EWORDST","CONSNOWMS","",$$EXTNUM^vhDTyp(CONSNr,0,".",0),KlNaam) Quit ; VWORD(CONSNr,NextOrd) Kill R,KritD,KlNaam Merge KritD=KritF If $G(NextOrd) Do .Merge KritD("A")=KritE("A") .Kill:","_$G(KritD("O","STAT"))_","'[",3," KritD("O","STAT") Set KritD("O","ORDNR")=ORDNr Set KritD("K","KLNR")=$P(^KO1(ORDNr,"F"),D) Set KritD("A","DETAIL")="A" Set KritD("A","DISPMODE")="C" Set:$D(KritE("A","REFRESH")) KritD("A","REFRESH")=KritE("A","REFRESH") Do REWRITE('$G(NextOrd)) If '$D(^ORDW("IO",ORDNr)) Do .Set KLNr=KritD("K","KLNR"),KlNaam=$P(^KKL(^KK1(KLNr),0),D,2) .Set R=$$^vhTXTPOP("EWORDST","ORDNOWMS","",$$EXTNUM^vhDTyp(ORDNr,0,".",0),KlNaam) Quit ; NEWCUST New KLNr Do STORE^vhTERMINA() Set KLNr=$$SELECT^KLANT6() Do REFRESH^vhTERMINA() Quit:'KLNr Kill KritF Set KritF("K","KLNR")=KLNr Set KritF("A","DETAIL")="M" Do SHOWCUST(KLNr) Quit ; NEWORD New KLNr,ORDNr Do STORE^vhTERMINA() Set ORDNr=$$SELECT^FLOW("KOD","KO1",1,1) Do REFRESH^vhTERMINA() Quit:'ORDNr Quit:'$D(^KO1(ORDNr)) Set KLNr=$P(^KO1(ORDNr,"F"),D) Quit:'KLNr Kill KritF Set KritF("K","KLNR")=KLNr Set KritF("A","DETAIL")="M" Set KritF("O","ORDNR")=ORDNr Do SHOWCUST(KLNr) Quit ; NEXTCUST(Dir) New R,NwKLNr,Quit Set SelKey=$$BLDIND(KLNr,CONSNr),NwKLNr="" For Set SelKey=$O(^HULP(%J,"F",SelKey),Dir) Quit:SelKey="" Do Quit:KLNr'=NwKLNr .Set R=^HULP(%J,"F",SelKey),NwKLNr=$P(R,D) If SelKey="" Write *7 Else Do .For LD("SELECT")=LD("SELECT"):Dir Quit:'$D(^HULP(%J,"L",LD("SELECT"))) Do Quit:Quit ..Set Quit=$P(^HULP(%J,"L",LD("SELECT")),D)=SelKey .If $D(^HULP(%J,"L",LD("SELECT"))) Do ENABLE^vhLIST(.LD,LD("SELECT")) Quit .Do VWCUST(NwKLNr,1) Quit ; NEXTCONS(Dir) New R,NwCONSNr,Quit,SelNr Set SelKey=$$BLDIND(KLNr,CONSNr),NwCONSNr="" For Set SelKey=$O(^HULP(%J,"F",SelKey),Dir) Quit:SelKey="" Do Quit:CONSNr'=NwCONSNr .Set R=^HULP(%J,"F",SelKey) .Set NwCONSNr=$P(R,D,2) If SelKey="" Write *7 Else If $G(KritD("A","DISPMODE"))="D" Do .Do VWDTL^EWORDST2(NwCONSNr) Else Do .For SelNr=LD("SELECT"):Dir Quit:'$D(^HULP(%J,"L",SelNr)) Do Quit:Quit ..Set Quit=$P(^HULP(%J,"L",SelNr),D)=SelKey .If SelNr,$D(^HULP(%J,"L",SelNr)) Do ENABLE^vhLIST(.LD,SelNr) Quit .Do VWCONS(NwCONSNr,1) Quit ; SHOWCUST(KLNr) New CONSNr,ORDNr,OLUNr Set KLNr=$G(KLNr) Do:KLNr VWCUST(KLNr,1) Quit ; SHOWCONS(CONSNr) New KLNr,ORDNr,OLUNr Set CONSNr=$G(CONSNr) Do:CONSNr VWCONS(CONSNr,1) Quit ; SHOWDTL(CONSNr) Do VWDTL^EWORDST2(CONSNr) Quit ; SHOWVERW(CONSNr) Do SHOWVERW^EWORDST2(CONSNr) Quit ; SHOWSEL New Diff,Key1,Key2 Set OldCONSNr="" Set Diff=0 Set (Key1,Key2)="" For Set Key1=$O(KritF(Key1)) Quit:Key1="" Do Quit:Diff .For Set Key2=$O(KritF(Key1,Key2)) Quit:Key2="" Do Quit:Diff ..Set Diff=KritF(Key1,Key2)'=$G(KritE(Key1,Key2)) Set:'Diff Diff='$D(KritF) ; Eerste keer If Diff Do .Kill KritF,KritD .Merge KritF=KritE,KritD=KritE .Set KritD("A","DETAIL")="S" .Do REWRITE(1) Else Do .Kill KritD .Merge KritD=KritF .Set KritD("A","DETAIL")="S" .Do REWRITE(0) Quit ; TRAVERS(a,b) New R,CONSNr,ORDNr,OLUNr Set Key=$O(^HULP(%J,"K",Key)),sRec="" If $L(Key) Do .Set R=^HULP(%J,"K",Key),CONSNr=$P(R,D,2),ORDNr=$P(R,D,3),OLUNr=$P(R,D,4) .If 'OLUNr Do ..Set R=^HULP(%J,Node,CONSNr) ..Set sRec=Key_D_CONSNr_D_D_D_R .Else Do ..Set R=^HULP(%J,Node,CONSNr,"D",ORDNr,OLUNr) ..Set sRec=Key_D_CONSNr_D_ORDNr_D_OLUNr_D_R Quit ; UPDATE Do BLDSORT(Node) If $L(SelKey),'$D(^HULP(%J,"F",SelKey)) Do .If $O(^HULP(%J,"F",SelKey))'="" Set SelKey=$O(^HULP(%J,"F",SelKey)) .Else Set SelKey=$O(^HULP(%J,"F",SelKey),-1) Set HfdBold=$S($G(KritD("A","DETAIL"))'="S":"B",1:"") Do UPDATE^vhLIST(.LD,2) Quit ; BLDSORT(Node) New KLNr,CONSNr,ORDNr,ORDKey Kill ^HULP(%J,"F"),^HULP(%J,"K") Set CONSNr="" For Set CONSNr=$O(^HULP(%J,Node,CONSNr)) Quit:CONSNr="" Do .Set KLNr=$P(^HULP(%J,Node,CONSNr),D) .Set ORDKey=$$BLDIND(KLNr,CONSNr) .Set R=KLNr_D_CONSNr,^HULP(%J,"F",ORDKey)=R .Quit:'$$CHKCONS^EWORDST4($NA(KritD),CONSNr) .Quit:'$$CHKCUST^EWORDST4($NA(KritD),KLNr) .Set ORDNr="" .For Set ORDNr=$O(^HULP(%J,Node,CONSNr,"D",ORDNr)) Quit:ORDNr="" Do ..If '$G(KritD("O","CONSNR")) Quit:'$$INCLORD(CONSNr,ORDNr) ..Set R=KLNr_D_CONSNr,^HULP(%J,"K",ORDKey)=R ..Quit:$G(KritD("A","DETAIL"))="S" ..Set OLUNr="" ..For Set OLUNr=$O(^HULP(%J,Node,CONSNr,"D",ORDNr,OLUNr)) Quit:OLUNr="" Do ...If '$G(KritD("O","CONSNR")) Quit:'$$INCLLINE(CONSNr,ORDNr,OLUNr) ...Set R=KLNr_D_CONSNr_D_ORDNr_D_OLUNr,^HULP(%J,"K",$$BLDIND(KLNr,CONSNr,ORDNr,OLUNr,ORDKey))=R Quit ; INCLORD(CONSNr,ORDNr) New Ok,Detail,OLUNr If $D(KritD("O","ORDNR")) Set Ok=KritD("O","ORDNR")=ORDNr Else Do .If ","_$G(KritD("O","STAT"))_","[",3," Set Ok=$P(^ORDW("D",CONSNr),D,20)="B" Quit:Ok .Set Detail=$G(KritD("A","DETAIL")),Ok=Detail'="M" .If Detail="M" Do ..Set OLUNr="" ..For Set OLUNr=$O(^ORDW("IO",ORDNr,OLUNr)) Quit:OLUNr="" Set Ok=$$INCLLINE(CONSNr,ORDNr,OLUNr) Quit:Ok Quit Ok ; INCLLINE(CONSNr,ORDNr,OLUNr) New R,Ok,Detail,Marked Set Detail=$G(KritD("A","DETAIL")),Ok=Detail="A" If Detail="M" Do .If ","_$G(KritD("O","STAT"))_","[",3," Set Ok=$P(^ORDW("D",CONSNr,"D",ORDNr,OLUNr),D,2)="B" Quit:Ok .Set Ok=$G(^ORDW("IO",ORDNr,OLUNr))=CONSNr .Quit:'Ok .Set R=^ORDW("D",CONSNr,"D",ORDNr,OLUNr),Marked=$P(R,D,2) .Set:$G(KritD("A","DISPMODE"))'="K" Ok=Marked'="" .;Set Ok=Marked'="" Quit Ok ; BLDIND(KLNr,CONSNr,ORDNr,OLUNr,SortKey) New R,KlantInd,PostKode,VerzW,VerzW,Sort Set SortKey=$G(SortKey) If SortKey="" Do .Set Sort=$G(KritD("A","SORT"),"O") .If Sort'="O" Do ..Set KlantInd=^KK1(KLNr),SortKey=KlantInd_SortKey ..Set:Sort="C" SortKey=CONSNr_SortKey ..Quit:Sort="K" ..If Sort="P" Set R=^KKL(^KK1(KLNr),0),PostKode=$P(R,D,6),SortKey=PostKode_SortKey Quit ..If Sort="V" Do ...Set R=^ORDW("D",CONSNr),VerzW=$P(R,D,2) ...Set:VerzW="" R=^KKL(^KK1(KLNr),2),VerzW=$P(R,D,16) Set:VerzW="" VerzW="OD" ...Set SortKey=VerzW_SortKey .Set SortKey=SortKey_CONSNr_$G(ORDNr) .Set SortKey=$TR(SortKey," ","")_" " If $G(OLUNr) Set SortKey=SortKey_ORDNr_$E(10000+OLUNr,2,5) Quit SortKey ; CHKMENU(Menu,Aktie) Quit $$CHKMENU^EWORDST3(Menu,$G(Aktie)) ; RPLKL New R Set R=$$RAADPL^KLANT(KLNr,"O",1) Do REFRESH Quit ; RPLPR New R If PRNr Do .Set R=$$RAADPL^PRODUKT(PRNr,"O",1) .Do REFRESH Quit ; MODORD New R,Locals If ORDNr Do .Do STORE^vhTERMINA() .Set Locals("ORDNr")=ORDNr,Locals("Extern")=1,Locals("EwmsLink")=0 .Do DO^vhPROGRAM("FOE^KF9") .Do REFRESH^vhTERMINA() Quit ; UNMARK(CONSNr,blnTerugTrekkenVanuitWMS) New Delete,KLNr,SoftV,MultiGrp,ORDNr,ORDNrs Quit:'CONSNr Set R=$G(^ORDW("D",CONSNr)) Set KLNr=$P(R,D) If $L($P(R,D,20)),$P(R,D,20)'="W",$P(R,D,20)'="K" Quit ; Alleen indien nog niets verwerkt door WMS . Set R=$$^vhTXTPOP("EWORDST","NODELBADSTAT","",$$EXTNUM^vhDTyp(CONSNr,0,".",0),$P(^KKL(^KK1(KLNr),0),D,2),$P(R,D,20)) If $G(blnTerugTrekkenVanuitWMS) Do . Set R=0 // default false - vraagstelling enkel indien status = "W" . Set:$P(^ORDW("D",CONSNr),D,20)="W" R=$$^vhTXTPOP("EWORDST","TRTCONSNR","",$$EXTNUM^vhDTyp(CONSNr,0,".",0),$P(^KKL(^KK1(KLNr),0),D,2)) Else Set R=$$^vhTXTPOP("EWORDST","DELCONSNR","",$$EXTNUM^vhDTyp(CONSNr,0,".",0),$P(^KKL(^KK1(KLNr),0),D,2)) Quit:'R Set R=$G(^ORDW("D",CONSNr)) If $L($P(R,D,20)),$P(R,D,20)'="W",$P(R,D,20)'="K" Quit ; Extra controle . Set R=$$^vhTXTPOP("EWORDST","NODELBADSTAT","",$$EXTNUM^vhDTyp(CONSNr,0,".",0),$P(^KKL(^KK1(KLNr),0),D,2),$P(R,D,20)) ; Bepalen of meerdere picking groepen in automatisch mag Set MultiGrp=0 For SoftV="E",1:1:3 Set:$D(^ORDW("D",CONSNr,"S",SoftV)) MultiGrp=MultiGrp+1 Set Delete=MultiGrp'>1 ; Gelockt door andere gebruiker of Ugly picking Set:'$$LOCK(CONSNr) Delete=0,MultiGrp="'Gelockt door andere gebruiker'" Lock +^UGLYOrderPick(CONSNr):0 Else Set Delete=0,MultiGrp="'Gelockt door Ugly picker'" Set R=$G(^ORDW("D",CONSNr)) If Delete,$P(R,D,20)="W" Do ; Reeds doorgestuurd naar EWMS . For SoftV="E",1:1:3 Do:$D(^ORDW("D",CONSNr,"S",SoftV)) . . Set Delete=$$DELSEND(CONSNr,SoftV) If Delete Do . Set (ORDNr,ORDNrs)="" . For Set ORDNr=$O(^ORDW("D",CONSNr,"D",ORDNr)) Quit:ORDNr="" Set ORDNrs=ORDNrs_";"_ORDNr . Set $E(ORDNrs)="" . Do STORE^LOG("ORDW",CONSNr,"V",ORDNrs) . if $G(blnTerugTrekkenVanuitWMS) Do . . Do TERUGWMS(CONSNr) //--> http://www.pivotaltracker.com/story/show/2692086 . Else Do . . Do REMWMS(CONSNr) . Do REWRITE() Else Do . Set R=$$^vhTXTPOP("EWORDST","NODELCONSNR","",$$EXTNUM^vhDTyp(CONSNr,0,".",0),$P(^KKL(^KK1(KLNr),0),D,2),MultiGrp) Do UNLOCK(CONSNr) Quit ; DELSEND(CONSNr,SoftV) ; Verzenden aanvraag tot verwijderen aan het EWMS New ZendRef,WaitRef,WH,Ref Set ZendRef="O02" Set ZendRef("DATUM")=$H Set ZendRef("CONSNR")=CONSNr_$S(SoftV?1N:SoftV,1:"") Set WaitRef="C02" Set WaitRef("CONSNR")=ZendRef("CONSNR") Set WH=$$ZENDWAIT^EWRECW("ZendRef","WaitRef") Do GET^EWRECW(WH,"Ref") Quit $G(Ref("STATUS"))="CC" ; ConfirmCancel -> Verwijder // order terughalen vanuit het WMS --> http://www.pivotaltracker.com/story/show/2692086 TERUGWMS(CONSNr) #define Minuut 60 new DueOutTime,R Set R = ^ORDW("D",CONSNr) Set $piece(R,D,20)="" // status terug naar leeg Set DueOutTime = $P(R,D,3) Set $P(DueOutTime,",",1)=$$CALCDATE^vhDTyp($P(DueOutTime,",",1),"A",1) // dueouttime ophogen met één arbeidsdag Set $P(DueOutTime,",",2)=$P(DueOutTime,",",2)-(30*$$$Minuut) // dueouttime met 30min vervroegen If $P(DueOutTime,",",2)<(2*$$$Minuut) set $P(DueOutTime,",",2)=(2*$$$Minuut) // ervoor zorgen dat dueoutime op zijn minst 2min na middernacht is Set $P(R,D,3)=DueOutTime Set $P(R,D,5)=$$CALCDATE^vhDTyp($P(R,D,5),"A",1) // leverdatum ophogen met één arbeidsdag Set ^ORDW("D",CONSNr)=R Set (ORDNr,OLUNr,SubOLUNr,SubMAG)="" Kill ^ORDW("D",CONSNr,"S") ; softmagazijnen Kill ^ORDW("IW",CONSNr) ; index - wachtend For Set ORDNr=$O(^ORDW("D",CONSNr,"D",ORDNr)) Quit:ORDNr="" Do . Set $P(^ORDW("D",CONSNr,"D",ORDNr),D,1)="" // status order terug naar leeg . For Set OLUNr=$O(^ORDW("D",CONSNr,"D",ORDNr,OLUNr)) Quit:OLUNr="" Do . . Set $P(^ORDW("D",CONSNr,"D",ORDNr,OLUNr),D,2)="" // status orderlijn terug naar leeg . . For Set SubOLUNr=$O(^ORDW("D",CONSNr,"D",ORDNr,OLUNr,SubOLUNr)) Quit:SubOLUNr="" Do . . . Set $P(^ORDW("D",CONSNr,"D",ORDNr,OLUNr,SubOLUNr),D,2)="" // status suborderlijn terug naar leeg Quit DELOBJ(CONSNr) Goto REMWMS2 REMWMS(CONSNr) REMWMS2 New R,ORDNr,OLUNr,KLNr,MailId Quit:'$$LOCK(CONSNr) Set (ORDNr,OLUNr)="" Set R=^ORDW("D",CONSNr),KLNr=$P(R,D,1),MailId=$P(R,D,7) Kill ^ORDW("IK",KLNr,CONSNr),^ORDW("IW",CONSNr) 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 REMLINE(CONSNr,ORDNr,OLUNr) Kill ^ORDW("D",CONSNr) Do UNLOCK(CONSNr) Do PUT^EWLOG("I",$T(REMOVED)) Do:MailId DELOBJ^vhMAIL(MailId) Quit ; REMLINE(CONSNr,ORDNr,OLUNr) New R,OLNr,KLNr,MPRNr,KPRNr,Aantal,OrdAant,StockUpd Kill ^ORDW("IO",ORDNr,OLUNr) If $P(^ORDW("D",CONSNr,"D",ORDNr,OLUNr),D,2)'="B" Do .Set KLNr=$P(^ORDW("D",CONSNr),D,1) .Set OLNr=^ORD("IU",ORDNr,OLUNr),R=^KOD(KLNr,"F",ORDNr,OLNr),OrdAant=$P(R,D,3) .Do:OrdAant>0 PickingAnnulatie^EWORDS2(ORDNr,OLUNr,CONSNr) .Set StockUpd=$P(R,D,14)'["S" Set:StockUpd StockUpd=$P(R,D,14)'["Z" .If $P(R,D,2),'$$MAGHANDEL^PRODUKT2($P(R,D,2)) Set StockUpd=0 .Quit:'StockUpd .Set R=^ORDW("D",CONSNr,"D",ORDNr,OLUNr) .Set MPRNr=$P(R,D,1),Aantal=$P(R,D,4) .Quit:Aantal<0 .If $D(^PRLINK("D",MPRNr)) Do ..Set KPRNr="" ..For Set KPRNr=$O(^PRLINK("D",MPRNr,KPRNr)) Quit:KPRNr="" Do ...Do ADDRES^PRODUKT4(KPRNr,-Aantal*$P(^PRLINK("D",MPRNr,KPRNr),D)) .Do ADDRES^PRODUKT4(MPRNr,-Aantal) ;Moederprodukt Kill ^ORDW("D",CONSNr,"D",ORDNr,OLUNr) Quit ; SENDALL New R,Next,CONSNr,KLNr Quit:'$$WMSACTIV^EWRECS() Quit:$$^vhTXTPOP("EWORDST","SENDALLWMS")'="Z" For Next=1:1 Quit:'$D(^HULP(%J,"L",Next)) Do .Set R=^HULP(%J,"L",Next) .Quit:$L($P(R,D,3)) Quit:$L($P(R,D,24)) .Set CONSNr=$P(R,D,2),KLNr=$P(R,D,5) .Do SENDCONS(CONSNr,1) Set:$G(KritD("O","STAT"))=1 KritD("O","STAT")=2 Set:$G(KritE("O","STAT"))=1 KritE("O","STAT")=2 Set:$G(KritF("O","STAT"))=1 KritF("O","STAT")=2 Do REWRITE() Quit ; SENDCONS(CONSNr,NoRefr) New R,WMSStat,Manueel,ORDNr,OLUNr,PRNr,KLNr,MailId Set R=^ORDW("D",CONSNr),WMSStat=$P(R,D,20) If "K"[WMSStat Do .If WMSStat="K",'$$ASK^vhWACHTW("BOEKHOUD.","","",0) Quit .Quit:'$$LOCK(CONSNr) Quit:'$$WMSACTIV^EWRECS() .Set Manueel="" .If WMSStat="K" Do ..Do CHKLEVT^EWORDST4(CONSNr) ..Set R=^ORDW("D",CONSNr),$P(R,D,20)="",^ORDW("D",CONSNr)=R,KLNr=$P(R,D),MailId=$P(R,D,7),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 R=^ORDW("D",CONSNr,"D",ORDNr,OLUNr),PRNr=$P(R,D) ....Set:1[Manueel Manueel=$$OPSLMAN^PRODUKT2(PRNr) ..If MailId Do ...If '$G(CUserId) New CUserId Set CUserId=$P($$DEVUSER^vhUSER($$IO^cQ5),";") Set:'CUserId CUserId=3 ...Do DELUSERS^EWORDS3(MailId) .Do:Manueel UITLEV^EWORDS2(CONSNr,1) .Do:'Manueel SEND^EWORDSW(CONSNr) .Do UNLOCK(CONSNr) .Do:'$G(NoRefr) REWRITE() Quit ; OPBON New R,EWStat,EWProb If CONSNr Do .Quit:'$$LOCK(CONSNr) .Set R=^HULP(%J,Node,CONSNr),EWStat=$P(R,D,20),EWProb=$P(R,D,21) .If EWStat'="A",EWStat'="C" Do Quit ..Set R=$$^vhTXTPOP("EWORDST","AFMELDING","",$$EXTNUM^vhDTyp(CONSNr,0,".",0)) .If EWStat="A" Quit:'$$^vhTXTPOP("EWORDST","FORCECONS","",$$EXTNUM^vhDTyp(CONSNr,0,".",0)) .Do PUT^EWLOG("I",$T(FORCEOPBON)) .Do BON^EWBON(CONSNr) .Do ..If $D(^ORDW("D",CONSNr)),$P(^ORDW("D",CONSNr),D,20)'="B" Quit ..If $D(^KU1(CONSNr,"F")),$P(^KU1(CONSNr,"F"),D,3)'="T" Do ...Do BON^DCPRINT2($LB(CONSNr)) ...Job KLSettings^FaxMail2("","L",CONSNr) ..;Do EXTERN^FLOWBON6(CONSNr,,1) ..Do REWRITE(1) .Do UNLOCK(CONSNr) Quit ; INIT Set %J=$$%J^vhRtn1(),Node="C1",OldCONSNr="" Kill ^HULP(%J) Do INIT^vhLIST("EWORDST","LIJST",.LD) Set LD("UPINIT")="X`Set Key=""""" Set LD("UPTRAV")="D`TRAVERS^EWORDST" Set LD("UPCOMP")="@`sRec=$G(^HULP(%J,""L"",sCnt))" Set LD("UPSEL")="@`Key=SelKey" Set SelKey="",ChkData=1 Quit ; INITKR Set Kriteria("K","KLNR")="" Set Kriteria("O","ORDNR")="" Set Kriteria("O","CONSNR")="" Set Kriteria("O","DOUT")="" Set Kriteria("O","DVRZ")="" Set Kriteria("O","VERZ")="" Set Kriteria("O","STAT")="" Set Kriteria("A","DETAIL")="" Set Kriteria("A","REFRESH")="" Set Kriteria("A","SORT")="" Quit ; HOOFDING New SubTitel,sFL Set SubTitel="" If $G(KritD("A","DISPMODE"))="D" Set SubTitel="Pickdetails" Else If $G(KritD("A","DISPMODE"))="C" Set SubTitel="Leveringsbon" Else If $G(KritD("A","DISPMODE"))="K" Set SubTitel="Klant" Else Set SubTitel="Selectie" If $D(KritF("K","KLNR")) Set SubTitel=SubTitel_" (1 klant)" Set sFL(1)=$S($G(CONSNr):$G(^ORDW("D",CONSNr)),1:"") Do DISPLAY^vhScherm("EWORDSTH",,,,,1) Quit ; REWRITE(Fetch,Xecute) Set Fetch=$G(Fetch,1),Xecute=$G(Xecute) Do HOOFDING If '$L(Xecute) Do .Do REFRESH^vhLIST(.LD,"H") .Set FP=FP+100\100*100+1 .Write @FMTCL,@F,@F1 Else Xecute Xecute Write @FMTCL Do STORE^vhTERMINA() Do:Fetch .Set FP=140 .Write @F,@F2 .Set FP=160 .Write @FCH,@F,@FMTK,"*** I'm thinking ***",@FMTk .Kill ^HULP(%J,"SF") .Merge ^HULP(%J,"SF")=KritF .Do FETCH^EWORDST4(%J,Node) Do REFRESH^vhTERMINA() Set NextRefr=$G(KritD("A","REFRESH")) Set:NextRefr NextRefr=NextRefr+$P($H,",",2) Do VWSELECT Quit ; MACRO(Macro,Repaint) New KritTyp Set Macro=$G(Macro) Quit:Macro'?.N If Macro="" Do .Set FP=2201 .Write @F,@F1 .Set Macro=$$SELMACRO() If $L(Macro) Do .If Macro'=0,'$D(^EWSEL("ORDST","M"_Macro)) Quit .Do INITKR .Set KritTyp="" .For Set KritTyp=$O(Kriteria(KritTyp)) Quit:KritTyp="" Do ..Set Kriteria="" ..For Set Kriteria=$O(Kriteria(KritTyp,Kriteria)) Quit:Kriteria="" Do ...Set R=$G(^EWSEL("ORDST","M"_Macro,KritTyp,Kriteria)) ...Quit:R="" ...Xecute:"""$"[$E(R) "Set R="_R ...Set Kriteria(KritTyp,Kriteria)=R .Do:$G(Repaint) REPAINT^vhScherm("") Quit ; SELMACRO() New zb,Macro,Count Set Macro="" For Set Macro=$O(^EWSEL("ORDST",Macro)) Quit:Macro="" Do .Set Macro("F",$E(Macro,2,99))=^EWSEL("ORDST",Macro) Set Macro="",Count=0 For Set Macro=$O(Macro("F",Macro)) Quit:Macro="" Do .Set R=Macro("F",Macro) .If $L(R),"""$"[$E(R) Xecute "Set R="_R .Set R=Macro_"`"_R,Count=Count+1,Macro(Count)=R Kill Macro("F") Set Macro=$$WILD^vhPOPUP("C;C","OK1-","",.Macro) If 'Macro,zb'="CANC" Set Macro=0 Quit Macro ; GETMACRO(Select) New Macro If $G(Select) Do .Set Macro=$$SELMACRO() Else Do .Set Macro=$$SCROLL^vhLIST(.LD,,2) .Do GETREFS(LD("SELECT")) If $L(Macro),$D(^EWSEL("ORDST","M"_Macro))!(Macro=0) Do .Do SELEDIT(Macro) .Set Input="" Else Set Input=Macro Set:Input="-" Input="CANC" Quit ; SAVEEXEC If %SC Do .If $D(Kriteria("O","DOUT")),'$P(Kriteria("O","DOUT"),",",2) Set Kriteria("O","DOUT")=$P(Kriteria("O","DOUT"),",") .If $D(Kriteria("O","DVRZ")),'$P(Kriteria("O","DVRZ"),",",2) Set Kriteria("O","DVRZ")=$P(Kriteria("O","DVRZ"),",") .If $D(Kriteria("A","DETAIL")),Kriteria("A","DETAIL")="" Set Kriteria("A","DETAIL")="S" .If $D(Kriteria("A","SORT")),Kriteria("A","SORT")="" Set Kriteria("A","SORT")="C" Quit ; RUBREXEC New RubrName,Refresh If $E(X)="M" Do MACRO($E(X,2,99),1) Quit Set RubrName=$S(X:$$EDITID^vhScherm(X),1:"") If $L(RubrName) Do .If RubrName="KLANT" Do ..New KLNr ..Set X="",KLNr=$$SELECT^KLANT6() ..Quit:'KLNr ..Set Refresh=$G(Kriteria("A","REFRESH")) ..Kill Kriteria("K","KLNR") ..Kill Kriteria("O","ORDNR") ..Kill Kriteria("O","CONSNR") ..Kill Kriteria("A") ..Set Kriteria("K","KLNR")=KLNr,X="-" ..Set:Refresh Kriteria("A","REFRESH")=Refresh .If RubrName="ORDER" Do ..New ORDNr ..Set X="",ORDNr=$$SELECT^FLOW("KOD","KO1",1,1) ..Quit:'ORDNr ..Set Refresh=$G(Kriteria("A","REFRESH")) ..Kill Kriteria("K","KLNR") ..Kill Kriteria("O","ORDNR") ..Kill Kriteria("O","CONSNR") ..Kill Kriteria("A") ..Set Kriteria("O","ORDNR")=ORDNr,X="-" ..Set:Refresh Kriteria("A","REFRESH")=Refresh .If RubrName="UITLEV" Do ..New CONSNr ..Set X="" ..For Set CONSNr=$$SELECT^EWORDW() Quit:'CONSNr Quit:$D(^ORDW("D",CONSNr)) ..Quit:'CONSNr ..Set Refresh=$G(Kriteria("A","REFRESH")) ..Kill Kriteria ..Set Kriteria("O","CONSNR")=CONSNr,X="-" ..Set:Refresh Kriteria("A","REFRESH")=Refresh Set:X="-" %SC=1 Quit ; POPUP(PopRef,Value,MultSel,Zonder,Display) New R,Position,Titel,TempVal If '$G(Display) Do .Set Value=$TR(Value,",\",";;"),MultSel=$S($G(MultSel):"M",1:""),Zonder=$S($G(Zonder):"Z",1:"") .Set FP=2201 .Write @F,@F1 .Set Position=$P(sFR,"`",5) .Do ..Quit:Value="" Quit:'$D(^RES("EWORDST","PI",PopRef,"D",$P(Value,";"))) ..Set Position=Position-$P(^RES("EWORDST","PI",PopRef,"D",$P(Value,";")),"`") .Set Position=Position+$S($L(Value):$S($L(Zonder):-1,1:1),1:"") .Set Position=Position_";"_$P(sFR,"`",6) .Set Titel=$P(^RES("EWORDST","PI",PopRef),"`") .Set Value=$$PI^vhPOPUP(Position,MultSel_Zonder_"O1-",Titel,"EWORDST",PopRef,Value) Else Do .Set TempVal="" .If $L(Value,",")>1 Do ..For Quit:Value="" Do ...Set R=$P(^RES("EWORDST","PI",PopRef,"D",$P(Value,",")),"`",3) ...Set TempVal=TempVal_","_$S($L(R):R,1:$P(Value,",")),Value=$P(Value,",",2,99) ..Set $E(TempVal)="",Value=TempVal .Quit:Value="" Quit:'$D(^RES("EWORDST","PI",PopRef,"D",Value)) .Set Value=$P(^RES("EWORDST","PI",PopRef,"D",Value),"`",2) Quit Value ; GETREFS(Select) New R Set R=$G(^HULP(%J,"L",Select)),SelKey=$P(R,D) Set:$L(SelKey) R=$G(^HULP(%J,"K",SelKey)) Set KLNr=$P(R,D),CONSNr=$P(R,D,2),ORDNr=$P(R,D,3),OLUNr=$P(R,D,4) Set PRNr="" Set:OLUNr PRNr=$P(^HULP(%J,Node,CONSNr,"D",ORDNr,OLUNr),D) Quit ; LOCK(CONSNr) New %TC Do ADD^vhLock($NA(^ORDW("D",CONSNr))) Do:'%TC LDISP^vhLock($NA(^ORDW("D",CONSNr)),"Consolidatie "_CONSNr) Quit %TC ; UNLOCK(CONSNr) Do REMOVE^vhLock($NA(^ORDW("D",CONSNr))) Quit ; LDTITEL() New Titel,Detail Set Detail=$G(KritD("A","DETAIL"),"S") Set Titel="LevBonNr| WMS |Klant"_$S(Detail'="S":" - Korttekst",1:"") Set Titel=Titel_$J("",42-$L(Titel)) If Detail="S" Set Titel=Titel_" |Vzw|Datum|Leveringsadres |#L" Else Set Titel=Titel_"M|#Gevraagd| #Geraapt|#Verschil| |#C" Quit Titel ; ACTIVATE Do:$P($$ACTIVATE^EWRECS(),D,2) DISPLAY^vhScherm("EWORDST",,,,,1),HOOFDING Quit ; IsAventosBon(CONSNr) ; Controleert of het een order is met aventosbakken N bl I '$D(CONSNr) Quit 0 Set bl=##class(BL.MB.UGLYPicking.Aventosbak.Aventosbak).Instantiate() Quit bl.OrdHasAventos(CONSNr) PrintAventos(CONSNr) ;afdrukken van info aventosbakken van een order N bl Quit:'$D(CONSNr) Set bl=##class(BL.MB.UGLYPicking.Aventosbak.Aventosbak).%New() Quit:'bl.OrdHasAventos(CONSNr) Set UpdateOK=$$^vhTXTPOP("SYSTEM","JANEEN","","Herberekenen aventosbakken?") If UpdateOK Do bl.InstellenBakken(CONSNr) ;set bl.Debug=1 Do bl.AfdrukkenBakken(CONSNr,0) h 1 Do bl.AfdrukkenBakken(CONSNr,1) Do WARN^vhTXTPOP("Aventosinfo van bon "_CONSNr_" afgedrukt op printer LEVBON_PS","") Quit GERAAPT New R,DOutDate,DOutTime Do:$$ASK^vhWACHTW("MAGAZIJN",,,0) . Set R=$P(sFL(1),D,3),DOutDate=$P(R,","),DOutTime=$P(R,",",2) . Set FP=2201 . Write @F,@F1 . For Do FIELD^vhScherm("EWORDSTV","DOUTDATE") Quit:X'?.N Do FIELD^vhScherm("EWORDSTV","DOUTTIME") Quit:X'="-" . Set $P(sFL(1),D,5)=$$CALCZDAT($P(sFL(1),D,2),$P(sFL(1),D,3)) . Set R=DOutDate_","_DOutTime,$P(sFL(1),D,3)=R . Do DISPVAL^vhScherm("VERZDATUM") Quit ; MODVERZW ; Wijzigen van de verzendwijze en dueouttime New %SC,C,R,sFL,WMSStat,OldRec Set (OldRec,R)=^ORDW("D",CONSNr),WMSStat=$P(R,D,20) If ("\\W\K\P\"[(D_WMSStat_D)) Do .Quit:'$$LOCK(CONSNr) .Set sFL(1)=OldRec .Do EDIT^vhScherm("EWORDSTV",,,,,,3) .If %SC Do ..If WMSStat="W" Quit:'$$WMSACTIV^EWRECS() ..Quit:sFL(1)=OldRec ; Niets veranderd ..Set ^ORDW("D",CONSNr)=sFL(1) ..;Quit:WMSStat'="W" ; Reeds doorgestuurd - gewijzigd PV 4/06/2006, ..For SoftV="E",1:1:3 Do:$P($G(^ORDW("D",CONSNr,"S",SoftV)),D,1)="W" ; allen waaraan nog niet begonnen is ...Do VERZZEND(CONSNr,SoftV,sFL(1)) .Do REWRITE(1) .Do UNLOCK(CONSNr) Quit VERZZEND(CONSNr,SoftV,CONSRec) ; Verzenden naar EWMS van de gewijzigde verzendwijze en dueouttime ; CONSRec optioneel New C Set:$G(CONSRec)="" CONSRec=^ORDW("D",CONSNr) Set C="O03" Set C("CONSNR")=CONSNr_$S(SoftV?1N:SoftV,1:"") Set C("LEVDAT")=$P(CONSRec,D,5) Set C("DUEOUTTIME")=$P(CONSRec,D,3) Set C("VERZENDW")=$$VerzendWijzeCompact^EWORDSW($P(CONSRec,D,2),$$ISORGAL^FLOWCHK("L",CONSNr)) Set C("VERZENDZONE")=$P(CONSRec,D,4) Do ZEND^EWRECS("C") Do PUT^EWLOG("I",$T(MODVERZEND)) Quit Quit ; CALCDOUT(VerzW) New R,DOutDate,DOutTime Set R=^RES("KLANT","PI","VERZENDWIJZE","D",$P(VerzW,";")),DOutDate=0,DOutTime=$P(R,"`",4) If DOutTime Set DOutDate=$P($H,",") Set:$P($H,",",2)>$P(R,"`",5) DOutDate=DOutDate+1 Quit DOutDate_","_DOutTime ; CALCZDAT(VerzW,DOutDate) New VerzDat Set DOutDate=$P($G(DOutDate,$$CALCDOUT(VerzW)),",") Set VerzDat=$P(^RES("KLANT","PI","VERZENDWIJZE","D",$P(VerzW,";")),"`",7) Set VerzDat=DOutDate+VerzDat Set VerzDat=VerzDat+$S(VerzDat#7=2:2,VerzDat#7=3:1,1:0) Quit VerzDat ; VERZZ(VerzZ,Display) New Position If '$G(Display) Do .Set FP=2201 .Write @F,@F1 .Set Position=$P(sFR,"`",5) Set:$L(VerzZ) Position=Position-$P(^RES("EWORDS","PI","VERZENDZONE","D",VerzZ),"`") .Set Position=Position+17_";"_$P(sFR,"`",6) .Set VerzZ=$$PI^vhPOPUP(Position,"O1-","Verzendzone","EWORDS","VERZENDZONE",VerzZ) Else Set:$L(VerzZ) VerzZ=$P(^RES("EWORDS","PI","VERZENDZONE","D",VerzZ),"`",2) Quit VerzZ ; VERZW(X,MultSel,Compact) New zb,DOutTime Set MultSel=$G(MultSel),Compact=$G(Compact,1),FP=2201 Write @F,@F1 Set X=$$VERZW^KLANT(X,MultSel,Compact) If zb'="CANC",X'=$P(sFL(1),D,2) Do .Set $P(sFL(1),D,2)=X,%SC=1 .Set DOutTime=$$CALCDOUT(X) .Do PUT^vhScherm("DOUTDATE",$P(DOutTime,",")),PUT^vhScherm("DOUTTIME",$P(DOutTime,",",2)) .Do PUT^vhScherm("VERZZONE",$P(^RES("KLANT","PI","VERZENDWIJZE","D",$P(X,";")),"`",6)) Quit ; ; Is de levering beloofd? Beloofd(CONSNr) New R,Beloofd,KLNr,ORDNr Set R=^ORDW("D",CONSNr),KLNr=$P(R,D),(Beloofd,ORDNr)="" For Set ORDNr=$O(^ORDW("D",CONSNr,"D",ORDNr)) Quit:ORDNr="" Do Quit:$L(Beloofd) . Set R=$G(^KOD(KLNr,"F",ORDNr,1)) . Set:$L($P(R,D,16)) Beloofd="B" Set:Beloofd="" Beloofd=$$AutoBelViaBon^EWBON4(CONSNr),Beloofd=$S(Beloofd:"N",1:"") Quit Beloofd ; ; Beloofd, remours of vooruitbetaling BRV(CONSNr) New R,BRV,KLNr,Rembours,VooruitBetaling Set BRV=$$Beloofd(CONSNr) Do:BRV="" . Set R=^ORDW("D",CONSNr),KLNr=$P(R,D) . Set R=^KKL(^KK1(KLNr),3),Rembours=$P(R,D),VooruitBetaling=$P(R,D,2) . Set BRV=$S(Rembours:"R",VooruitBetaling:"V",1:"") Quit BRV ; SOFTVOL(Lijst) ; Formatering van "EU" code in de lijst Set Result=$S(Lijst'=$TR(Lijst,"E123",""):"E",1:" ") Set:$L($TR(Lijst,"E123","")) Result=Result_"U" Quit Result SOFTVCON(CONSNr) ; Formatering van de "EU" code in de lijst Set Result=$S($D(^ORDW("D",CONSNr,"S","E"))!($O(^ORDW("D",CONSNr,"S",""))?1N):"E",1:" ") Set:$O(^ORDW("D",CONSNr,"S","E"))'="" Result=Result_"U" Quit Result REMOVED ;"Bon verwijderd: "_CONSNr_";"_$G(QU) MODVERZEND ;"Verzendwijze gewijzigd: "_CONSNr_";"_$G(QU) FORCEOPBON ;"Pickbon geforceerd op bon gezet: "_CONSNr_";"_$G(QU)