Index: APPS/Halux/PPS/Document/impl/LBX/OnderdelenPicking.cls.xml
===================================================================
diff -u -r53415 -r56830
--- APPS/Halux/PPS/Document/impl/LBX/OnderdelenPicking.cls.xml (.../OnderdelenPicking.cls.xml) (revision 53415)
+++ APPS/Halux/PPS/Document/impl/LBX/OnderdelenPicking.cls.xml (.../OnderdelenPicking.cls.xml) (revision 56830)
@@ -68,6 +68,74 @@
+
+
+DataVoorLijn:APPS.Halux.PPS.Document.impl.common.OnderdelenPicking.OnderdeelPickingBinaireKnoop,VermeldOmschrijvingEnKorttekst:%Boolean
+1
+ 0 {
+ #dim OPEenProduct As APPS.Halux.PPS.Activiteit.impl.common.dto.OnderdelenPickingUitvoeringInfo = OPVoorEenProductLijst.GetAt(1)
+
+ Do ..InitDocumentIndienNodig(OPEenProduct)
+
+ #dim EersteKolomBreedte As %Integer = ..Document.DocumentType.GeefKolomDefinitie(1).Breedte
+ Set GeWordWrapteProductOmschrijvingLijnen = ##class(TECH.ListIterator).%New(##class(TECH.StringUtils).WordWrap(DataVoorLijn.HFV.GeefOmschrijving(),EersteKolomBreedte))
+
+ Set OPEenProductIt = ##class(TECH.ListIterator).%New(OPVoorEenProductLijst)
+ While OPEenProductIt.HasNext() {
+ Do ..ProcessToegevoegdItem(OPEenProductIt.Next())
+ }
+ }
+ }
+
+ // Verdeel de data voor dit halffab over lijnen:
+ Set OnderdelenPickingen = ##class(TECH.ListIterator).%New(DataVoorLijn.PickingsPerMaatwerkProductID)
+ While OnderdelenPickingen.HasNext() || GeWordWrapteProductOmschrijvingLijnen.HasNext() {
+ #dim Lijn As %String = ""
+
+ // Zet een volgend aantal en eventueel lengte in bepaalde kolommen.
+ If OnderdelenPickingen.HasNext() {
+ Set OPVoorEenProductLijst = OnderdelenPickingen.Next()
+ If OPVoorEenProductLijst.Count() > 0 {
+ Set OPEenProduct = OPVoorEenProductLijst.GetAt(1)
+ Set Lijn = "\\\\"_OPEenProduct.DossierCode_" "_OPVoorEenProductLijst.Count()
+ If ((DataVoorLijn.HFV.GeefLengte()'= "") || VermeldKorttekst) && EersteLijnProduct {
+ Set $Piece(Lijn,"\",3) = DataVoorLijn.HFV.GeefAantal()
+ Set $Piece(Lijn,"\",4) = DataVoorLijn.HFV.GeefLengte()
+ Set EersteLijnProduct = 0
+ }
+ If VermeldKorttekst { // Op de eerste lijn van het Halffab staat soms de korttekst.
+ Set $Piece(Lijn,"\",2) = DataVoorLijn.HFV.GeefKorttekst()
+ Set VermeldKorttekst = 0
+ }
+
+ Set VorigOPEenProduct = OPEenProduct
+ }
+ }
+
+ // Zet een volgend deel van de halffab-omschrijving in kolom 1.
+ If GeWordWrapteProductOmschrijvingLijnen.HasNext() {
+ #dim ProductOmschrijving As %String = GeWordWrapteProductOmschrijvingLijnen.Next()
+ Set:VermeldOmschrijving $Piece(Lijn,"\",1) = ProductOmschrijving
+ Set:('GeWordWrapteProductOmschrijvingLijnen.HasNext()) VermeldOmschrijving = 0
+ }
+
+ If (Lijn'="") {
+ Do ..Document.VoegLijnToe(Lijn,"\")
+ }
+ }
+]]>
+