Index: TRANSPE.mac.rou =================================================================== diff -u -r29059 -r44292 --- TRANSPE.mac.rou (.../TRANSPE.mac.rou) (revision 29059) +++ TRANSPE.mac.rou (.../TRANSPE.mac.rou) (revision 44292) @@ -8,11 +8,17 @@ Do @R Quit ; - ; ABX + ; GLS 5036(VervRef) Do ##class(DOM.TRANSP.event.EventRaiser).RitGeslotenEvent(VervRef) Do VERWERK^TRANSPEA(VervRef) Quit + + ; GEBRUDER WEISS +7186(VervRef) + Set lbAdressen=$lb("rdl@vanhoecke.be","nra@vanhoecke.be") + Do ExportEnMail^TRANSPExportPalleten(VervRef,lbAdressen) + Quit ; ; Default verwerking DEFAULT(VervRef) Index: TRANSPExportPalleten.mac.rou =================================================================== diff -u --- TRANSPExportPalleten.mac.rou (revision 0) +++ TRANSPExportPalleten.mac.rou (revision 44292) @@ -0,0 +1,135 @@ +#include vhLib.Macro +#include BL.Derde.KlantSpecifiek +#include BL.Derde.LevSpecifiek +#include Prod.Product + + +ExportEnMail(TranspNr,lbAdressen) + New FileNaam,Pad,PadEnFile,Subject,Body + Set FileNaam="Transport "_TranspNr_".txt" + Set Pad="C:\SCRATCH" + Set PadEnFile=$$ExportNaarBestand(TranspNr,Pad,FileNaam) + Quit:PadEnFile="" + Set lbAttachments=$LB($LB(PadEnFile)) + Set Subject="Transportlijst "_TranspNr + Set Body="Afsluiting van transport "_TranspNr_", details zie bijlag."_$$$CRLF + Set Mail=$$SendMiniMail^vhLib.Mail("bbe@VANHOECKE.BE",lbAdressen,Subject,Body,,,,,lbAttachments) + Do DELFILE^vhDEV(PadEnFile) + Do ##class(vhLib.Logger).%New("Transport").Info("Mail Transportlijst", "Mail van transport "_TranspNr_" naar "_$$ListToPieces^vhLib(lbAdressen)) + Quit + +ExportNaarBestand(TranspNr,Pad,FileNaam) + New %J,Dev,D + + Set D="\" + Quit:'$G(TranspNr) "" + Do Init + Quit:'$D(^HULP(%J)) "" + Set Dev=$$OPEN^vhDEV(Pad,FileNaam,"W","M") + Use Dev + Do WriteHeader + Do WriteLijnen + Do CLOSE^vhDEV(Dev) + Quit $$FULLPAD^vhDEV(Pad,FileNaam) + +Init + Set %J=$$%J^vhRtn1() + Kill ^HULP(%J) + Do OphalenTransport(TranspNr) + Quit + +WriteLijnen + Set ORDNr="" + For Set ORDNr=$O(^HULP(%J,"O",ORDNr)) Quit:ORDNr="" Do + . Set OLNr="" + . For Set OLNr=$O(^HULP(%J,"O",ORDNr,"L",OLNr)) Quit:OLNr="" Do + . . Set lb=^HULP(%J,"O",ORDNr,"L",OLNr) + . . Set PRNr=$LI(lb,4) + . . Write $LI(lb,10),*9 + . . Write $LI(lb,8),*9 + . . Write $LI(lb,9),*9 ; EDINr + . . Write ORDNr,*9 + . . Write $LI(lb,7),*9 ; VHOrdRef + . . Write $LI(lb,1),*9 ; BONNr + . . Write PRNr,*9 + . . Write $$$PRGet($$$KortTekst),*9 + . . Write $LI(lb,5),*9 + . . If $D(^HULP(%J,"O",ORDNr,"P")) Write $LI(lb,6) + . . Write *9 + . . Write $P($$GENTYP^HAD(PRNr),"\",1,2) + . . Write ! + Q + + +OphalenTransport(TranspNr) + New R,GroepNr,SortKey,Node,KLNr + Kill ^HULP(%J) + Set GroepNr="" + + For Set GroepNr=$O(^TRANSP("D",TranspNr,"D",GroepNr)) Quit:GroepNr="" Do + . Set BONNr="" + . For Set BONNr=$O(^TRANSP("D",TranspNr,"D",GroepNr,"B",BONNr)) Quit:BONNr="" Do + . . Quit:$P(^KU1(BONNr,"F"),"\")'=$$$KlantSFS + . . Do OphalenBon(BONNr) + Quit + +OphalenBon(BONNr) + Set ORDNr="" + Set PalletOnthouden=1 + Do OphalenReferenties(BONNr,.VHRef,.ComRef,.EDIRef,.SAPRef) + For Set ORDNr=$O(^ORDW("D",BONNr,"D",ORDNr)) Quit:ORDNr="" Do + . Set OLNr="" + . For Set OLNr=$O(^ORDW("D",BONNr,"D",ORDNr,OLNr)) Quit:OLNr="" Do + . . Set PRNr=$P(^ORDW("D",BONNr,"D",ORDNr,OLNr),"\",1) + . . Set Qty=$P(^ORDW("D",BONNr,"D",ORDNr,OLNr),"\",5) + . . Set SOLNr="" + . . For Set SOLNr=$O(^ORDW("D",BONNr,"D",ORDNr,OLNr,SOLNr)) Quit:SOLNr="" Do + . . . Set PalletID=$P(^ORDW("D",BONNr,"D",ORDNr,OLNr,SOLNr),"\",10) + . . . Set:PalletOnthouden PalletOnthouden=$$MoetPalletOnthoudenWorden(BONNr,ORDNr,PRNr,PalletID,VHRef,ComRef,EDIRef,SAPRef) + . . . Do Toevoegen(BONNr,ORDNr,OLNr,PRNr,Qty,PalletID,PalletOnthouden,VHRef,ComRef,EDIRef,SAPRef) + Quit + +Toevoegen(BONNr,ORDNr,OLNr,PRNr,Qty,PalletID,PalletOnthouden,VHRef,ComRef,EDIRef,SAPRef) + Set ^HULP(%J,"O",ORDNr,"L",OLNr)=$LB(BONNr,ORDNr,OLNr,PRNr,Qty,PalletID,VHRef,ComRef,EDIRef,SAPRef) + If PalletOnthouden Do + . Set:$L(PalletID) ^HULP(%J,"O",ORDNr,"P",PalletID,OLNr)="" + Else Do + . Kill ^HULP(%J,"O",ORDNr,"P") + Quit + +OphalenReferenties(BONNr,VHRef,ComRef,EDIRef,SAPRef) + ; via .Local : VHRef,ComRef,EDIRef,SAPRef + Set KLNr=$P(^KU1(BONNr,"F"),"\") + Set Node=$S($D(^KUL(KLNr,"F",BONNr)):"F",1:"G") + Set ULNr=101 + Set OrderHoofdingRec=^KUL(KLNr,Node,BONNr,ULNr) + ; + Set VHRef=$P(OrderHoofdingRec,"\",5) + Set:VHRef?6N1" - "2N1"."2N1"."2N1" - "1.E VHRef=$E(VHRef,21,*) + Set ComRef=$P(OrderHoofdingRec,"\",20) + Set EDIRef=$P(OrderHoofdingRec,"\",21) + Set Found=0 + Set SAPRef="" + For Set ULNr=$O(^KUL(KLNr,Node,BONNr,ULNr)) Quit:(ULNr="")||(ULNr>110) Do Quit:Found=2 + . Set LijnRec=^KUL(KLNr,Node,BONNr,ULNr) + . Quit:$P($P(LijnRec,"\",17),"#")'="KF11" + . Set Tekst=$P(LijnRec,"\",5) + . If Tekst="Opmerking:" Set Found=1 + . If (Tekst?2"0"8N)&&(Found=1) Set SAPRef=Tekst,Found=2 + If (SAPRef="")&&(VHRef?2N1"."2N1"."2N1" "2"0"8N) Set SAPRef=$E(VHRef,10,19) + Quit + +MoetPalletOnthoudenWorden(BONNr,ORDNr,PRNr,PalletID,VHRef,ComRef,EDIRef,SAPRef) + Set GenType=$$GENTYP^HAD(PRNr) + Quit:$P(GenType,"\",1)?1(1"TAO",1"LBX",1"TBX")&&(ComRef["Alpnach Norm") 1 + Quit:$P(GenType,"\",1,2)'?1(1"TAO\PRB",1"LBX\PRB",1"TBX\PRB") 0 + + Quit:PalletID'?1(1"TB",1"SFS",1"LB",1"TA").E 0 + Quit 1 + +WriteHeader + Write $TR("CustomerOrderID,CustumerRef,VHShopID,VHOrderID,VHRef,VHDeliveryID,VHProdID,ProductName,Qty,PalletID",",",$c(9)) + Write ! + Quit + +