home *** CD-ROM | disk | FTP | other *** search
/ Best Objectech Shareware Selections / UNTITLED.iso / boss / util / misc / 021 / formget.doc < prev    next >
Text File  |  1993-04-20  |  7KB  |  202 lines

  1.  
  2.  
  3.         ███████ ███████ ███████ ███████ ███████ ███████ ███████         
  4.         ██      ██   ██ ██   ██ █ ███ █ ██      ██        ███           
  5.         ███████ ██   ██ ███████ ██ █ ██ ██  ███ ███████    █            
  6.         ██      ██   ██ ██  ██  ██   ██ ██    █ ██        ███           
  7.         ██      ███████ ██  ███ ██   ██ ███████ ███████   ███           
  8.  
  9.  
  10.  
  11.  Purpose:
  12.  --------
  13.      Formget is a general purpose electronic form entry tool intended
  14. for use with batch files.
  15.  
  16.  
  17.  Desciption:
  18.  -----------
  19.      Takes a form specification in the form of fields information.
  20. Expects the fields' initial data in the form of separate files placed
  21. in a particular directory.  The modified fields are echoed back to
  22. these files upon exit.
  23.  
  24.  Features:
  25.  ---------
  26.  
  27.     Support the use of user specified tools for viewing and editing
  28. memo fields.
  29.  
  30.      Cursor moves automatically to next field to minimize typing.
  31.  
  32.     Support user specified selection lists (also known as popups)
  33.  
  34.     Support read-only fields and basic validation.
  35.  
  36.     Support carrying data between a form data entry and another.
  37.  
  38.  
  39.  Form Specification:
  40.  -------------------
  41.  
  42. Formget reads a .FFI file which specifies the name of the fields and
  43. their properties.  The format is quite simple using one field
  44. specification per line described as:
  45.  
  46.     {field_name}  {type}  {req./opt.}  [extraction_column]  ;{description}
  47.  
  48. For example if you you were to design a form entry for a driver's
  49. license application a sample LICENSE.FFI might look like:
  50.  
  51.     STATE     LIST RO    ;state where applied
  52.     COUNTY    LIST RO    ;county where applied
  53.     NAME      MEMO REQ   ;first and last name
  54.     ADDRESS1  MEMO REQ   ;address line 1
  55.     ADDRESS2  MEMO REQ   ;address line 2
  56.     RACE      LIST REQ 2 ;race
  57.     ...
  58.  
  59.  
  60.   Field_name: 
  61.   -----------
  62.     start with a letter and is an 8 chars or less and designates the
  63. field name.
  64.  
  65.   Type: 
  66.   -----
  67.     defines the type of the field currently supported:
  68.  
  69.     MEMO this means the field is a free text and this utility will invoke
  70. the editor specified via the EDITOR environment variable to edit such
  71. data.
  72.  
  73.     LIST this means the field is a selection list, this utility expects
  74. the presence of the a file {field_name}.LST to be present and which
  75. contains literally the possible selections for the field.
  76.  
  77.     Anything else means the field is read-only and will only be displayed.
  78.  
  79.   Req./Opt.: 
  80.   ----------
  81.     This indicator helps perform some basic validation or integrity
  82. checking.  The following keywords are expected:
  83.  
  84.     REQ  means the field is required
  85.  
  86.     OPT  means the field can be left blank
  87.  
  88.     RO  means the field is to be treated as read-only, memo fields will
  89. be displayed using the file viewing tool defined via the LIST
  90. environment variable.
  91.  
  92.   Extraction Column: 
  93.   ------------------
  94.     this only applies to the fields with type LIST and is used to
  95. specify which portion from the selection list's text is to be stored
  96. as the field actual data.  
  97.     0 indicates that the whole selection line is to be treated as the
  98. selected data, whereas any other positive integer is considered to
  99. indicate which column to extract (columns are delimited with one or
  100. more spaces).  This allows you to present a selection list where only
  101. a given column is the desired data to be stored permanently, whereas
  102. the remaining text can be purely descriptive.  For example you may
  103. want to have to the following selection list (eg. stored in RACE.LST)
  104. represents race groups to select from:
  105.  
  106.     1 BLK    Blacks
  107.     2 WHI    Whites
  108.     3 ASI   Asians
  109.     4 OTH   Other
  110.  
  111. So, if you want to wanted the three letter keyword to end up in the
  112. field data when the user makes a selection, you would want to use 2
  113. as the extraction column.
  114.  
  115.   Description:
  116.   ------------
  117.     This describe the field and is usually used for prompting the
  118. user about a given field during form entry.  This text is expected at
  119. the end of a field specification after a semicolon (;) used as the
  120. delimiter.
  121.  
  122.  
  123.  
  124.  
  125.  How do I use this from a batch file?
  126.  ------------------------------------
  127.  
  128.  Configuration: 
  129.      it is expected that the environment variables EDITOR
  130. and LIST be defined.  For example:
  131.  
  132.     SET EDITOR=EDIT.COM
  133.     SET LIST=EDIT.COM
  134.  
  135.  On startup this utility will expect the fields' default data (if
  136. any) to be present in a dedicated directory (usually called FORM
  137. unless otherwise specifed).  The fields are expected to be present as
  138. individual files without an extension matching the field_name.  A
  139. typical form setup and invocation might look like the following:
  140.  
  141.                                REM -- prepare fields in a directory
  142.  ECHO -- Preparing edit form...
  143.  MD FORM > NUL
  144.  ECHO OREGON> FORM\STATE
  145.  ECHO POLK> FORM\COUNTY
  146.  
  147. This initializes some of the fields (perhaps default values).
  148.  
  149.                                REM -- invoke the form editor (data entry)
  150.  FORMGET /F LICENSE.FFI -T"Driver License Application Form" /I3
  151.  IF ERRORLEVEL 255 ECHO "User has aborted editing"
  152.  
  153.  This tell the utility to use the LICENSE.FFI file (see above) as the
  154. form specification, it also defines a title used while the form is
  155. displayed and instructs the cursor to be positioned on the 3rd
  156. field on startup.
  157.  
  158.  
  159.  On exit this utility will update each individual field under the
  160. above mentioned directory FORM and will create for each field
  161. modified a matching file with a .MOD extension to indicate the field
  162. was modified by the user.
  163.  
  164.  Assuming this utility has just been exited the following script
  165. demonstrates how to display only those fields that have been modified.
  166.  
  167.                                REM -- detect what has changed and display it
  168.  ECHO -- Displaying all changes made...
  169.  CD FORM
  170.  FOR %%F IN ( *. ) DO IF EXIST %%F.MOD MORE < %%F
  171.  CD ..
  172.  
  173.  The following script will cleanup the form default data to get ready
  174. for the next form entry.  Note: you may want to leave certain fields
  175. present to carry data onto the next form entry.
  176.  
  177.                                REM -- cleanup
  178.  FOR %%F IN ( FORM\*.* ) DO DEL %%F > NUL
  179.  RD FORM > NUL
  180.  
  181.  
  182.  See the demo provided.
  183.  
  184.  Where to go from here?
  185.  ----------------------
  186.  
  187.  If you like this tool and would like to see more applications of it.
  188. please refer to SRM package also available at the same source.
  189.  
  190.  
  191.  
  192.  
  193. .END.
  194.  
  195. # VCS
  196. ### $Workfile:   mak.vcs  $
  197. ### $Revision:   1.0  $ $Date:   22 Dec 1991 09:37:56  $
  198. ### $Author:   Abdenacer A. Moussaoui  $
  199. ### $Logfile:   B:/UR.VCS/MAK.VCV  $
  200. # VCS
  201. ##_12/07/1991_______________________________________________________________##
  202.