home *** CD-ROM | disk | FTP | other *** search
/ World of Shareware - Software Farm 2 / wosw_2.zip / wosw_2 / DATABASE / ZEPHYR4B.ZIP / ZEPHYR4.002 / lha / ZEPHYR4 / README.DOC < prev    next >
Text File  |  1992-12-20  |  43KB  |  781 lines

  1.  
  2.  
  3.  
  4.  
  5.                         ZEPHYR 4.0
  6.  
  7.                      FoxPro2-Compatible
  8.                     Data Base Management
  9.                     For  Non-Programmers
  10.  
  11.  
  12.        INSTANTANEOUS RETRIEVAL FROM ANY DBASE DATA BASE
  13.  
  14.          Up to 1000 times the performance of dBASE IV and
  15.          up to 1500 times the performance of dBASE III+
  16.          Query-by-Example and SQL Record Selection Support.
  17.  
  18.  
  19.        INTEGRATED WINDOWING ENVIRONMENT
  20.  
  21.          Pull-Down Menus, Pop-Up Selection Windows, and
  22.          Mac-like Dialog Boxes Make Zephyr a Breeze to Use
  23.  
  24.  
  25.        UP TO 25 OPEN DATA BASES OF 1 BILLION RECORDS EACH
  26.  
  27.          Supports 255 Indexes and 256 Fields per File
  28.  
  29.  
  30.        INTEGRATED EDITORS FOR REPORTS, LABELS, FORM LETTERS
  31.  
  32.          Unlimited Design Potential Even for First-Time Users
  33.  
  34.  
  35.        TOTALLY CUSTOMIZABLE USER INTERFACE
  36.  
  37.          Tailor Zephyr to Work Your Way in Just a Few Seconds
  38.          Complete Support for Foreign Dates and Numeric Fields
  39.  
  40.  
  41.        INSTANTLY ACCESIBLE PC TOOLKIT
  42.  
  43.          Includes Sophisticated Editor, Form Letter Generator,
  44.          Screen Format Generator, Error Correction System and
  45.          FoxPro's Calculator, Calendar/Diary, and Puzzle for Fun
  46.  
  47.        20K TSR & HIGH-RESOLUTION GRAPHICS DATA BASE SUPPORT
  48.  
  49.          Load Zephyr as a 20K TSR and press a "hot-key" to toggle
  50.          to your other favorite programs.  And add .PCX graphics
  51.          to your standard dBASE-compatible data bases with full-
  52.          256-color with resolutions up to 800 x 600.
  53.  
  54.   Requirements: IBM-compatible personal computer with minimum 640K RAM
  55.    (490K free RAM), DOS 2.1 (3.1 for networks) or higher, hard disk with
  56.    3.5MB free, and virtually any monitor and display adaptor.
  57.  
  58.   Enhancements:  Zephyr thrives on 386/486 machines with expanded memory,
  59.    SuperVGA color displays, and a mouse.
  60.                             VERSION 4 ENHANCEMENTS
  61.      For existing Zephyr users, here is a description of new features in Zephyr
  62. 4.0. Release notes for prior versions are included after the Ver. 4.0 summary.
  63. Because Zephyr relies upon the FoxPro 2.0 data base engine, it brings a
  64. previously unavailable level of power to the non-programmer.  In tests against
  65. IBM's finest mainframes running IBM's finest data base software (DB2), FoxPro
  66. outperformed DB2 in search retrieval times by a margin of better than 4 to 1.
  67. IBM's data base software alone costs more than your house!  Now, that same
  68. performance is available in every Zephyr application you build. Much of this
  69. magic is the result of Fox Software's patented Rushmore technology.  In a
  70. nutshell, it allows users to index virtually every field in a data base with
  71. compressed indexes consuming roughly one-sixth the space of comparable dBASE IV
  72. indexes.  Once a data base is indexed in this way, virtually all searches make
  73. intelligent use of ALL these indexes to retrieve the desired data. In tests
  74. against data bases of over a million records, retrieval times on a search are
  75. typically limited by the speed of your printer and display screen.
  76.  
  77.      Unlike prior versions of dBASE and FoxPro, Zephyr now allows you to build a
  78. compound .CDX index file which contains index data on up to 255 different index
  79. expressions.  A compound index with the same file name as the data base is
  80. automatically opened whenever the data base itself is opened.  The simplest way
  81. to create the compound index file is to do so when the data base is created or
  82. revised.  Choose the BUILD DATA BASE option from the BUILD pull-down menu.
  83. After entering a field name, you will notice a shaded area immediately to the
  84. left of the field name.  Use the <LEFT> cursor key to move into this area.
  85. Pressing the <SPACE BAR> will reveal an <Up> arrow signifying that the field
  86. will be indexed in ascending order (A to Z).  If you press the <SPACE BAR>
  87. again, a <Down> arrow will appear signifying a descending index (Z to A).  A
  88. third press will eliminate the arrows which means the field will not be indexed.
  89. When the desired index is displayed, press <ENTER> to continue.  If your data
  90. base will be searched on most of the fields in the data base, we recommend
  91. indexing every field EXCEPT the MEMO fields.  This will result in most searches
  92. using EQUALS, NOT EQUALS, GREATER THAN, LESS THAN, AT LEAST, and AT MOST being
  93. virtually instantaneous.  NOTE:  Searches for something "CONTAINED IN" a field
  94. do not achieve performance benefits from the Rushmore technology.  Should you
  95. need to add additional indexes to your compound index after the data base is
  96. created, the file can be modified by choosing the REVISE OLD option from the
  97. BUILD DATA BASE selection.  If you need special indexes which use multiple
  98. concatenated fields, these can be added from the BUILD COMMAND option. The
  99. syntax is INDEX ON <expression> TO TAG <indexname> OF <CDX index filename>. Or
  100. you may build indexes using Zephyr's pull-down menus in the usual way. Version
  101. 4.0 supports the old FoxPro indexes but defaults to the new .CDX indexes.
  102.  
  103.      It should be stressed that the FoxPro programming language now includes
  104. almost 1,000 programming commands and functions.  A 1,000-page manual would not
  105. begin to do justice to the new language.  Nor would it be practical to force new
  106. users to print such a document as part of a shareware program.  For that reason,
  107. we recommend that you consider purchasing FoxPro Made Easy for FoxPro 2.0 or an
  108. equivalent book WHICH YOU CAN UNDERSTAND.  Such books are available at most
  109. major book stores.  And, if all else fails, we sell these books to registered
  110. users.  Virtually EVERY COMMAND AND FUNCTION of the FoxPro language is supported
  111. from the command prompt within the Zephyr program.  However, our technical
  112. support ends at the command prompt.  It would take a year in a major university
  113. to do FoxPro 2.0 justice.  We cannot begin to do that by telephone. If this
  114. sounds like a cop out, IT IS!  We support Zephyr as a menu-driven data base
  115. system for non-programmers.
  116.                          RUNNING ZEPHYR AS A 20K TSR!
  117.  
  118.      Zephyr takes advantage of application switching technology by allowing you
  119. to load the software as a 20K terminate-and-stay-resident program.  You then can
  120. toggle between Zephyr and another application with a single keystroke.  Zephyr
  121. can be loaded as a TSR in several ways:
  122.  
  123.      (1)  From the DOS prompt, type ZEPHYR TSR.  Zephyr will be loaded, and then
  124. the DOS prompt will redisplay.  You can then run any other program desired.  To
  125. toggle back to Zephyr, press <CTRL-ALT>.  To return to your other application,
  126. press <ALT-Z> from within Zephyr.
  127.  
  128.      (2)  From the DOS prompt, load Zephyr in the normal way by typing ZEPHYR.
  129. When the main menu appears, press <ALT-Z> to return to DOS.  Then run any other
  130. program.  To switch back to Zephyr, press <CTRL-ALT>.
  131.  
  132.      (3)  At the DOS prompt, create an environment variable named TSR and store
  133. the name of a batch file to be run when you hot-key out of Zephyr.  For example,
  134. SET TSR=C:\SAMPLE.BAT tells Zephyr to run the C:\SAMPLE.BAT batch file whenever
  135. the user presses <ALT-Z> from within Zephyr.  Then create the SAMPLE.BAT file
  136. using any desired DOS commands.
  137.  
  138.  
  139.                .PCX GRAPHICS FIELD SUPPORT IN ZEPHYR DATA BASES
  140.  
  141.      Zephyr now includes built-in support to store, display, and print .PCX
  142. graphics images as part of a standard Zephyr (or dBASE-compatible) data base.
  143. In order to display or print graphics fields, you MUST have a CGA, EGA, VGA,
  144. SuperVGA, or Hercules-compatible graphics card in your computer.  In order to
  145. print graphics fields, you MUST have a Hewlett-Packard LaserJet-compatible
  146. printer.  The time required to print graphics images on dot matrix printers
  147. makes it impracticable to develop printing software for that environment.
  148.  
  149.      Configuring Zephyr to support your graphics display is automatic in most
  150. cases.  If your computer has a graphics card, Zephyr will tell you this when the
  151. program loads.  In certain circumstances, Zephyr may identify your particular
  152. graphics card incorrectly.  This is particularly the case if you are using an
  153. EGA or VGA card in Hercules-mode with a monochrome display.  There also are some
  154. so-called SuperVGA cards built into notebook computers which lack the necessary
  155. RAM to do anything one would normally do in SuperVGA mode.  In these cases, you
  156. may need to manually set the appropriate video mode for Zephyr. We recommend you
  157. first try Zephyr AS IS.  Then resort to the manual method if you can't get an
  158. image to display.  A sample image is included which SHOULD work in BLAKBOOK.
  159.  
  160.      To FORCE a certain graphics mode, you must set the VM environment variable
  161. at the DOS level.  Exit to DOS with Zephyr NOT running and type:  SET VM=nn
  162. where nn is a number representing the desired graphics mode.
  163.  
  164.      If you have a Herc card or an EGA/VGA card in Herc mode, type: SET VM=99
  165.  
  166.      If you have a SuperVGA, Zephyr can usually figure out the best resolution.
  167. If you want 800x600x256 resolution and have the necessary display RAM on your
  168. VGA card, type: SET VM=42
  169.  
  170.      If you have SuperVGA and display is a mess, try: SET VM=40 or SET VM=41
  171. To force any VGA display into standard 320x200x256 mode, type: SET VM=19
  172.      Zephyr's .PCX viewer and printer is active in BROWSE, EDIT, and ADD modes
  173. of the INPUT pull-down menu ONLY!
  174.      There are TWO WAYS to store .PCX images in your Zephyr data bases: (1) as
  175. linked DOS files or (2) as MEMO fields in particular records of a data base.
  176.  
  177.      To view .PCX images stored with a .PCX DOS file name, enter the name of the
  178. file WITHOUT the .PCX file extension in any character-type field. For example,
  179. if you have a PROPERTY field in your data base and you store HOUSE1 in this
  180. field for a particular record, then HOUSE1.PCX will display when you activate
  181. the .PCX graphics viewer.  NOTE: HOUSE1.PCX must be in the \ZEPHYR4 directory.
  182.  
  183.      In the alternative, you may import a .PCX image into a MEMO field for later
  184. display.  In INPUT BROWSE mode, position the cursor on the desired MEMO field in
  185. the desired record. Press <F6> to import a DOS file.  Highlight the desired .PCX
  186. file, and press <ENTER>.  When Zephyr's editor displays the file, immediately
  187. press <ESC>ape without changing ANY of the data!
  188.  
  189.      There are times when it is desirable to place .PCX images in a MEMO field
  190. and other times when they are best left as individual DOS files. For example, in
  191. a real estate application, one might wish to display a picture of the high
  192. school for a particular area.  In this case, retaining the .PCX file as a DOS
  193. image would allow it to be used in displays for more than one house for sale on
  194. the same street.  This could save considerable disk space.  On the other hand, a
  195. .PCX image of the living room of a particular home might best be saved as a MEMO
  196. field with the record for the particular home.  This would assure that the
  197. correct living room picture always was matched with its house. See BLAKBOOK.DBF.
  198.  
  199.      To activate the .PCX file viewer, position the cursor on the desired field
  200. of the desired record in BROWSE, EDIT or ADD records mode.  Then press <ALT-V>
  201. to VIEW the .PCX image. Open BLAKBOOK.DBF and try it on the Mundy record.
  202.  
  203.      To print the image, you first must VIEW it.  While it is displayed, press
  204. <ALT-P> to print the image to any LaserJet-compatible printer.  Pressing any
  205. other key exits from the graphics display.
  206.  
  207.      In BROWSE mode, only the image is displayed when you press <ALT-V>. In EDIT
  208. or ADD records mode, the entire screen contents are displayed in addition to the
  209. image.  And, yes, you can move the image to suit your needs. It is possible to
  210. display field data in and around a picture of a house, for example.  This is
  211. ideal for real estate applications!!
  212.  
  213.      To move the image from its default, exit to DOS and set two environment
  214. variables.  The first (ZTOP) tells Zephyr where the top corner of the image
  215. should begin.  The second (ZLEFT) tells Zephyr where the left edge of the image
  216. should begin.  These numbers are computed in PIXELS and obviously change
  217. depending upon the type display. Here are the widths and lengths, respectively,
  218. of most display cards:
  219.  
  220.    Display card         WIDTH in PIXELS        LENGTH in PIXELS
  221.    ------------         ---------------        ----------------
  222.    Standard VGA              320                     200
  223.    Super VGA                 640                     480
  224.    Mode 40 VGA               640                     400
  225.    Mode 42 VGA               800                     600
  226.    EGA                       640                     350
  227.    CGA                       640                     400
  228.      Thus, to start the display of an image half way down the screen and half
  229. way across the screen in standard VGA mode, you would:
  230.              SET ZTOP=100
  231.              SET ZLEFT=160
  232.  
  233.      Then, run Zephyr again and check your work.  Once the results are the way
  234. you desire, these settings can be saved in your AUTOEXEC.BAT file.
  235.  
  236.      If you are interested in a low-cost, full-color method to capture and
  237. create images, here is a suggestion.  Purchase the Computer Eyes video capture
  238. board and the Canon XapShot camera.  With this combination you can produce
  239. images exactly like the sample homes which are distributed with Zephyr.  Once
  240. the images are captured, the software included with the image capture board can
  241. convert them into .PCX files for use with Zephyr.  The cost will be under $800.
  242.  
  243.  
  244.                             AUTOMATIC PHONE DIALER
  245.  
  246.  
  247.      To use Zephyr's automatic phone dialer, you must have a Hayes-compatible
  248. modem in your computer.  And, you need to tell Zephyr which PORT is talks to.
  249. At the DOS level BEFORE running Zephyr, type one of the following to identify
  250. the COM port of your modem: SET PORT=1 or SET PORT=2.  With some versions of DOS
  251. and some modems, you also will need to issue the following command at the DOS
  252. level: MODE COM1:2400,N,8,1.  Finally, you will need to tell Zephyr whether your
  253. phone line supports Touch-Tone service: SET PREFIX=ATDT for tone support or SET
  254. PREFIX=ATDP for pulse dialing.  Please note: The phone dialer sometimes works
  255. and sometimes doesn't with DR-DOS 5.0 ... their problem, not ours!
  256.  
  257.      To dial a number in BROWSE, EDIT or ADD modes, position cursor on the
  258. CHARACTER field containing the phone number to be dialed and press ALT-D to
  259. dial.  That's all there is to it.  Once you lift the telephone receiver, press
  260. <ENTER> to disengage the phone line from the modem.
  261.  
  262.  
  263.                   RELATIONAL TABLE LOOKUP & CALCULATED FIELDS
  264.  
  265.  
  266.      Table lookup allows you to "pop up" a table of choices for virtually any
  267. field in any Zephyr data base.  For example, if you stored part numbers in your
  268. data base, you might want to give users a pop up list of parts to choose from.
  269. When a choice was made, the part number would automatically be stuffed into the
  270. data base. This eliminates errors and greatly simplifies the data entry process.
  271.  
  272.      Zephyr's method of creating table lookup files is simple.  You just build a
  273. data base with the same name as the field with which you wish to use it.  If the
  274. name of your part number field is PARTNO, then you would create a PARTNO.DBF
  275. file to store the table data.  The data in the very first field of PARTNO.DBF is
  276. displayed when the user presses the TABLE LOOKUP key <F8>. Once the user chooses
  277. any entry in the table by pressing <ENTER>, Zephyr will automatically transfer
  278. ALL matching fields of data from the table to the primary file's current record.
  279. For those that like lists, a more detailed explanation of the necessary
  280. requirements to create a table lookup file follows.
  281.  
  282. TABLE LOOKUP REQUIREMENTS:
  283.  
  284.   (1) Must be in INPUT BROWSE, EDIT, or ADD records mode to use TABLE LOOKUP.
  285.  
  286.   (2) Data base must exist with file name corresponding to the field name in the
  287. primary file, i.e. the field from which you invoke table lookup.  If the field
  288. name is over 8 characters, the file name must be the first 8 char's.
  289.  
  290.   (3) The lookup table MUST contain a field which EXACTLY MATCHES the field from
  291. which table lookup was invoked, i.e. if the primary data base has an 8-character
  292. ID field of type CHARACTER, the lookup table must have the same.
  293.   (4) The lookup table MUST be indexed on the lookup field using a compound
  294. index with a tag matching the field name.  This index is easily created when the
  295. actual data base is built.   Simply move cursor to left of field name and press
  296. <space bar> to reveal <UP arrow>.  Then <TAB> to next field.
  297.  
  298.   (5) The lookup table need not be opened before the table lookup function is
  299. invoked; however, it will be faster if it is.  If already open, it will be used
  300. as it is found.  If not open, it will be opened for the table lookup operation
  301. and then closed.
  302.  
  303.  
  304. TABLE LOOKUP OPERATION:
  305.  
  306.   (1)  Position on the field from which you wish to invoke table lookup.
  307.  
  308.   (2)  Press <F8> function key to access the table.
  309.  
  310.   (3)  The table will be positioned on the record matching the current field
  311. value in the primary data base, if any.
  312.  
  313.   (4)  The table displays the FIRST FIELD ONLY from the table.  You may choose
  314. what field to display by making it the first field in your table lookup file.
  315.  
  316.   (5)  The user can move through the table using HOME (top), END (bottom), UP,
  317. and DOWN cursor keys.  To choose a desired item, press <ENTER> or the <Left> or
  318. <Right> cursor keys.  To exit without selecting, press <ESC>.
  319.  
  320.   (6)  If a table item is selected, Zephyr moves data from ALL MATCHING FIELDS
  321. in the table to the corresponding fields in current record of the primary data
  322. base, i.e. the data base from which the table was invoked.
  323.  
  324.  
  325. WARNINGS:
  326.  
  327.   (1)  Make certain that there are NO FIELDS in the table lookup file
  328. with the SAME FIELD NAMES as your primary data base which you DO NOT WANT
  329. transferred to the primary file.  The data transfer is AUTOMATIC if the
  330. field names match.  You can avoid the problem by changing a field name
  331. in the table lookup file.
  332.  
  333.  
  334.                         ZEPHYR MEMO FIELD ENHANCEMENTS
  335.  
  336.      Memo field manipulation has been enhanced dramatically.  This includes the
  337. way in which a memo field is activated as well as the ability to import data
  338. into and export data from memo fields.
  339.  
  340.      The custom format options in the BUILD ADD/EDIT FORMAT selection allow a
  341. new EXPLODE function for memo fields.  After choosing this option, a user can
  342. simply position on a MEMO field and press <ENTER> to edit. In BROWSE, ADD, and
  343. EDIT record modes, you now can import data into memo fields by positioning on
  344. the desired MEMO field and pressing <F6>.  In a similar way, you can export memo
  345. field data by positioning on the desired MEMO field and pressing <F7>.  Both
  346. import and export functions are file-oriented.  In other words, you can only
  347. import an entire file into a memo field.  And, you can only export an entire
  348. memo field to a file.  Both append and overwrite are supported in import and
  349. export modes.
  350.  
  351.      The data in MEMO fields need NOT be ASCII text.  However, if an image or
  352. data in some proprietary format is stored in the MEMO field, it may not display
  353. properly with Zephyr's standard ASCII editor or .PCX file viewing utility.
  354.  
  355.      NOTE:  Zephyr now allows users to import .PCX file images into a MEMO
  356. field.  These images then can be displayed using <ALT-V> provided the MEMO field
  357. contents is NOT modified in any way.  After import, Zephyr always displays the
  358. MEMO field for editing.  If you have imported a .PCX image, then press <ESC>
  359. immediately after importing the image to assure that the image is not altered!
  360.  
  361.  
  362.                        ZEPHYR FILE IMPORTING & EXPORTING
  363.  
  364.      The FILE IMPORT and EXPORT options have been expanded dramatically to
  365. provide support for many new file formats.  The following formats are supported:
  366.  
  367. FILE FORMAT                        IMPORT              EXPORT
  368. -----------------------            ------              ------
  369.  
  370. FoxPlus & dBASE III+                 Yes                 Yes
  371. Delimited                            Yes                 Yes
  372. DIF (VisiCalc spreadsheets)          Yes                 Yes
  373. FW2 (Framework II data)              Yes                 ---
  374. MOD (MultiPlan 4.01)                 Yes                 Yes
  375. PDOX (Paradox 3.5)                   Yes                 ---
  376. RPD (RapidFile 1.2)                  Yes                 ---
  377. SDF (System Data Format)             Yes                 Yes
  378. SYLK (MultiPlan)                     Yes                 Yes
  379. WK1 (1-2-3 version 2.x)              Yes                 Yes
  380. WK3 (1-2-3 version 3.x)              Yes                 ---
  381. WKS (1-2-3 version 1-A)              Yes                 Yes
  382. WR1 (Symphony 1.1 or 1.2)            Yes                 Yes
  383. WRK (Symphony 1.0)                   Yes                 Yes
  384. XLS (Excel 2.0)                      Yes                 Yes
  385.  
  386.                               ZEPHYR'S SQL SELECT
  387.      Zephyr now supports IBM's Structured Query Language through implementation
  388. of the SQL (pronounced see-quill) SELECT statement.  This can be issued from the
  389. BUILD COMMANDS prompt to quickly retrieve data from multiple relational data
  390. bases.  As one of Zephyr's more powerful new features, you are urged to consult
  391. a good primer on SQL or one of the new FoxPro 2.0 reference works for more
  392. exhaustive coverage of the topic.  Most community colleges and virtually all
  393. colleges and universities provide semester-long courses on SQL.  We obviously
  394. cannot do it justice in a few pages.  Before executing a SELECT command, we
  395. recommend you issue the command SET TALK ON which will cause Zephyr to display
  396. the query time and number of records found after a SELECT command is issued.
  397. The basic SQL SELECT syntax is as follows:
  398.  
  399. SELECT [ALL | DISTINCT]
  400.      [<database>.]<select_item>
  401.           [AS <column_name>]
  402.           [, [<alias>.]<select_item>
  403.           [AS <column_name>] ...]
  404.      FROM <database> [<local_alias>]
  405.           [, <database>
  406.           [<local_alias>] ...]
  407.      [[INTO <destination>]
  408.           | [TO FILE <file>
  409.           [ADDITIVE] | TO PRINTER]]
  410.      [PLAIN]
  411.      [NOWAIT]
  412.      [WHERE <joincondition>
  413.           [AND <joincondition> ...]
  414.                [AND | OR
  415.                <filtercondition>
  416.                [AND | OR
  417.                <filtercondition> ...]]]
  418.      [GROUP BY <groupcolumn>
  419.           [, <groupcolumn> ...]]
  420.      [HAVING <filtercondition>]
  421.      [UNION [ALL] <SELECT command>]
  422.      [ORDER BY <order_item>
  423.           [ASC | DESC]
  424.           [, <order_item>
  425.           [ASC | DESC]...]]
  426.  
  427. A simple select statement is outlined below.  For additional information, look
  428. in the HELP file under the SELECT - SQL topic or consult FoxPro2 Made Easy.
  429.  
  430. SELECT [ALL | DISTINCT]
  431.   [<alias>.]<select_item> [AS <column_name>]
  432.   [, [<alias>.]<select_item> [AS <column_name>] ...]
  433.  
  434.      Each <select_item> can be:
  435.  
  436.      *    A field from a database in the FROM clause.
  437.  
  438.      *    A constant specifying that the same constant value is to appear in
  439. every row of the query results.
  440.  
  441.      Field functions available for use with a <select_item> that is a field or
  442. an expression involving a field:
  443.      *    AVG(<select_item>) - Averages a column of numeric data.
  444.  
  445.      *    COUNT(<select_item>) - Counts the number of <select_items> in a
  446. column.  COUNT(*) counts the number of rows in the query output.
  447.  
  448.      *    MIN(<select_item>) - Determines the smallest value of <select_item> in
  449. a column.
  450.  
  451.      *    MAX(<select_item>) - Determines the largest value of <select_item> in
  452. a column.
  453.  
  454.      *    SUM(<select_item>) - Totals a column of numeric data.
  455.  
  456.      You cannot nest field functions.
  457.  
  458.      By default, ALL rows in query results are displayed.  To exclude duplicates
  459. of any rows, specify DISTINCT. You can use DISTINCT only once per SELECT clause.
  460.  
  461.      The optional AS <column_name> clause specifies the heading for a column in
  462. the query output.  This is useful when you have a <select_item> that is an
  463. expression or contains a field function and you want to give its column a
  464. meaningful name.  The <column_name> can be an expression, but cannot contain
  465. characters (for example, spaces) that are not allowed in  database field names.
  466.  
  467. FROM <database> [<local_alias>]
  468.   [, <database> [<local_alias>] ...]
  469.  
  470.      Lists each <database> that contains data to be retrieved by the query.
  471. <local_alias> is a temporary name for a <database>.  If you specify a
  472. <local_alias>, you must use the <local_alias> in place of the database name
  473. throughout the SELECT command.
  474.  
  475. INTO <destination>
  476.  
  477.      If INTO is specified, no output display is produced so if you include an
  478. INTO and a TO clause in the same query, TO is ignored.  If you don't include
  479. INTO clause, query results appear on the screen and can also be directed to the
  480. printer or a file with the TO clause.
  481.  
  482.      <destination> can be:
  483.  
  484.      *    ARRAY <array> - Stores query results in a memory variable <array>.
  485.  
  486.      *    CURSOR <cursor> - Stores query results in a <cursor>.  If <cursor> you
  487. specify is the name of an open database, FoxPro closes the database and creates
  488. a cursor without warning if you have SET SAFETY OFF.  After the SELECT command
  489. is executed, the temporary cursor remains open but is read-only.  Once you close
  490. the cursor, it is deleted.  Cursors may reside on the SORTWORK drive.
  491.  
  492.      *    DBF <database> | TABLE <database> - Stores query results in a
  493. <database>.  If you specify a <database> that is already open, Zephyr closes the
  494. database and reopens it without warning if you have SET SAFETY OFF.  If you
  495. don't specify an extension, the database is given a .DBF extension.  After the
  496. SELECT command is executed, the database remains open and is active.
  497.  
  498.      After issuing a SELECT command, you generally can issue a BROWSE command to
  499. view your data if you include the INTO DBF <filename> clause in your command.
  500.  
  501.      Because SQL SELECT commands take some getting used to, you now can retrieve
  502. your last 10 commands in the COMMAND WINDOW by pressing the <Up> arrow after
  503. executing a command.  When the prior command appears, move the cursor if you
  504. desire to modify the displayed command.  If you type a character in the first
  505. character position, then the ENTIRE COMMAND WILL BE ERASED.  Press <ENTER> to
  506. execute your command after making any desired modifications.
  507.  
  508.  
  509. SPECIAL NOTE:
  510.  
  511.      SQL SELECT commands create data bases and work files which are opened in
  512. one of the 25 data bases areas supported by Zephyr.  Before executing a SELECT
  513. command, make certain that there are several free work areas.
  514.  
  515.      Once you complete your SELECT session, Zephyr needs to be restored to its
  516. original view of the data bases which were in use before you began.  When you
  517. press <ESC> to exit from BUILD COMMANDS mode, you will be asked whether to
  518. RESTORE ORIGINAL VIEW.  Always type Y if you have executed SQL SELECT commands.
  519.  
  520.                         LOADING CUSTOMIZED DATA BASE VIEWS 
  521.  
  522.      Zephyr now allows you to start up using different view files. In this way
  523. you can store different applications with the SAVE VIEW command, and then re-
  524. start Zephyr using a user-defined view.
  525.  
  526.      Assuming you have saved a view file with the name MYAPP.VUE, you could
  527. load Zephyr with the MYAPP view by issuing the following command at the DOS     
  528. prompt:  ZEPHYR MYAPP
  529.  
  530.      If you wish to load Zephyr without the TSR and .PCX support and also load
  531. the MYAPP view, then issue the following command:  ZEPHYR LEAN MYAPP
  532.  
  533.      NOTE: The view file ALWAYS must be specified as the LAST parameter. Thus,
  534. ZEPHYR MYAPP LEAN will NOT work properly.
  535.  
  536.  
  537.                              
  538.                           ZEPHYR MEMORY REQUIREMENTS
  539.  
  540.      Zephyr and its FoxPro data base engine need lots of expanded memory to
  541. really thrive.  Zephyr can run in 480-490K of RAM on a vanilla 640K machine, but
  542. it is NOT a pretty sight.  Sluggish is the kindest word that comes to mind. If
  543. you are in this environment, we recommend you start the program with the fol-
  544. lowing command: ZEPHYR LEAN.  This disables the TSR and .PCX image functions and
  545. saves 50K of precious RAM space.  Our recommendation: buy some expanded memory
  546. while it is still inexpensive.  Zephyr deserves it and will make you proud!!!
  547.  
  548. Another alternative is to upgrade to Microsoft's DOS 5.0.  Even with a 1MB RAM
  549. machine, the available memory for programs will be increased considerably.
  550.  
  551.  
  552.                          ZEPHYR SAMPLE APPLICATIONS
  553.  
  554.       To keep your shareware evaluation investment to a minimum, the shareware
  555. version of Zephyr is distributed witha modest sample application. Use FILE OPEN 
  556. to open the BLAKBOOK.DBF file in the \ZEPHYR4 directory. Now use BROWSE to view
  557. the various records.  Some helpful hints are provided to get you started. 
  558.  
  559.  
  560.                             LET US HEAR FROM YOU
  561.  
  562.       Whether or not you decide to register and obtain an end-user license for
  563. continued use of Zephyr, we value your comments and suggestions.  As an incen-
  564. tive to encourage you to write, we make the following offer.  Send us a note
  565. with $5 for shipping and handling, and we will send you a shareware copy of our
  566. brand-new hard disk security software, Pearly Gates.  It will protect your
  567. hard disk against tampering and viruses.  And you're welcome to pass it along
  568. to your friends for evaluation.
  569.  
  570.       To order, send your name and mailing address together with $5 in U.S. 
  571. currency.  No checks please!
  572.  
  573.  
  574.  
  575. Release 1 Notes:  A small utility program (MEM.COM) is included. By typing
  576. MEM at the DOS prompt while positioned in the \ZEPHYR4 directory, this program
  577. will tell you the amount of memory installed and available on your machine.
  578. Version 1.01 Notes:   A filter assist mode has been added.  Whenever the select
  579. filter option is chosen, the standard filter editor popup will display.  If you
  580. understand Boolean logic, just type your desired filter and press <CTRL-ENTER>.
  581. If you wish to cancel an existing filter, press <DEL> then <CTRL-ENTER>. If you
  582. wish to exit from the filter editor and leave the filter as is, press <ESC>. If
  583. the filter is set to blank or is already blank, pressing <CTRL-ENTER> will then
  584. trigger the filter assist mode. Windows will display allowing you to select the
  585. field to be used for the filter, then the desired relation, then a value. This
  586. process may be repeated for as many conditions as are desired in the filter.
  587. Version 2.0 Enhancements:  Zephyr has provided record-level edit checks since
  588. its introduction.  Field-level edit checks now are supported as well.  These
  589. are automatically generated as part of the BUILD ADD/EDIT FORMAT option.  The
  590. difference in the two is that record-level edit checks are executed whenever a
  591. data entry screen is completed (SAVED).  Field-level edit checks are executed
  592. as each field is entered on the screen.  Thus, if there are data entry errors,
  593. the user is prompted for a correction immediately rather than when the entire
  594. data entry screen has been completed.  Depending upon the type of field, three
  595. types of field-level edit checks now are supported: validity checks, picture
  596. templates, and lists of values.
  597.  
  598. Validity checks allow the user to automatically define what conditions must be
  599. met for a field entry to be accepted.  This is the REVERSE of record-level edit
  600. checks which define when an ERROR has occurred.  For character, date, and
  601. numeric fields, Zephyr will automatically write the necessary code to force an
  602. entry in a field, i.e. a character or date field must be non-blank and numeric
  603. fields must be non-zero.  Any other validity check using a legal FoxPro expres-
  604. sion is also permissible.  If you write your own, you may also specify an error
  605. message to be displayed when the error is encountered.
  606.  
  607. Picture templates allow the user to define the format for a particular data
  608. entry field.  For example, you could force all data to upper case.  Or zip
  609. codes could be forced into a format of 99999-9999 where the 9's represent
  610. numbers which must be entered separated by a hyphen in position 6 of the zip
  611. code field.  A picture template for date fields defaults to 99/99/99 while a
  612. logical field template defaults to Y (meaning only Y or N is acceptable as an
  613. entry in the logical field).
  614.  
  615. List of values (or TABLE LOOKUP) is supported for character fields.  If you
  616. select this formatting option, Zephyr will prompt you to enter a list of
  617. acceptable values for the field separated by commas.  For example, if you had
  618. a field named COLOR, you might wish to specify the acceptable colors.  These
  619. would be entered as follows: RED,GREEN,BLUE,INDIGO,VIOLET.  When the user moves
  620. into the COLOR field, the first color specified will display unless a COLOR
  621. selection already has been made.  The user can simply press the <SPACE BAR> to
  622. toggle through the acceptable choices, pressing <ENTER> when the appropriate
  623. color is displayed.
  624. To utilize field-level edit checks, you first must build your data base.  Once
  625. built, make certain that the desired data base is selected by examining the
  626. name of the active file in use on line 24 of the screen.  Then choose the BUILD
  627. pull-down menu, highlight the ADD/EDIT FORMAT, and press <ENTER>.  When asked
  628. whether to ADD CUSTOM FORMAT OPTIONS, type Y.
  629.  
  630. For each field in the data base, you then will be prompted whether to ADD A
  631. CUSTOM FORMAT.  If you wish to, then type Y and <PgDn>.  Otherwise, type N.
  632. Depending upon the field type, a pop-up window will display the available types
  633. of edit formats available.  When you have chosen all desired options, press the
  634. <ESC> key.  This process will repeat for each field unless you change MORE
  635. CUSTOM FORMAT OPTIONS to N.  Each of the custom format options is explained
  636. below.  These differ depending upon the field type of each field.  Therefore,
  637. the explanation below is keyed to different field types supported by Zephyr.
  638.  
  639. CHARACTER FIELDS:
  640.  
  641. Validity check -  This means you want to specify a Boolean logic expression
  642.                   which defines when the data in the field has been entered
  643.                   correctly.  Highlighting this option and pressing <ENTER>
  644.                   will display a window in which you can enter the conditions
  645.                   which must be met and the error message which should be dis-
  646.                   played if the condition(s) are not met.  With character
  647.                   fields, Zephyr automatically writes the code to REQUIRE an
  648.                   entry in the character field.  If this isn't desired, press
  649.                   <CTRL-Y> to erase the code and enter your own.
  650.  
  651. Picture template  This enables you to define the format for data entered into
  652.                   this field.  There is no default.  To force the field to all
  653.                   upper case, you would enter an ! for each character position
  654.                   in the field.  For other examples, see the HELP file descrip-
  655.                   tion of the @ SAY picture templates.  Or consult the FoxPro
  656.                   Made Easy reference book.
  657.  
  658. List of values -  This permits definition of a list of acceptable values for
  659.                   this field.  As explained above, these values are typed in
  660.                   exactly as they should be displayed for the user.  Separate
  661.                   each value from the next with a comma.  Do NOT include a
  662.                   space after the commas unless you want that to be part of the
  663.                   value entered.
  664.  
  665.  
  666. DATE FIELDS:
  667.  
  668. Validity check -  If chosen, it defaults to requiring a non-blank date to be
  669.                   entered.  You may desire some other checks.  For example, to
  670.                   force entry of a date which is NOT in the future, the correct
  671.                   expression for a field named FILINGDT would be as follows:
  672.                   .NOT. EMPTY(FILINGDT) .AND. FILINGDT<=DATE()
  673.  
  674. Picture template  The default, if chosen, is a picture template of 99/99/99.
  675.  
  676. LOGICAL FIELDS:
  677. Validity check -  There is no default expression.  This typically would be used
  678.                   to force a logical field to match some other data which pre-
  679.                   viously has been entered.  For example, if there were a
  680.                   SPOUSE field and a MARRIED logical field (in that order), we
  681.                   might want to force the MARRIED field to True if the SPOUSE
  682.                   field were NOT empty.  Remember, however, that the SPOUSE
  683.                   field would have to appear on the data entry screen first to
  684.                   make this work correctly.  The correct syntax would be --
  685.                   .NOT. EMPTY(SPOUSE) .AND. MARRIED .OR. EMPTY(SPOUSE) .AND.
  686.                   .NOT. MARRIED
  687.  
  688. Picture template  If chosen, this option defaults to Y.  This tells Zephyr to
  689.                   force data entry for this logical field to accept only Y or
  690.                   N.  Without this picture template, Y, N, T, and F are all
  691.                   acceptable entries for a logical field.
  692.  
  693.  
  694. NUMERIC FIELDS:
  695.  
  696. Validity check -  The default, if chosen, is to force a non-zero entry into a
  697.                   numeric field.  Other possible uses for this might be to
  698.                   assure that a numeric calculation is correct.  For example,
  699.                   if a data base had a FILINGDT and ENDINGDT field as well as
  700.                   an AGE field, we might want to make certain that the AGE
  701.                   field correctly reported the number of days between the other
  702.                   two date fields, e.g. ENDINGDT-FILINGDT=AGE
  703.  
  704. Picture template  There is no default picture template.  This could be used to
  705.                   specially format a numeric field, perhaps to display a cur-
  706.                   rency symbol as part of the field data.
  707.  
  708.  
  709. MEMO FIELDS:
  710.  
  711. Validity check -  A special Zephyr function has been added to allow you to
  712.                   program an EXPLODING MEMO WINDOW whenever the user presses
  713.                   the <ENTER> key while positioned in a MEMO FIELD.  Choosing
  714.                   the VALIDITY CHECK option for a MEMO FIELD will cause the
  715.                   necessary EXPLODING WINDOW code to be written automatically.
  716.                   The syntax is EXPLODE("fieldname").  You need not change
  717.                   this AT ALL, if this is the desired effect.  No error message
  718.                   is necessary or appropriate with exploding memo windows.
  719.  
  720.  
  721. REMEMBER!!!   Field-level edit checks only apply in ADD and EDIT modes on the
  722.               INPUT pull-down window.  They are NOT executed while in BROWSE!
  723.  
  724. Enjoy!
  725.                                ZEPHYR 4.0 ORDER & INVOICE
  726.  
  727.  
  728.  
  729.         +-------------------------------------------------------------------+
  730.         | User Name      |                                                  |
  731.         |----------------|--------------------------------------------------|
  732.         | Address1       |                                                  |
  733.         |----------------|--------------------------------------------------|
  734.         | Address2       |                                                  |
  735.         |----------------|--------------------------------------------------|
  736.         | City State ZIP |                                                  |
  737.         +-------------------------------------------------------------------+
  738.  
  739.  
  740.         +-------------------------------------------------------------------+
  741.         | Quantity | Description                          |Item Cost| Total |
  742.         |----------|--------------------------------------|---------|-------|
  743.         |          | Zephyr 4.0 Single-User License with  |    50.00|       |
  744.         |          | soft-bound manual                    |         |       |
  745.         |----------|--------------------------------------|---------|-------|
  746.         |          | Zephyr 4.0 Network License           |   250.00|       |
  747.         |----------|--------------------------------------|---------|-------|
  748.         |          | FoxPro2 Made Easy (U.S.)             |    30.00|       |
  749.         |          | FoxPro2 Made Easy (Foreign)          |    50.00|       |
  750.         |----------|--------------------------------------|---------|-------|
  751.         |          | WAMPUM Single-User License           |    50.00|       |
  752.         |          | Index: ( ) Clipper ( ) dB3+          |         |       |
  753.         |----------|--------------------------------------|---------|-------|
  754.         |          | WAMPUM Network License               |   250.00|       |
  755.         |          | Index: ( ) Clipper ( ) dB3+          |         |       |
  756.         |----------|--------------------------------------|---------|-------|
  757.         |          | WAMPUM Soft-Bound User Guide         |    20.00|       |
  758.         |----------|--------------------------------------|---------|-------|
  759.         |          | dLITE Single-User Lic & manual       |    30.00|       |
  760.         |----------|--------------------------------------|---------|-------|
  761.         |          | MenuMaker Screen Generator           |    20.00|       |
  762.         |----------|--------------------------------------|---------|-------|
  763.         |          | Badge-O-Magic Single-User            |    50.00|       |
  764.         |----------|--------------------------------------|---------|-------|
  765.         |          | Badge-O-Magic Deluxe Version         |    99.00|       |
  766.         |----------|--------------------------------------|---------|-------|
  767.         |   ****   | Shipping and Handling per order      | 5.00 U.S|       |
  768.         |   ****   | $5 U.S. / $10 Canada & foreign       |10.00 for|       |
  769.         |==========|======================================|=========|=======|
  770.         |          | GRAND TOTAL w/ SHIPPING              |*********|       |
  771.         +-------------------------------------------------------------------+
  772.                  Include check or money order in US dollars payable to:
  773.                     Ward Mundy, PO Box 1169, Atlanta, GA 30301 USA.
  774.  
  775. For credit card orders:  (  ) VISA   (  ) MasterCard  Expire Date _____________
  776.  
  777. Signed: ______________________________  Card Number  __________________________
  778.  
  779.   ***  For fastest service, FAX your credit card order to 404/237-1167.   ***
  780.  
  781.