home *** CD-ROM | disk | FTP | other *** search
- #
- # This line (and all lines beginning with '#') are COMMENTS.
- #
- # This is a sample BTrieve Build (BTB) file. It allows for the
- # creation of Btrieve files in BTFILER. It does the same thing
- # as the BUTIL -CREATE function, but with one significant
- # difference: Error diagnostics are clearer. This removes (I
- # think) the most significant problem with the BUTIL -CREATE
- # process. Someday an interactive create utility will be part
- # of BTFILER, but until then, this will have to do...
- #
- # Case is not important, and some fields are optional (as
- # noted in comments).
- #
- # These are the fields possible listed in order of appearance
- # in the file level settings section:
- #
- # RECORD LEN=n
- # PAGE SIZE=n, multiple of 512
- # VARIABLE=<YES or NO>
- # BLANK TRUNCATION=<YES or NO> OPTIONAL!
- # DATA COMPRESSION=<YES or NO>
- # FREE SPACE THRESHOLD=<0, 10, 20 or 30>
- # PREALLOCATE=<YES or NO> OPTIONAL!
- # ALTERNATE FILE=<filename> OPTIONAL if no alternate key
- # INCLUDE DATA=<YES or NO> OPTIONAL!
- # NUMBER OF KEYS=n
- #
- #
- # These are file level settings, with more details...
- #
- RECORD LEN=131
- #
- # In the Help menu, see "Calculate Page Size" to find optimal size.
- #
- PAGE SIZE=1536
- VARIABLE=NO
- #
- # BLANK TRUNCATION is only meaningful with variable length
- # records, so this BLANK TRUNCATION= line is optional.
- #
- BLANK TRUNCATION=NO
- DATA COMPRESSION=NO
- #
- # FREE SPACE THRESHOLD=n, where 'n' is 10, 20 or 30 ONLY!
- #
- FREE SPACE THRESHOLD=20
- #
- # ALTERNATE FILE=fname, where fname is the name of a file like
- # UPPER.ALT. This line is optional IF no ALTERNATE=YES
- # key segments exist.
- #
- ALTERNATE FILE=UPPER.ALT
- #
- # INCLUDE DATA=<Y or N> is used to determine if the file is key only
- # Data only, or key and data. INCLUDE DATA= line is OPTIONAL!
- #
- # For KEY ONLY: INCLUDE DATA=NO
- # NUMBER OF KEYS=1
- # and key length is == to record length.
- #
- # For DATA ONLY: INCLUDE DATA=YES
- # NUMBER OF KEYS=0
- #
- INCLUDE DATA=Yes
- #
- # NUMBER OF KEYS= is used as a cross check of the segments
- # passed below. In case of a conflict, the option is given
- # to accept the key count reflected in the segments, or
- # abandoning creation of the file.
- #
- NUMBER OF KEYS=2
- #
- # END OF FILE LEVEL SETTINGS!
- #
- # This marks the beginning of key segment level information.
- # If I were you, and I were creating BTB files, I would
- # place a large comment band between each key segment
- # to remind myself what I think I am doing. Just a
- # thought...
- #
- # The lines for each key segment are in the following order:
- #
- # START=n, where 'n' is the starting position of the key
- # LEN=n, where 'n' is the length of the key
- # MODIFIABLE=s, where 's' is Y or N (or YES or NO or Yes or...)
- # Allows Modifications to be made to the key?
- # DUPLICATES=s, ditto above...Allows Duplicate keys?
- # ALTERNATE=s, where 's' is as above. Alternate Collating Sequence?
- # DESCENDING=s, like above. Sorts Hi to Lo?
- # MANUAL=s, where 's' is as above. Manual Key? (optional)
- # TYPE=t, where 't' is EXACTLY one (case difference OK) of the following:
- #
- # "String",
- # "Integer",
- # "Float",
- # "Date",
- # "Time",
- # "Decimal",
- # "Money",
- # "Logical",
- # "Numeric",
- # "Bfloat",
- # "Lstring",
- # "Zstring",
- # "Unsigned Binary",
- # "Autoincrement",
- #
- # NULL=n, where 'n' is the decimal NULL value (commonly 0 or 32) OR
- # NULL=N/A to explicitly state no NULL value.
- # NULL= is OPTIONAL.
- #
- # SEGMENT=s, where 's' is Y or N (or Yes or N0...). The number of
- # segments with a SEGMENT=No value should be the same
- # as the number of keys you declare.
- #
- #
- # Key 0/Segment 1
- #
- START=1
- LEN=11
- MODIFIABLE=n
- DUPLICATES=n
- ALTERNATE=n
- DESCENDING=n
- TYPE=STRING
- NULL=N/A
- SEGMENT=NO
- #
- # key 1/segment 1
- #
- START=12
- LEN=30
- MODIFIABLE=y
- DUPLICATES=y
- ALTERNATE=y
- DESCENDING=n
- TYPE=STRING
- NULL=N/A
- SEGMENT=YES
- #
- # key 1/segment 2
- #
- START=1
- LEN=11
- MODIFIABLE=y
- DUPLICATES=y
- ALTERNATE=y
- DESCENDING=n
- TYPE=STRING
- NULL=N/A
- SEGMENT=NO
- #
- # That's all, folks!
- #