EWORDST2 ;E'WMS Consolidatie status (Detail) [ 07/01/2003 1:37 PM ] VWDTL(CONSNr) New ORDNr,OLUNr,SOLNr Kill KritD Merge KritD=KritF Set KritD("O","CONSNR")=CONSNr Set KritD("K","KLNR")=$P(^ORDW("D",CONSNr),D) Set KritD("A","DETAIL")="M" Merge KritD("A")=KritE("A") Kill KritD("O","STAT") Set:$D(KritE("A","REFRESH")) KritD("A","REFRESH")=KritE("A","REFRESH") Set KritD("A","DISPMODE")="D" Do INIT Do FETCH Do REFRESH Quit REFRESH Do HOOFDING^EWORDST Do WRITE^vhLIST(.LDTL) Quit COMMSPEC ; Commandloop specifiek Set Input=$$SCROLL^vhLIST(.LDTL) Do GETREFS Quit GETREFS New Rec Set Rec=^HULP(%J,"DTL",LDTL("SELECT")) Set CONSNr=$P(^HULP(%J,"DTL"),D) Set KLNr=$P(^HULP(%J,"DTL"),D,2) Set ORDNr=$P(Rec,D,15) Set OLUNr=$P(Rec,D,16) Set PRNr=$P(Rec,D,1) Quit INIT Kill ^HULP(%J,"DTL") Set ^HULP(%J,"DTL")=CONSNr_D_KritD("K","KLNR") Do INIT^vhLIST("EWORDST","DTL",.LDTL) Quit FETCH New Rec,ORDNr,OLUNr,SOLNr,Cnt,OLRec,SOLRec,MemPRNr,MemORDNr,HasKind Set (ORDNr,OLUNr,SOLNr)="" Kill ^HULP(%J,"DTL","SRT") Set Cnt=0 For Set ORDNr=$O(^ORDW("D",CONSNr,"D",ORDNr)) Quit:ORDNr="" Do .Set MemORDNr=ORDNr .For Set OLUNr=$O(^ORDW("D",CONSNr,"D",ORDNr,OLUNr)) Quit:OLUNr="" Do ..Set OLRec=^ORDW("D",CONSNr,"D",ORDNr,OLUNr) ..Set PRNr=$P(OLRec,D,1) ..Set MemPRNr="" ..Set HasKind=$D(^PRLINK("D",PRNr)) ..If HasKind Do ...Set $P(OLRec,D,1,2)=PRNr ...If $P(OLRec,D,11)="" Do ....Set $P(OLRec,D,11)=OLUNr ....Set:$O(^ORDW("D",CONSNr,"D",ORDNr,OLUNr,"")) $P(OLRec,D,11)=$P(^($O(^ORDW("D",CONSNr,"D",ORDNr,OLUNr,""))),D,11) ...Set $P(OLRec,D,11)=OLUNr ...Set $P(OLRec,D,11)=$TR($J($P(OLRec,D,11),6)," ",0)_$$SORTKEY^PRODUKT(PRNr) ...Set $P(OLRec,D,11)=$P(OLRec,D,11)_$J("",56-$L($P(OLRec,D,11))) ...Set $P(OLRec,D,11)=$P(OLRec,D,11)_$TR($J(ORDNr,6)," ",0)_$TR($J(OLUNr,6)," ",0)_$TR($J("",6)," ",0) ...Do BLDSORT(OLRec,0,.MemORDNr,.MemPRNr,.Cnt) ..For Set SOLNr=$O(^ORDW("D",CONSNr,"D",ORDNr,OLUNr,SOLNr)) Quit:SOLNr="" Do ...Set SOLRec=^ORDW("D",CONSNr,"D",ORDNr,OLUNr,SOLNr) ...Set $P(SOLRec,D,11)=OLUNr ...Set $P(SOLRec,D,11)=$TR($J($P(SOLRec,D,11),6)," ",0)_$$SORTKEY^PRODUKT(PRNr) ...Set $P(SOLRec,D,11)=$P(SOLRec,D,11)_$J("",56-$L($P(SOLRec,D,11))) ...Set $P(SOLRec,D,11)=$P(SOLRec,D,11)_$TR($J(ORDNr,6)," ",0)_$TR($J(OLUNr,6)," ",0)_$TR($J(SOLNr,6)," ",0) ...Do BLDSORT(SOLRec,HasKind,.MemORDNr,.MemPRNr,.Cnt,$P($G(^HULP(%J,Node,CONSNr,"D",ORDNr,OLUNr)),D,3)) Set Cnt=0,SortKey="" For Set SortKey=$O(^HULP(%J,"DTL","SRT",SortKey)) Quit:SortKey="" Do .Set Rec=^HULP(%J,"DTL","SRT",SortKey),Cnt=Cnt+1 .Set ^HULP(%J,"DTL",Cnt)=Rec Kill ^HULP(%J,"DTL","SRT") Set LDTL("MAX")=Cnt Quit BLDSORT(Rec,HasKind,MemORDNr,MemPRNr,Cnt,Status) New SortKey,PRNr ;MemORDNr, MemPRNr en Cnt worden opgeroepen via .Local Set Cnt=Cnt+1 Set PRNr=$P(Rec,D) Set $P(Rec,D,15)=ORDNr Set $P(Rec,D,16)=OLUNr Set $P(Rec,D,17)=SOLNr Set $P(Rec,D,20)=HasKind Set $P(Rec,D,21)=MemORDNr Set $P(Rec,D,22)=$S(MemPRNr'=PRNr:$S(HasKind:"->",1:"")_$P($G(^KPR(PRNr,0),"ONBEKEND"),D),1:"") Set $P(Rec,D,23)=$G(Status) ;(Terugname of zonder WMS) Set MemORDNr="" Set MemPRNr=PRNr Set SortKey=$P(Rec,D,11) For Quit:'$D(^HULP(%J,"DTL","SRT",SortKey)) Set SortKey=SortKey+.1 Set ^HULP(%J,"DTL","SRT",SortKey)=Rec Quit ; SHOWVERW(CONSNr) New R,KLNr,VerzW,DOutTime,VerzZ,Aanmaak,OpBon,WMSStat,ToWMS,Picked,Node,Controled New Klant,Bon,Verz,SoftV,SoftVRec,First,Txt,Cnt Quit:'CONSNr Quit:'$D(^ORDW("D",CONSNr)) Set R=^ORDW("D",CONSNr),KLNr=$P(R,D),VerzW=$P($P(R,D,2),"#"),DOutTime=$P(R,D,3),VerzZ=$P(R,D,4) Set Aanmaak=$P(R,D,18),OpBon=$P(R,D,19),WMSStat=$P(R,D,20),ToWMS=$P(R,D,22),Picked=$P(R,D,23) Set R=^KKL(^KK1(KLNr),0) Set Len=12,Txt=0 Set Txt=Txt+1,Txt(Txt)="Klant",$E(Txt(Txt),Len)=": "_KLNr_" "_$P(R,D,2) Set Txt=Txt+1,Txt(Txt)="Bonnr",$E(Txt(Txt),Len)=": "_$$EXTNUM^vhDTyp(CONSNr,0,".",0) Set Txt=Txt+1,Txt(Txt)="Verzending",$E(Txt(Txt),Len)=": "_VerzW_$S($L(VerzW):" "_^RES("KLANT","PI","VERZENDWIJZE","D",VerzW,"N"),1:"") Set Txt=Txt+1,Txt(Txt)="&S" Set Txt=Txt+1,Txt(Txt)="Aangemaakt",$E(Txt(Txt),Len)=": "_$$FMTDT^vhDTyp(Aanmaak) Set Txt=Txt+1,Txt(Txt)="Naar WMS",$E(Txt(Txt),Len)=": "_$$FMTDT^vhDTyp(ToWMS) Set Txt=Txt+1,Txt(Txt)="Due-out ",$E(Txt(Txt),Len)=": "_$$FMTDT^vhDTyp(DOutTime) Set (ORDNr,OLUNr,SOLNr)="" ;Aantal lijnen 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 .. For Set SOLNr=$O(^ORDW("D",CONSNr,"D",ORDNr,OLUNr,SOLNr)) Quit:SOLNr="" Do ... Set SoftV=$P(^(SOLNr),D,13) ... Set:$L(SoftV) Cnt(SoftV)=$G(Cnt(SoftV))+1 Set SoftV="" Set Txt=Txt+1,Txt(Txt)="Picking" For Set SoftV=$O(^ORDW("D",CONSNr,"S",SoftV)) Quit:SoftV="" Do . Set SoftVRec=^ORDW("D",CONSNr,"S",SoftV) . Set Label=$P("EWMS;Ugly;Langgoed;Halux;Orgalux;Groep 1;Groep 2;Groep 3",";",$F("EULHO123",SoftV)-1) . Set Txt=Txt+1,Txt(Txt)=" "_Label,$E(Txt(Txt),Len)=": #L="_$J($G(Cnt(SoftV)),2) . Set $E(Txt(Txt),20)=" B="_$$EXTTIME^vhDTyp($P(SoftVRec,D,3)) . Set $E(Txt(Txt),29)=" E="_$$EXTTIME^vhDTyp($P(SoftVRec,D,4)) Set Txt=Txt+1,Txt(Txt)=" " Set Txt=Txt+1,Txt(Txt)="Op bon",$E(Txt(Txt),Len)=": "_$$FMTDT^vhDTyp(OpBon) ; Controle bon Set Node=$$NODE^FLOWBON(CONSNr) Do:$D(^KUL(KLNr,Node,CONSNr)) . Set Controled=$P(^KUL(KLNr,Node,CONSNr,1),D,34) . Quit:'Controled . Set Txt=Txt+1,Txt(Txt)="Controle",$E(Txt(Txt),Len)=": "_$$USERNAME^vhUSER($P(Controled,"#"))_" "_$$FMTDT^vhDTyp($P(Controled,"#",2)) Set R=$$WILD^vhTXTPOP("C;C","Overzicht","Txt") Quit