Importing allows you to insert many records into the database in one go. This would save you manually adding new entries into the database one by one. The file to be imported needs to be in a certain format, referred to as a tab-delimited file.

Note IconExhaustive validation of data to be imported is not carried out by the program. It assumes that you, as the user, have ensured the data to be imported is valid and that it is indeed appropriate to do so. You import data entirely at your own risk and I accept no responsibility for any loss of data caused.

When you press the Import button, it displays a window for you to select the data file to import. You are informed if the file could not be opened for whatever reason.

You are then asked if you want to delete the current table contents. Please be aware of any other tables which might refer to this current table. If you delete such entries, you are effectively removing this relationship. It won't actually delete the table until it has established that it is safe to add the import data. If you choose not to delete the table, or the program can't delete the table for some reason, it will append the data instead (if the data being imported is valid to append).

If the data file is being appended to the current table, then it will check to see if each congregation or speaker already exists. You will be notified if this is detected and the import process will be aborted. Duplicate entries found within the import data itself will simply get ignored, so only the first entry will get added. Other reasons that will trigger an abort are:

  • An invalid talk number has been specified for a speaker.
  • The congregation for a speaker doesn't exist (either in the database or the import data).
  • If it was unable to read in entry information from the file.

It proceeds to import the records into the database once the import data has been successfully validated.

You need a special line of text to separate the two tables in the text file. Congregation entries must be listed first. If you only want to import Speakers, then this line of text must still precede the list of speaker entries in the file. This is the line of text:

***** END OF CONGS *****

As mentioned at the top of this help topic, the import file must be tab-delimited, which means that each line of text in the file represents an entry to add into the database. The information on each line is separated using TAB characters. The order of the information on each line must match the following template:

Congregation entries:

Congregation [TAB] Coordinator [TAB] Last Date Invited [TAB] Time of Meeting [TAB] Notes [TAB] Meeting Time Changes [TAB] Memo1 [TAB] Memo2 [TAB] Memo3 [TAB] Memo4 [TAB] Memo5 [TAB] CoordinatorNotes [TAB] CoordinatorMemo1 [TAB] CoordinatorMemo2 [TAB] CoordinatorMemo3 [TAB] CoordinatorMemo4 [TAB] CoordinatorMemo5 [CR]

Speaker entries:

Congregation [TAB] Speaker [TAB] Ministerial Servant [TAB] Talk Numbers [TAB] Notes [TAB] Memo1 [TAB] Memo2 [TAB] Memo3 [TAB] Memo4 [TAB] Memo5 [CR]

  • [TAB] represents the tab character
  • [CR] represents a carriage return

Each item of information must be entered correctly. Here is a breakdown:

Congregation

This is a standard text string.

Coordinator

This is a standard text string.

Last Date Invited

This should follow the following format: YYYY-MM-DD

Time of Meeting

This should follow the following format:

  • nn AM
  • nn PM

(where nn represents hours).

Speaker

This is a standard text string.

Ministerial Servant

This should be:

  • Y if the brother is serving as a Ministerial Servant
  • N if the brother is not serving as a Ministerial Servant

Talk Numbers

This should be a series of talk numbers. Please note:

  • Each number should be separated by a comma.
  • Favourite talks are prefixed with a #.

Here is an example:

1,#10,20,#50,100,#125

Notes

Coordinator Notes

This is a standard text string. It can be left empty.

Meeting Time Changes

This is a special encoded text string but it can be empty.

Note IconIf you feel these instructions are too complex to follow, then please leave the column empty and fill in the details using the Meeting Time Manager once the data file has been imported.

The encoded string follows certain rules. Each item is separated with a ¬ character. This character can be typed on the keyboard by pressing the SHIFT key and the key to the left of number 1 (just below the ESCape key on my keyboard).


The first part of the string represents the current meeting time of the congregation and the date when they changed to this current meeting time:

HHMM¬DD\MM\YYYY

  • HH is hours 00 to 23 (note: 24 hour format)
  • MM is minutes 00 to 59
  • DD is day 01 to 31
  • MM is month 01 to 12
  • YYYY is full year e.g.: 2019

Next on the encoded string is the actual time change information. You will have from two to five time changes. Each time change should look like this:

¬NN¬HHMM

  • NN is the number of months (01 to 36) to the next time change
  • HH is hours 00 to 23 (note: 24 hour format)
  • MM is minutes 00 to 59

As already mentioned, the above should be repeated between two to five times, dependant upon how many time changes are needed.

Example

Current meeting time: 10 AM
Date when changed to current time: 01\01\2019
Time change 1 in 12 months becomes 2 PM
Time change 2 in 12 months (that is 12 months after the date of time change 1) becomes 10 AM

Therefore, you would have this encoded string:

1000¬01\01\2004¬12¬1400¬12¬1000

MemoX

CoordinatorX

This is a standard text string. It can be left empty.

If the above items are kept in mind when importing, you should have no problems.

Note IconAll lines of text starting with a semi-colon ; are treated as comments and are ignored.