Using ASCII Front End Mode

As of version 2.5.0 you may use a feature called ASCII Front End.

In this mode the program ignores its own internal database and presents events directly from an ASCII file that some other process has created.

The options needed to initiate this feature are found in the Event Customization File under the [FRONTEND_MODE] section. These options are explained in detail below:

Format of the ASCII File

The ASCII file format is identical to Import File Format with the following exception. The first line of the file must be of the following format (see note below about deliminators):

        2;5;1;nrows;date

    where:
    
        2;5;1:    is the current version of the program

        nrows:    is the number of data rows in the file. 
                     The first two rows in the file (version line 
                     and field list) should not be included.  Only 
                     the actual number of rows containing data.

        date:     is the date and time (MM/DD/YYYY HH:MM[ap])
                     the file was written

The second line of the file must contain field names as described in the Import File Format help page. Each remaining line in the file contains the actual event data.

Note: You may use one of three possible field delimiters in this file: a tab, a comma or a semi-colon. The delimiter for the entire file is determined by the delimiter found in the first line of the file (the header line mentioned above) as follows:

        If a comma is found anywhere in the line then
          delimiter is a comma
        else if a tab is found anywhere in the line then
          delimiter is a tab
        else
          delimiter is a semicolon

You need not specify a delimiter other than by delimiting the first line of the file properly.

Important Note: See the note below about the performance of this feature

Why Would You Use this Feature

Many of our clients have other processes or programs on their website that generate scheduling information (for example a doctor's office may have an online billing, patient information and scheduling system). In some cases this other process displays the scheduling information poorly.

With this feature you may keep your existing scheduling system but use our software to display the results. You will need to modify the existing system to export its data into our format and place the file in the correct location on your server (in each calendar's data folder).

For example, one of our users modified an existing application so that each time a event was added, edited or deleted to that application a file called events.txt was written to ./data/calweb.

Whenever our program is run it reads this updated file and displays whatever events are found in the file. So that our calendar was acting as an ASCII front end to the existing application.

  • Different calendars need different events.txt files. Each calendar has its own folder called the Calendar Folder which must have its own events.txt file. The modifications to the eventedit.dat file must be made in every calendar.

  • Performance:

    The event data is parsed each time the calendar is displayed. For this reason this mode of operation is slower than the native binary database that is used by default. If there are more than three to four hundred events in the file the performance of the program may get too slow to be effective. There are a number of things you may do to alleviate this problem:

    • Make sure only the events that need to be in the events.txt file are included. Remove any extraneous events.

    • Sort the events in the file by date and time and make the date and time fields the first two columns in the file, then set the following value in the eventedit.dat file:

        [EVENT_DATA]
        sorted=1

      This instructs the program to check the date of each event before fully parsing it. The program can stop reading the file as soon as it encounters the first event that starts after the current calendar period ends. In general this will speed this mode by up to 2 times.