
    dBTAB
    DBF to TAB-Delimited Text File Converter

    Version 1.11

    Copyright (c) 1997 by Simone Govoni
    e-mail: govoni@cs.unibo.it

    All trademarks are recognised as belonging to their respective owners.


    1.  WHY dBTAB?

    dBTAB is a small utility written to solve a common problem: inclusion of
    DBF files into word processor's documents, like those produced by Word or
    Wordperfect.

    dBTAB reads a DBF file (created with dBASE III+ or Clipper) and writes an
    ASCII file with field contents delimited with TAB characters. This file
    can be easily converted into a table by a feature that many word
    processors have: making a table from a TAB delimited file (WinWord 6.0 and
    Wordperfect 5.1 surely have this capability). In this way you don't have
    to take care of alignment problems arising when printing fixed format
    files with proportional fonts.

    2.  SYSTEM REQUIREMENTS

    dBTAB can be executed on every computer equipped with DOS 3.0 or higher.
    You shouldn't have problems using an old PC powered by an 8088 CPU and
    with 256KB of RAM. If your PC can execute dBASE III+ or Clipper, you can
    surely run dBTAB on it.

    3.  INSTALLATION

    To install dBTAB on your computer simply copy the file DBTAB.EXE on a
    directory on your path.

    4.  USAGE

    dBTAB is very easy to use. The command line is:

        DBTAB [switches] dbffile[.dbf] [txtfile[.txt]]

    where square brackets highlite an optional argument. dbffile is the name
    of the DBF file to read (.dbf is the default extension), while txtfile is
    the name of the file to create (.txt is the default extension). If
    txtfile.TXT already exists it WILL BE OVERWRITTEN WITHOUT CONFIRM. If the
    user doesn't specify a name for the txtfile, dBTAB will send the output to
    the standard output. Entering DBTAB /h at the DOS prompt gives you a
    summary of recognized switches.

    Here follows a more detailed explanation:

    /d  Records marked as deleted are excluded from the ASCII report.

    /f  With this switch you can specify which fields should appear in the
        output (default: all). The /f switch must be followed by a comma
        delimited list of field numbers: only these fields will be inserted in
        the ASCII report. The space between /f and the list is not mandatory.

        Examples:

        dbtab /f1,3 cars.dbf            Only the first and the third field
                                        will be printed.

        dbtab /f cars.dbf               Error: missing field list.

        dbtab cars.dbf                  All fields will be printed.

        Wrong field numbers (too high, too low, not numeric) are ignored and
        don't stop the execution. The /s option can be used to get the field
        numbers.

        The /f option can't be used with the /m option. Each one excludes the
        other.

    /l  Display dates using the four digits format for the year indication.
        Without this switch date fields are displayed reserving two digits to
        the year.

    /m  Use a specified mask to format the report rows. A mask is a string
        delimited by quoting characters (") that specify how to compose a row.
        A mask can contain only ASCII characters. A dollar sign, followed by a
        number or an ASCII symbol, specifies a variable.

        Recognized variables are:

        $<number>       contents of the <number>-th field;

        $$              the '$' character;

        $q              the quoting character (");

        $p              the '%' character;

        $t              the TAB character;

        $+              the value of an auto-incrementing counter is inserted
                        in the line. The counter starts from 1 and it is
                        incremented after each record.

        The mask processor is case sensitive: $q is different from $Q (which
        isn't implemented at the moment).

        Every other character in the mask is copied to the output without any
        processing. The mask is applied to each record of the DBF file. The
        space between /m and the list is not mandatory.

        Examples:

        dbtab /m"Title: $1 Author: $3" books

        dbtab /m"Record contents: $1 $t $2 $t $3 $t $4" cars.dbf

        The /m option can't be used with the /f option. Each one excludes the
        other.

    /s  Display the structure (the field list) of the DBF file.

    dBTAB is case sensitive about the switch list; /F is different from /f.
    Date type fields are printed using the local format as set by the COUNTRY
    entry in the CONFIG.SYS file (default is US format) and using the correct
    separators.

    5.  LIMITATIONS AND BUGS

    I've tested dBTAB only with DBF files produced by Clipper 5.2 and dBASE
    III+. It can't process memo fields. The only recognized field types are:
    character, numeric, logical and date.

    dBTAB doesn't process index files (those with extension NDX and NTX).

    6.  FEEDBACK & SUPPORT

    If you have suggestions, bugs notifications or any other kind of
    complaint, please drop me an e-mail. If you like the program feel free to
    let me know about by sending me an e-mail. My e-mail address will be valid
    until last months of 1998.

    7.  LICENSE

    dBTAB v1.11 is copyrighted freeware:

    - You may use it at home, at the office or in any government institution,
      without any restriction.

    - You may distribute it without any restriction provided that you don't
      ask money for it, with the exception of a small distribution fee.

    - THE SOFTWARE IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY
      INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
      AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL THE AUTHOR BE
      LIABLE FOR DIRECT, INCIDENTAL OR CONSEQUENTIAL DAMAGES, EVEN IF THE
      AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

    8.  REVISION HISTORY

    1.11 Fixed two bugs. In certain occasions one of them caused dBTAB to
         display garbage records stored after the DBF logical end. Corrected
         some typos in the documentation and improved the help screen.

    1.10 Added the mask support (/m) and the four-digits year's format (/l).
         Fixed some minor bugs.

    1.00 First released version.
