#include BL.Sys.FOP.Common #include BL.Derde.KlantSpecifiek DCPRINT2 ;AFDRUKKEN DOKUMENTEN [ 11/29/2003 1:55 PM ] ; ; Drukken leveringsbons ; Warn = 0 (geen melding van foutieve status) BON(lbBONNrs,Warn,Printer) New li,sc,BONNr,IsTerugName,DocType,KLNr,PosPakbon set Printer = $get(Printer) Set Warn=$G(Warn,1) For li=1:1:$LL(lbBONNrs) Do . Set BONNr=$LI(lbBONNrs,li) . Set KLNr=$P($G(^KU1(BONNr,"F")),D) . If $$ISTERUGN^FLOWBON5(BONNr) Do ;TerugName . . If $$ExtraBonTerugName(BONNr) Set DocType=$$$ldtBonWitBonGeel ; Terugname -> witte en gele terugnamebon appart geniet . . Else Set DocType=$$$ldtBonGeel ; Terugname -> enkel gele terugnamebon . Else Do ; Levering . . if ##class(BL.Legacy.DCPRINT2).AfleveringsbewijsNodig(BONNr) Set DocType=$$$ldtBonWitBewijs ; Levering -> Witte leveringsbon en geel afleveringsbewijs samen geniet . . Else Set DocType=$$$ldtBonWit ; Levering -> enkel witte leveringsbon . . Set PosPakbon=$S($$ISORGAL^FLOWCHK("L",BONNr):"",'$$IsMetStUpd(BONNr):"", 1:"BEGIN") . . Set:(PosPakbon="END" ) DocType=DocType_$$$ldtAddPakbonLos . . Set:(PosPakbon="BEGIN") DocType=$$$ldtBeginPakbonLos_DocType . . Set:(KLNr=$$$KlantVanHoeckeNV)||(KLNr=$$$KlantHalux) DocType=$$$ldtBonWit . if '$length(Printer) set Printer = ##class(BL.Legacy.DCPRINT2).GeefPrinter(BONNr) . Set Printer = ##class(BL.Sys.FOP.CommonTasks).ApplyPrinterRedirects(Printer) . Set sc=##class(BL.Flow.Levering.Doc).RenderAndPrintDocViaType(BONNr,DocType,Printer,1) ; printer: leeg=default . Kill ^KUB(BONNr,"F") . If Warn,$$$ISERR(sc) Do CLOSE^vhPRINTER,WARN^vhTXTPOP($$ParseStatus^vhLib(sc),"") Quit ; ExtraBonTerugName(BONNr) New R,KLNr,Extra,VerzW Set KLNr=$P(^KU1(BONNr,"F"),D),R=^KUL(KLNr,"F",BONNr,1),VerzW=$P(R,D,7) Set Extra=1 Set:$E(VerzW,1,3)?1(1"INT",1"DI1") Extra=0 Quit Extra ; Bevat de levering een lijn met stockupdate? IsMetStUpd(BONNr) New R,KLNr,BLNr,PRNr,IsMetStUpd Set IsMetStUpd=0,KLNr=$P($G(^KU1(BONNr,"F")),D) Do:KLNr . Set BLNr=100 . For Set BLNr=$O(^KUL(KLNr,"F",BONNr,BLNr)) Quit:'BLNr Do Quit:IsMetStUpd . . Set R=^KUL(KLNr,"F",BONNr,BLNr),PRNr=$P(R,D,2) . . Quit:'PRNr . . If $P(R,D,14)'["S",$P(R,D,14)'["Z" Set IsMetStUpd=1 Quit IsMetStUpd