%%% "5594928743" !Sked.Phone % % move through the numbered records of reserved for this phone % determine the next scheduled pickup time % _Sked.Phone text "Numbers\" ofconn ^ exec$ % % the records in the current driver file reflect the result of last sched % find the earliest scheduled pickup that has not happened yet % _Sked.Mode !Sked.HoldMode "Before " &_Sked.Date &" " &_Sked.Slot &" " &_Sked.Mode &" " &_Sked.Docket dup logs pop empty !Sked.Kx 0 !Sked.Jx % % mark time past the latest possible sched date and use now as low limit % Time.Now dup !Sked.High _Sked.Future + "d" Time.Add !Sked.Low % % check each schedule record against the prior values % _Sked.Phone &"_???.txt" !wilder "Numbers\" ofconn empty { nextfile ? dup noext 3 right !Sked.Jx execing _Sked.Mode "ReqRsv" eq$ _Sked.Slot any)? and { _Sked.Date "_" left$ _Sked.Slot *skedspan &" " &_Sked.Stime dup !skedate "Test " &_Sked.Date &" " &_Sked.Slot &" " &_Sked.Mode &" " &_Sked.Docket log)( _Sked.High "high" log)( "n" Time.Diff "diff" log)( positive { % % below time threshold % } { % % above time threshold, check if earlier than last one % _skedate _Sked.Low "lowis" log)( "n" Time.Diff "adiff" log)( negative not { % % earlier than prior earliest % _skedate !Sked.Low filing !Sked.Kx _Sked.Slot !Sked.Sx } { % % higher or same as last prior % } ifelse } ifelse } { } ifelse } loop filing) _Sked.Kx any? { % % there is a next pickup scheduled % dup logs exec$ } { % % there is no valid pickup in the future % } ifelse _Sked.HoldMode !Sked.Mode "After " &_Sked.Date &" " &_Sked.Slot &" " &_Sked.Mode &" " &_Sked.Docket dup logs pop