


  ķ
   Data from:  
   ķ
  ĺ                 ķ
                SYSTEMATICS                        
               ͻ            CONSULTING                
                                           Inc.           
         ͼ                              
                                                             
                   P.O. 233, Conifer, CO 80433               
                (303)674-8445   FAX:(303)670-3402            
    Ľ 
        Ľ



  Name:      TCAL_NEW.PRG
  Desc:      A popup calendar program.  User can change
             the month year or day by pressing the PgUp, PgDn,
             + , - or ->

             INSERT KEY will toggle a selected day ON or OFF.

             RIGHT ARROW KEY ->  will advance calendar through days

  Author:    Todd W. Lindley  - Modified by A. Frazier
  Created:   3/12/91          - Modified 11/1991
  Version:   1.0
  Revisions: 3/91 - fixed display of dates past 12/1999.
                  - Made all variables private so that
                    they don't conflict with the calling
                    program.

        MODIFICATIONS MADE ON 11/1991:

                    Removed the calander size and location variables.
                    Added the ability to select a day by using the
                    Insert Key and Right Arrow Key

                    The selected data base will force all matching dates
                    to display in red, and will be added to or deleted
                    from when dates are selected or de-deselected.


  Usage:     DO TCAL_NEW WITH "<file_name>","<date_field_name>",date

         Where:  file_name = a Dbase File containing dates.  Days matching
                             dates in the specified field name will display
                             in red on the calander.   If a day is toggled
                             ON or OFF by using the insert key, and
                             a record will be appended to the file <ON>
                             or deleted <OFF>.

                 date_field_name = Must be a indexed field in the specified
                                   data base file.

                 DATE =  DATE() or CTOD("DATE")


             Ex: DO TCAL WITH "DATEFILE", "IN_DATE", DATE()
             Results: Displays a popup calendar
                      with the calendar displaying the
                      month and year of system date.
                      Access the data base file DATEFILE and displays
                      in red all calandar dates which match the field IN_DATE
                      in the data base.


             Ex: DO TCAL WITH "DATEFILE","IN_DATE",CTOD("01/01/90")
             Results: displays a popup calendar displaying January 1990
                      Access the data base file DATEFILE and displays
                      in red all calandar dates which match the field IN_DATE
                      in the data base.

  Notes:
       - THE PROGRAM DOES NOT CHECK THE VALIDITY OF
         ANY PARAMETERS
       - I have randomly checked some month/year combina-
         tions and the calendars seem to be correct.

       - THE DATA BASE FILE MUST EXIST, AND BE INDEXED ON THE DATE FIELD
         WHICH MUST BE A FORMAT OF DATE.


  Credits:

       - I needed a calendar function in a Reservation System I was
         developing which would allow the user to select reserved dates by
         a 'point & shoot' method.  I liked the TCAL program, but
         needed to select days.  Therefore, the modifications.

       - I'd like to thank Todd W. Lindley, the author of TCAL.prg for
         allowing(?) me to expand(?) on his concept.




sample calling code, DB file TEST_DTE must exist and have an
                         index tag date field named SEL_DATE
                         This file will be modified depending on the
                         dates selected by the user.

        A sample data base has been included with this set of files.


SET STATUS OFF
SET TALK OFF
CLEAR
TDATE = DATE()
@ 10,10 SAY "ENTER DATE:  " GET TDATE
READ
CLEAR
DO TCAL_NEW WITH "TEST_DTE","SEL_DATE",TDATE
RETURN

END OF README FILE

