Index: FLOWORD6.mac.rou =================================================================== diff -u -r43053 -r49596 --- FLOWORD6.mac.rou (.../FLOWORD6.mac.rou) (revision 43053) +++ FLOWORD6.mac.rou (.../FLOWORD6.mac.rou) (revision 49596) @@ -198,10 +198,26 @@ Set Rec=^KOD(KLNr,"F",ORDNr,ToOLNr),ToPRNr=$P(Rec,D,2),ToAantal=$P(Rec,D,3),ToPrijs=$P(Rec,D,6),ToLeverdag=$P(Rec,D,25),ToTOENr=$P(Rec,D,27) If '$D(^ORDW("IO",ORDNr,FromOLUNr)),'$D(^ORDW("IO",ORDNr,ToOLUNr)),FromOLNr'=ToOLNr,FromPRNr=ToPRNr,FromPrijs=ToPrijs,FromLeverdag=ToLeverdag,FromTOENr=ToTOENr { ; Zelfde product, zelfde verkoopprijs, zelfde leverdag maar niet met zichzelf en geen van beide in het WMS Do MODAANT(KLNr,ORDNr,ToOLNr,(FromAantal+ToAantal)) + Do UpdateTekstLijn(KLNr,ORDNr,FromOLUNr,ToOLUNr) Do DELLINE^FLOWORD3(ORDNr,FromOLNr) } Quit ; + + ; TekstLijnen corrigeren als oorspronkelijke orderlijn verwijderd wordt. +UpdateTekstLijn(KLNr,ORDNr,FromOLUNr,ToOLUNr) + New AanduidingTekstBlok,LijnType + Set OLNr=100 + For Set OLNr=$O(^KOD(KLNr,"F",ORDNr,OLNr)) Quit:OLNr="" Do + .Set OrdRec=^KOD(KLNr,"F",ORDNr,OLNr) + .Set AanduidingTekstBlok = $P(OrdRec,D,18) + .Set LijnType = $P(OrdRec,D,17) + .If ($P(AanduidingTekstBlok,";",3)=FromOLUNr)&&(LijnType["KF11#") Do + ..Set $P(AanduidingTekstBlok,";",3)=ToOLUNr + ..Set $P(^KOD(KLNr,"F",ORDNr,OLNr),D,18)=AanduidingTekstBlok + Quit + ; + RebuildKO1 New KLNr,ORDNr,BONNr Set ORDNr=""