Index: FLOWTOE3.mac.rou =================================================================== diff -u -r58561 -r58585 --- FLOWTOE3.mac.rou (.../FLOWTOE3.mac.rou) (revision 58561) +++ FLOWTOE3.mac.rou (.../FLOWTOE3.mac.rou) (revision 58585) @@ -578,15 +578,16 @@ SplitHaluxProd(TOENr,NTLNr) New R,LEVNr,TLNr,NTOENr,LCount, TLUNr,PRNr,OrderLijnVolgnummer New arSplit,SortKey,LastSortKey,Leverdag - new Toelevering,KlantID,Product,ProductAPI + New Toelevering,KlantID,Product,ProductAPI,AdHocSplitser New ProductieService,ToeleveringSplitser, ToeleveringSplitserBepaler, Aantal - new ProductieService set ProductieService = ##class(APPS.Halux.common.ProductieService).%New() + Set ProductieService = ##class(APPS.Halux.common.ProductieService).%New() Set ProductAPI = ##class(DOM.DomeinContext).Instance().GeefProductAPI() Set Toelevering = ##class(DOM.DomeinContext).Instance().GeefToeleveringAPI().GeefToelevering(TOENr) Set ToeleveringSplitserBepaler = ##class(APPS.Halux.common.impl.ToeleveringSplitserBepaler).%New() Set ToeleveringSplitser = ToeleveringSplitserBepaler.GeefToeleveringSplitser(Toelevering) + Set AdHocSplitser = ##class(BL.Legacy.FLOWTOE.AdHocSplitser).%New() Set KlantID = Toelevering.GeefKlantID() Set LEVNr=$P(^KTO1(TOENr),D),TLNr=100 @@ -609,7 +610,7 @@ . . If ##class(BL.Legacy.FLOWTOE).IsToeleveringLijnVoorSpaceTowerProduct(Toelevering,TLNr) Set SortKey = OrderLijnVolgnummer . . . . // Ad hoc splitsing van bvb. specifieke te grote toeleveringen kan gebeuren door aan SortKey iets te appenden, zoals een kenmerk van een lade. - . . Do:(##class(BL.Legacy.FLOWTOE).IsAdHocSplitsingActief(TOENr)) ##class(BL.Legacy.FLOWTOE).PasAanSortKey(.SortKey,Product,TOENr,TLNr,KlantID) + . . Do:(AdHocSplitser.IsAdHocSplitsingActief(TOENr)) AdHocSplitser.PasAanSortKeyViaMapping(.SortKey,Product,TOENr,TLNr,KlantID) . Else Set SortKey=$G(LastSortKey) . Set:'$L(SortKey) SortKey="0000" . If 'PRNr,'$D(arSplit(SortKey)) Set arSplit("~~~~",TLNr)="" Quit ; Tekst eventueel op wacht zetten voor bij eerstvolgende productgroep