home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 18 REXX / 18-REXX.zip / birth10.zip / BIRTHDAY.DOC < prev    next >
Text File  |  1994-03-07  |  12KB  |  346 lines

  1.  
  2.      **************************************************************
  3.  
  4.  *** eine deutsche Anleitung ist in der Datei BIRTHDAY.DOK enthalten***
  5.  
  6.      **************************************************************
  7.  
  8.  
  9.  
  10.                                          Birthday Reminder V1.0
  11.  
  12.                                          written March 1994 by
  13.                                          Wolfram Koerner
  14.  
  15.  
  16.  
  17. Contact:
  18. --------
  19.  
  20.           Internet : koerner@cip.informatik.uni-wuerzburg.de
  21.  
  22.           Fido     : Wolfram Koerner@2:2490/5100.8
  23.  
  24.           Snailmail: Wolfram Koerner
  25.                      Friedenstrasse 5a
  26.                      97072 Wuerzburg
  27.                      GERMANY
  28.  
  29.  
  30.  
  31. Contents:
  32. ---------
  33.  
  34.        * What for ?
  35.  
  36.        * How is it done ?
  37.  
  38.        * Birthdaytest at Startup
  39.  
  40.        * Format of the database
  41.  
  42.        * Disclaimer
  43.  
  44.  
  45. What for ?
  46. ----------
  47.  
  48. BIRTHDAY.CMD  is  a  REXX-Program  for people like me that always
  49. forget the  birthdays of their relatives. It can automatically
  50. remind you for these yearly events.
  51.  
  52. For every event there can be specified a prewarning time  from  0
  53. to 28 days. e.g. to get a gift and send it by mail just-in-time.
  54.  
  55. So the program knows two sorts of messages:
  56.  
  57.     * a warning message
  58.       WARNING: 22. Birthday in 5 day(s) !
  59.  
  60.     * or a birthday message
  61.       A HAPPY 22. BIRTHDAY TO:
  62.  
  63. After  every message there is a question if you want to be warned
  64. again next time the database is checked (keep event active) or if
  65. you don't want to hear the message again - so answer "N" to:
  66.  
  67.     Keep event active (Y/N) <enter>=YES ?
  68.  
  69. Passive events  can  be  reactivated  by  selecting  "r" from the
  70. mainmenu.
  71.  
  72. The program creates a database to remember all the birthdays.  The
  73. defaultname for this  database  is  "c:\birthday.dat".   You  can
  74. change  this  default  by  editing  line  28  in  the REXX-Script
  75. BIRTHDAY.CMD. Search for the line starting with "DBFile="
  76.  
  77. Because of this database BIRTHDAY.CMD has 2 operationmodes:
  78.  
  79.     * Databasemode (here you can edit and view your database)
  80.       BIRTHDAY.CMD<enter>
  81.  
  82.     * Checkmode. This just checks the database for warn-events:
  83.       BIRTHDAY.CMD /c
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90. How is it done ?
  91. ----------------
  92. When the program is run for the first time, just enter:
  93.  
  94.     BIRTHDAY.CMD<enter>
  95.  
  96. The following screen should appear:
  97.  
  98. ┌────────────────────────────────────────────────────────────────────────────┐
  99. │                          Birthday Reminder V1.0                            │
  100. │                                                                            │
  101. │                              Today:03/06/94                                │
  102. │                     Database:  0 Recs - DATE sorted                        │
  103. ├────────────────────────────────────────────────────────────────────────────┤
  104. │                                                                            │
  105. │                                                                            │
  106. │                     L ..... List complete database                         │
  107. │                     P ..... Print database                                 │
  108. │                     R ..... Reactivate passive events                      │
  109. │                     S ..... Sort database by: NAME                         │
  110. │                     C ..... Check for birthdays                            │
  111. │                                                                            │
  112. │                     A ..... Add a record                                   │
  113. │                     E ..... Edit a record                                  │
  114. │                     D ..... Delete a record                                │
  115. │                                                                            │
  116. │                     Q ..... Quit program (and save data)                   │
  117. │                                                                            │
  118. │                     _ ----> YOUR CHOICE                                    │
  119. │                                                                            │
  120. └──────────────────────────────────────────────────────────────────(C)'94 WOK┘
  121.  
  122. Under the programtitle the current date is displayed in the format
  123. mm/dd/yy.  The  next  line  shows  how  much  records  are in the
  124. database and how they are sorted (NAME or DATE sorted) - see Menu
  125. "S"
  126.  
  127. Next the Mainmenu is displayed:
  128.  
  129. MAINMENU:
  130. L ..... List complete database
  131.   Lists the complete contents of the whole database.  After every
  132.   20 lines the program waits for <enter>
  133.  
  134.   The format of the output is:
  135.  
  136.   No.  Name                      Memo                  mm/dd/yy (PW) :NE #D
  137.   -------------------------------------------------------------------------
  138.  
  139.   No.        - Number of database record.
  140.                A record can change  its  number  if  records  are
  141.                inserted  or  deleted  before  this  record.  This
  142.                number is required if you want to re-edit a record
  143.                or if you want to delete a record.
  144.   Name       - Name of the person whose birthday is stored
  145.                The max.length is  25  chars.   All chars above 25
  146.                will be cut of.
  147.                You can  sort  your  database  by  this  datafield
  148.                instead of the date-field. (See "S")
  149.   Memo       - A max. 20 char  long  Memo-field  for  additional
  150.                information.
  151.   mm/dd/yy   - the date of birth in US-format.
  152.                By  default  the   database   is  sorted  by  this
  153.                datafield.
  154.                The year ranges from 00 to 99 so perhaps  in  year
  155.                2000 we will get problems ?
  156.   (PW)       - The prewarningdays (0 to 28).
  157.                From  the  PW-th day before the birthday a warning
  158.                is displayed every time you check the database.
  159.   :NE        - Year of the next event.
  160.                At the birthday in THIS year the next warning will
  161.                be displayed.  This  value  is increased either if
  162.                the birthday is over  for  this  year  or  if  you
  163.                answer to the question
  164.  
  165.                Keep event active (Y/N) <enter>=YES ?
  166.  
  167.                with  a  "n"  -  NO.   When  you switched an event
  168.                passive and you  want  to  reactivate  it, you can
  169.                reactivate all events that are not  yet  gone  for
  170.                this year with Mainmenu "r".
  171.   #D         - Number of days to next birthday.
  172.                -1 means       : no warning today
  173.                0 means        : BIRTHDAY, TODAY !!
  174.                PW>= n >0 means: birthday in n days
  175.  
  176.  
  177.  
  178.  
  179.  
  180. MAINMENU:
  181. P ..... Print database
  182.   With  this command you can output the contents of your database
  183.   to a device or file of  your  choice.  So you have to enter the
  184.   device or filename first:
  185.  
  186.   e.g.: PRN                    Printer
  187.         LPT2                   Printer on LPT2-port
  188.         CON                    Screen
  189.         c:\data\birth.txt      a file
  190.  
  191.  
  192.  
  193. MAINMENU:
  194. R ..... Reactivate passive events
  195.  
  196.   Here you can reactivate events that have been switched  passive
  197.   for this year by mistake.
  198.   BUT:  ALL  passive  events  that  are not yet passed by will be
  199.   reactivated !
  200.  
  201. MAINMENU:
  202. S ..... Sort database by: NAME/DATE
  203.  
  204.   Normally the database  is  sorted  by the birthday-field.  This
  205. makes sense because if you want to know  how  the  birthdays  are
  206. spread over  the  year,  watch  the  list!  But sometimes you may
  207. search for the birthday of  a  special  person.  So if you have a
  208. huge database it may be helpful if you sort it by name.   So  hit
  209. "s" in the mainmenu and the database will be sorted by NAME if it
  210. was sorted by DATE or by DATE if it was sorted by NAME.
  211. The current sortmode is displayed in the titlescreen.
  212. When  you  quit  BIRTHDAY.CMD  the  database is saved in the last
  213. chosen sortorder.  So next  session  you  will find your database
  214. the same way you left it last time.
  215.  
  216.  
  217. MAINMENU:
  218. C ..... Check for birthdays
  219. Checks the database for coming birthdays.
  220. Necessary warnings and birthday-messages are displayed.
  221. This Routine can be called directly from the commandline by using
  222. the commandline switch /C
  223.  
  224.     BIRTHDAY.CMD /c
  225.  
  226. At each warning two beeps will be heard from the PC-speaker.  And
  227. every  birthday-message  is  guided  by  a  short  melody  "Happy
  228. Birthday to you..." If you don't like that use the switch /Q  for
  229. the Quiet-Mode:
  230.  
  231.     BIRTHDAY:CMD /Q
  232.     or for a quiet-check:
  233.     BIRTHDAY /c /q
  234.  
  235.  
  236.  
  237.  
  238. MAINMENU:
  239. A ..... Add a record
  240.  
  241. Inserts a record to the database.
  242. The  desired fields must be filled with legal values.  Especially
  243. the birthdayfield and the  prewarningfield.   Some tests are made
  244. to  reject senseless values for this field but be safe - so FIRST
  245. THINK THEN ENTER a value !
  246.  
  247.  
  248. MAINMENU:
  249. E ..... Edit a record
  250. After the question for the recordnumber you can edit  all  fields
  251. of the record by hitting the letter in front of the field.
  252. With  "E"-Exit  you can leave the edit-menu and save the changes.
  253. Your record may be sorted  to  a  new position if you changed the
  254. sortfield-entry of the record.
  255.  
  256.  
  257. MAINMENU:
  258. D ..... Delete a record
  259. Here you can delete a record by entering its recordnumber.
  260. A security-question follows !
  261.  
  262.  
  263. MAINMENU:
  264. Q ..... Quit program (and save data)
  265. You  will  leave  the  program  by  selecting  this  point.   The
  266. database contents will be saved before. Which file  is  used  for
  267. the database is defined in line 28 of the REXX-script.  So search
  268. for   "DBFile="   in  the  source.   If  you  want  an  different
  269. databasefile just change this line.
  270.  
  271. Once your database is  complete, you  can simply check for coming
  272. birthdays by just entering
  273.  
  274.     BIRTHDAY.CMD /C
  275.  
  276.     or for a quiet-check:
  277.  
  278.     BIRTHDAY /q /c
  279.  
  280.  
  281.  
  282.  
  283. Birthdaytest at startup
  284. -----------------------
  285.  
  286. If you want to check for coming birthdays every time you boot your
  287. OS/2 first create a file STARTUP.CMD in the rootdirectory  of your
  288. OS/2-bootdrive
  289.     c:\STARTUP.CMD
  290.  
  291. This OS/2-commandfile is executed every time OS/2 is booted.
  292.  
  293. One  line  of  this  file  should call the birthdayprogram in the
  294. checkmode e.g.:
  295.  
  296.     call c:\cmd-files\birthday.cmd /c
  297.  
  298. Thats it !
  299.  
  300.  
  301.  
  302. Format of the database
  303. ----------------------
  304.  
  305. Birthday Database 1.0              (This MUST be in the first line !!!!)
  306. SortIndex=n                        (2nd line like this but n=1 or n=3)
  307.                                    (3rd line has to be empty !)
  308. Name # 1                           (Begin of 1st datarecord)
  309. Memo # 1
  310. mm/dd/yy                           (birthday # 1)
  311. nn                                 (prewarning-days from 0 to 28)
  312. 95                                 (Year of next event)
  313.                                    (empty line after every record !!!)
  314. Name # 2                           (Begin 2nd record)
  315. Memo # 2
  316. 02/03/71
  317. 3
  318. 95
  319.                                    (empty line even behind the last record !!)
  320.  
  321.  
  322.  
  323.  
  324. Disclaimer
  325. ----------
  326. Especially programs that  create/move  data  on your harddisk are
  327. always  a  danger.   Data  can  be  lost  due  to   mistakes   in
  328. programming.   I  want  to underline at this point that there are
  329. possible dangers by undiscovered  bugs  in  the program.  Though I
  330. tested the program very carefully it may still contain bugs  that
  331. corrupt  your  data.   So if you want to be on the save side just
  332. don't start my program but delete it from your disks.
  333.  
  334. The  Copyright for this piece of work (program and documentation)
  335. is mine.  But i declare  my  program FREEWARE.  So you can spread
  336. the program to all your friends.  BUT: In an unchanged form.   If
  337. you changed the program or  the documentation you are not allowed
  338. to spread it again.  If there  should be reasons for changes just
  339. contact  me  and we can implement fixes or enhancements together.
  340. This is the only way to avoid version confusion.
  341. Thank you !
  342.  
  343.  
  344. ----------------------------------------------------Wuerzburg, March of 1994
  345.  
  346.