Index: FLOWHALUX.mac.rou =================================================================== diff -u -r29059 -r31840 --- FLOWHALUX.mac.rou (.../FLOWHALUX.mac.rou) (revision 29059) +++ FLOWHALUX.mac.rou (.../FLOWHALUX.mac.rou) (revision 31840) @@ -1,6 +1,7 @@ FLOWHALUX ;Halux [ 11/04/2003 1:20 PM ] #include BL.Derde.LevSpecifiek #include vhLib.Macro +#include Prod.Product ;opm : blVerzendWije en blLeveringsTermijn moeten geinitieerd zijn ;Voor alle HALUX toeleveringen waarmee het order gekoppeld wordt @@ -44,6 +45,11 @@ ;berekend de vroegste DueOutTime van een toelevering GetDueOutProductieTOELEV(LevNr,TOENr) New VroegsteDueOut,TLNr,ToeRec,PRNr,ToeLevWk,ORDNr,OLNr,LeverDatum,KLNr,DueOut + New DateComparator,CurrentDate + + Set DateComparator = ##class(TECH.Comparator.DateComparator).%New() + Set CurrentDate = ##class(TECH.Context).Instance().GeefDateTimeAPI().CurrentDate() + Quit:LevNr'=$$$LevHalux "" Set VroegsteDueOut="" Set TLNr=100 @@ -60,10 +66,13 @@ . . Set LeverDatum=$$DefaultFromWeek(PRNr,ToeLevWk) . ; omzetting van leverdag naar productie DueOut . Set DueOut=blLeveringsTermijn.GetLaatsteProductieTijdstip(LeverDatum) - . If DueOut < ##class(TECH.DateTime).CurrentHorolog() Do - . . Do ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.GeneralErrorException).%New("DueOut '"_$zdt(DueOut)_"' ligt in het verleden.")) + . If DateComparator.IsKleinerDan(+DueOut,CurrentDate) Do + . . if (CurrentDate=LeverDatum) && (+DueOut=$$CALCDATE^vhLib.DataTypes(CurrentDate,"A",-1)) Do + . . . set $Piece(DueOut,",",1) = CurrentDate + . . Else Do + . . . Do ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.GeneralErrorException).%New("DueOut '"_$zdt(DueOut)_"' ligt in het verleden.")) . ; vroegste - . Set:'VroegsteDueOut||($$DIFFTIME^vhLib.DataTypes(DueOut,VroegsteDueOut)>0) VroegsteDueOut=DueOut + . Set:(VroegsteDueOut="")||($$DIFFTIME^vhLib.DataTypes(DueOut,VroegsteDueOut)>0) VroegsteDueOut=DueOut Quit VroegsteDueOut DefaultFromWeek(PRNr,ToeLevWk)