INTRODUCTION DATAENTRY is a generalized data entry computer program on the PDP-11 Computer. It permits the user to enter one item or field of information at a time, prompting the user for each entry. DATAENTRY can do some error checking: field length, that numeric fields contain only digits, and actual values, where only certain values are allowed. Each field, record type, and error checking specifications for a particular application must be set up by a programmer type of person. This person must use the editor to create a file, called the application file, which will give directions to the DATAENENTRY program for a specific application. When DATAENTRY is run, it will ask for the name of this application and read the file, checking its syntax. It will then ask for the name of the output file, and then begins prompting the user for input fields. For more information type: HELP DATAENTRY OPTION for info on the user options HELP DATAENTRY NOTES for vital info needed prior to run HELP DATAENTRY EXAMPLE for examples of run and application file HELP DATAENTRY APPLICATION for info on application file structure 2 APPLICATION APPLICATION FILE: The APPLICATION file has up to FIVE sections. They are: 1) HEADER, 2) DATA, 3) OUTPUT, 4) TYPE 5) END . The HEADER section is used for information which does not change very much, or not al all. The DATA section is used for the entry of changing information. The OUTPUT section generates data records at the end of the DATA section, after the question of correctness is asked. The TYPE section is optional. The TYPE section is used to group and/or link together various fields in a specific card type so a repeating type can be used by the data entry user. See the paragraph on NOTES before data entry is attempted. For further information, type: HELP DATAENTRY APPLICATION HEADER for HEADER format info HELP DATAENTRY APPLICATION DATA for DATA format info HELP DATAENTRY APPLICATION OUTPUT for OUTPUT format info HELP DATAENTRY APPLICATION TYPE for TYPE format info HELP DATAENTRY APPLICATION END for END format info 3 HEADER #DATA 3 DATA HEADER SECTION (optional) (DATA section is required): 1) Record 1 starting in column 1 HEADER 2) Records following are described below: col 1-3 field number between 1-999 (in ascending order) (field numbers need not be sequential, e.g, you can skip field numbers by 2, 3, 5, 10, etc.) col 4-: prompt message for user (to first colon) : to : FORMAT number between colons as shown below: 0 = constant (see below for constant definition). +1 to +20 = numeric of 1 to 20 digits EXACTLY. Z1 to Z20 = numeric of 1 to 20 digits VARIABLE ZERO FILL. -1 to -80 = alpha of EXACTLY 1 to 80 characters. ?1 to ?80 = VARIABLE alpha blank fill of length of 1 to 80. If there are NO checks or the record is NOT a constant, then begin a new record. If a constant or data checks exist, then enter the checks or constant after the ":" following the FORMAT specification as shown below: If FORMAT = 0 (constant), then all data following is the constant. If FORMAT = 1 to 20 (Z or +), then data is in groups of two, eg C1 C2 C3 C4 ... etc, where C1 C2 C3 C4 ... is the same number of characters as the format number, and the data entered is checked as a range between groups of C1 C2 ...etc as such: C1 .le. data entered .le. C2 .or. C3 .le. data entered .le C3 If FORMAT = 1 to 80 (? or -), then data is in single groups of the same number of characters as the format, C1 C2 C3 ... etc, and the data is checked as such: C1 .eq. data entered .or. C2 .eq. data entered .or. C3 ... DATA SECTION: 1) Record 1 required to have starting in column 1 DATA 2) All following records are exactly the same as described in the HEADER section. 3 OUTPUT OUTPUT SECTION: 1) Record 1 required to have starting in column 1 OUTPUT 2) The following describe OUTPUT records generated by the program. Each record has the following format: KGROUP,FLD1,COL1,FLD2,COL2,...,FLDk,COLk where: KGROUP = number of FLD,COL groups in the same record FLD = the field number given in the HEADER or DATA section. COL = the starting column number of the output data. (the length is defined by the format given above) There may be up 500 total FLD,COL groups for the entire output section. Each OUTPUT record produces one record of output. 3 TYPE TYPE SECTION: (optional) 1) Record 1 required to have starting in column 1 TYPE 2) The following describe TYPE records. Each record has the following format: TYPE,NUMBER,FLD1,FLD2,...FLDN or TYPE,LINK where: TYPE OR LINK = 1 character TYPE id NUMBER = number of fileds following (must start in column 3) followed by a comma. FLD = the field numbers belonging to this TYPE, separated by commas. 3 END END: Required to end the last section, starting in column 1 END 2 OPTIONS USER OPTIONS: There are four user required options to be answered prior to running the program. They are: 1) Name of output file 2) OK question option 3) Auto carriage return option 4) Form or Random option For 1), the user must enter a valid file name for the PDP-11. That file will contain all data outputted by the program. To append on an existing file, place the switch "/AP" after the file name, e.g., FILENAME.VER/AP For 2), a "Y" or no response by the user indicates that a question will be asked at the end of a set of inputs (record or type) asking if all the data entered is OK; if not, then repeat the set. A "N" answer indicates no OK message to be asked, just write out the data. For 3), a "Y" or no response by the user indicates that a carriage return will be done if the entire field is inputted (filled). A "N" answer indicates a carriage return must be user activated, even if the entire field is entered. For 4), a "Y" or no response by the user indicates that a form (for TYPE) or random accessing (for non TYPE) will be used. A "N" indicates serial processing only. 2 NOTES NOTES: 1) HEADER fields, when inputted, do not force out an output record while DATA fields do. 2) An @ or ^Z entered in the DATA section generates OUTPUT records. 3) An @ or ^Z entered in the HEADER section stops program. 4) When in RANDOM mode, the first @ or ^Z generates OUTPUT records if any DATA fields were entered, the second @ or ^Z finishes the program. 5) BLANK, when entered as a single character, is a valid entry which blanks the entire field. 6) A ! entered as an entry will blank the current plus all following fields. 7) When TYPE is used as a section, the user enters a type code. When that type is finished, data is outputted by using the OUTPUT section definitions of DATA fields The TYPE then repeats until @ or ^Z entered. As in Random mode, the first @ or ^Z generates output (if any data entered) plus prompts for a new type. The second @ or ^Z stops the program. 8) alone (not to confuse BLANK) repeats the last entry. 9) An will back up to the previous field. This enables a user to correct errors after a . 10) If all entries in an OUTPUT line are HEADER information, then the OUTPUT line will never be outputted. 11) If the word SQUEEZE is entered in front of the first section (either HEADER or DATA), then all blanks will fe removed from the output records. If a blank is required, enter a $, which will be replaced by a blank after all blanks are removed. 12) If no curser control is desired, use OTHER as input terminal type. 13) Form mode is used, if: 1---There exists a TYPE section in the application 2---No TYPE section is longer than 20 fields 3---User chooses FORM option in run. 14) Do not use "?", ".", or "=" in prompts, for they are special terminator symbols in the program. 15) VERY IMPORTANT: BLANKS ARE TREATED AS CHARACTERS. 2 EXAMPLE TYPE: HELP DATAENTRY EXAMPLE RUN for run example HELP DATAENTRY EXAMPLE APPLICATION for application file example 3 RUN DATAENTRY PROGRAM EXAMPLE The following is an example of a sequential run. Lower case is user response to upper case computer prompt. EXAMPLE SEQUENTIAL RUN: RUN [50,50]DATAENTRY ENTER TERMINAL TYPE= (used for curser control) ENTER APPLICATION NAME = applic (or your own application file) OUTPUT FILE NAME = user.dat DO YOU WANT FORM MODE (Y N)? n (if exist a TYPE section) DO YOU WANT RANDOM ACCESS(Y N)? n (if no TYPE section exists) TYPE -? ( enter TYPE if section exists)