home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 11 Util / 11-Util.zip / CHRON23B.ZIP / CHRON.DOC next >
Text File  |  1990-10-11  |  8KB  |  223 lines

  1.                                       CHRON
  2.  
  3.          INTRODUCTION
  4.          ------------
  5.  
  6.          Chron is an application that will dispatch programs and
  7.          messages at a given time and date.  These tasks can be
  8.          scheduled to run one time only, or on a daily, weekly,
  9.          weekday, monthly or annual basis.
  10.  
  11.  
  12.          INSTALLATION
  13.          ------------
  14.  
  15.          o      Copy the *.MSG files to a subdirectory in your DPATH.
  16.                 These are message repository files that are structured
  17.                 like the system files OSO001.MSG and OSO001H.MSG.
  18.  
  19.          o      Copy the *.EXE file to a subdirectory in your PATH.
  20.  
  21.          o      Copy the *.DLL file to a subdirectory in your LIBPATH.
  22.  
  23.          o      Copy the *.HLP file to a subdirectory in your HELP
  24.                 environment variable.
  25.  
  26.  
  27.          OPERATION
  28.          ---------
  29.  
  30.          The first time the program is started, you will be prompted for
  31.          the fully qualified filespec that will be used to store the
  32.          tasks when the program is exitted and restarted.  There is no
  33.          restriction on the filename as long as it is a valid FAT file
  34.          name.
  35.  
  36.          It is assumed that this file does not exist.  If there is a
  37.          file that exists with that name, you will be asked to confirm
  38.          the file name.  The author's choice of a file name is
  39.          CHRON.DAT.  If you do not specify a fully qualified name, the
  40.          program will automatically fully qualify it based on the
  41.          current drive and directory.
  42.  
  43.          Once the program is started, you add tasks to be scheduled by
  44.          selecting the "Schedule" menu item.
  45.  
  46.          Other actions such as changing the name of the task database or
  47.          editing the existing tasks can be found under the "Action" menu
  48.          item.
  49.  
  50.          Since the application is a PM program, little explanation is
  51.          needed in its operation.
  52.  
  53.  
  54.          INTERNALS
  55.          ---------
  56.  
  57.          The code allows for the entry of tasks (messages or programs)
  58.          and looks to see if the current time is later than the time set
  59.          for the task.  If so, that task is started.  While the timer
  60.          pops every second, the task list is scanned for tasks only when
  61.          the minute or the number of tasks change.
  62.  
  63.          After a task is dispatched the time for the next dispatch is
  64.          calculated.  If it's a "one time" task the task is dropped from
  65.          the list.  If it's a daily task, it is scheduled for the same
  66.          time the next day.  If it's weekly, it's scheduled for same
  67.          time next week, etc.
  68.  
  69.  
  70.          OTHER NOTES
  71.          -----------
  72.  
  73.          Some random notes about the operation of the code follows:
  74.  
  75.          o      The program names entered when scheduling a program to
  76.                 start should be fully qualified names.  The entry on
  77.                 this dialog was purposely patterned after the Program
  78.                 Properties dialog on the start groups.
  79.  
  80.          o      The code computes what the "same" time next month is in
  81.                 a strange way.  A problem arose when a person wanted to
  82.                 schedule a task for the LAST day of the month and
  83.                 selected, say, September 30 for the start day.  When the
  84.                 task executed and was scheduled for October, I didn't
  85.                 feel it was appropriate to schedule for Oct 30, since
  86.                 Oct 31st is the LAST day of the month.  Eventually the
  87.                 LAST day of the month would creep back to the 28th when
  88.                 it was scheduled to run in February.
  89.  
  90.                 Therefore, the algorithm works as follows.  If a
  91.                 scheduled day is selected that is within the last five
  92.                 days of the month, I assume you are scheduling relative
  93.                 to the last day of the month.  Therefore, if you
  94.                 scheduled a task to run on September 27th, the next
  95.                 month's time would be computed as October 28th.
  96.  
  97.          o      To schedule a .CMD file, you must start a copy of
  98.                 CMD.EXE.  For program name, enter C:\OS2\CMD.EXE.  In
  99.                 the parameters field, enter:
  100.  
  101.                                  /C command
  102.  
  103.                 where "command" is the batch file you want to execute.
  104.  
  105.  
  106.          MISCELLANEOUS
  107.          -------------
  108.  
  109.          This program will operate only under OS/2 1.2 and above.
  110.  
  111.          This is a multi-threaded PM program written entirely in
  112.          Microsoft C 6.0.
  113.  
  114.  
  115.          LIABILITY
  116.          ---------
  117.  
  118.          The author assumes no liability for any damage or loss of data
  119.          caused by this program.
  120.  
  121.  
  122.          REGISTRATION
  123.          ------------
  124.  
  125.          This is a Shareware program.  If you like this program, and use
  126.          it on a frequent basis, a registration fee is encouraged.
  127.  
  128.          The shareware charge is:
  129.  
  130.                 $15  for individuals.
  131.                 $25  per copy for companies with 25 or less employees.
  132.                 $40  per copy for companies with 26 or more employees.
  133.  
  134.          Site license agreements are available on a case by case basis.
  135.  
  136.          Please send any correspondence to:
  137.  
  138.                 Gary Murphy
  139.                 1022 N. Cooper
  140.                 Olathe, KS 66061
  141.  
  142.                 Prodigy: [VWSD07A]
  143.                 CIS:     [73457,365]
  144.  
  145.          You are more likely to reach me on Prodigy than CIS, as I
  146.          frequent that board more.
  147.  
  148.          Any comments, positive or negative, are welcomed.  Enjoy.
  149.  
  150.  
  151.          CHANGE HISTORY
  152.          --------------
  153.  
  154.          1.0   Base Code
  155.  
  156.          1.1   Added monthly support.
  157.  
  158.                Added "date to start on or after" to all of the dialogs.
  159.  
  160.          1.1A  Fixed bug for not dispatching properly based on time.
  161.  
  162.          1.2   Chron "remembers" where it was positioned.
  163.  
  164.          1.3   Changed the message window to a dialog box with a combo
  165.                box, title bar, and min button.
  166.  
  167.                Added a yearly option
  168.  
  169.                Sorted the lists in dispatch (time) order.
  170.  
  171.          1.4   Cut/Paste/Copy into and out of the message box.
  172.  
  173.          2.0   Added help.
  174.  
  175.                Added an alarm option for the messages.
  176.  
  177.                Support for workday-only dispatching where you get to
  178.                pick what the work week is (default Mon thru Fri)
  179.  
  180.                Add an alarm option for the messages.
  181.  
  182.          2.1   Added selection of time and date from a calendar
  183.  
  184.                Fixed bug with workday dispatch not starting on a valid
  185.                workday.
  186.  
  187.                Automatically searches the path for the filename to start.
  188.  
  189.          2.2   Changed the 3D effect on the calendar to move the characters
  190.                on the calendar day button when it is pressed.
  191.  
  192.                Moved some of the buttons around on the dialogs.
  193.  
  194.          2.3   Added more extensive help.
  195.  
  196.                Fixed the "stuck button" bug.  (If a button was pressed and
  197.                the mouse was moved off the window, the button would remain
  198.                in a "down" state).
  199.  
  200.  
  201.          PLANNED FUTURE ENHANCEMENTS
  202.          ---------------------------
  203.  
  204.  
  205.          o      Support for Nth working day of the month that would
  206.                 include holidays.
  207.  
  208.          o      Suppression of "late" task dispatch.  If you schedule a
  209.                 daily task and the program has been shutdown for 6 days,
  210.                 it will start the program 6 times when restarted.  I
  211.                 want to make this an option.
  212.  
  213.          o      Make an option for the adjust relative to end of month
  214.                 algorithm.
  215.  
  216.          o      Automatically dispatch CMD.EXE for command files.
  217.  
  218.          o      Optionally sort the lists in alpha order.
  219.  
  220.          o      Determine a way to allow expressions such as:
  221.  
  222.                      Third Wednesday of the month.
  223.