|
The first 64 bytes of the file
are as follows:
(All values are in decimal unless preceded
with "0x" for
hexadecimal.)
| Offset |
Length |
Contents |
| 0 |
2 |
"0x3E11" - filePro output/screen
format magic number |
| 2 |
4 |
Checksum of the encoded password (see
below) |
| 6 |
4 |
Checksum of the screen image |
| 10 |
2 |
Width of the form |
| 12 |
2 |
Length of the form |
| 14 |
2 |
Number of forms across the page |
| 16 |
2 |
Number of forms down the page |
| 18 |
2 |
Width of page |
| 20 |
2 |
Number of lines per page |
| 22 |
2 |
Number of lines to print per page |
| 24 |
2 |
Size of the extended header |
| 26 |
2 |
Extended header type (see
below) |
| 28 |
16 |
The encoded password
(see below) |
| 44 |
5 |
Name of form to print on (NCR Tower only) |
| 49 |
15 |
Reserved |
|
The extended header type is one of the following:
| Value |
Type |
| 128 |
Form or Label |
| 129 |
Report |
| 131 |
"Other" |
| 132 |
Screen |
| 178 |
Processing only format |
|
Extended header types 0, 1, 2, 3, 50, and 130
are for version 3.0 and earlier.
The format of extended header
types 128, 129, 131, and 178 (output formats)
is as follows:
| Offset |
Length |
Contents |
| 0 |
4 |
Variable-length
header descriptor (see below) |
| 4 |
2 |
Number of head/title lines |
| 6 |
2 |
Number of data lines |
| 8 |
2 |
Number of break levels |
| 10 |
9*2 |
Number of lines per subtotal/grand
total section |
| 28 |
2 |
Flags: Bit 0 Remove unwanted blank
lines
Bit 1 Alignment
check is needed
Bit 2 Grand
total should be printed on same page |
| 30 |
2 |
Break level for first form feed
break |
| 32 |
64 |
Sort information (see
below) |
| 96 |
16 |
Printer name |
| 112 |
2 |
Initialization print code number |
| 114 |
2 |
Termination print code number |
| 116 |
1*4 |
Variable-length buffer descriptors for:
Print
code table |
|
The format of extended header
type 132 screen format is:
| Offset |
Length |
Contents |
| 0 |
4 |
Variable-length header descriptor |
| 4 |
2 |
Flags: Bit 0 Record deletion allowed |
| 6 |
2 |
"0" - reserved |
| 8 |
3*4 |
Variable-length buffer descriptors:
0
- Cursor path
1
- Color attributes
2
- Monochrome attributes |
|
The format of the variable-length descriptor
is:
| Offset |
Length |
Contents |
| 0 |
2 |
Offset from beginning of extended
header
to beginning of variable-length buffers |
| 2 |
2 |
Number of variable-length buffers
Currently: 1 for output formats
3
for screen formats |
|
The format of the variable-length
buffer descriptor
is an array of:
| Offset |
Length |
Contents |
| 0 |
2 |
Offset from beginning of variable-length
buffers to beginning of this buffer |
| 2 |
2 |
Size (in bytes) of this buffer. A size
of "0"
means this buffer is not used by this format. |
|
The sort information is
the following 8 bytes repeated 8 times (once for each possible
sort key):
| Offset |
Length |
Contents |
| 0 |
2 |
Field number |
| 2 |
1 |
Associated field instance (@AF minus 1) |
| 3 |
1 |
Flags: bit 0 Subtotal
break |
| 4 |
2 |
Field length |
| 6 |
1 |
"0" for ascending, "1" for
descending |
| 7 |
1 |
Field type |
|
The print codes are an array of:
| Offset |
Length |
Contents |
| 0 |
2 |
Row |
| 2 |
2 |
Column |
| 4 |
2 |
Print code number |
| 6 |
2 |
"0" - reserved |
|
The cursor path is an array of:
| Offset |
Length |
Contents |
| 0 |
2 |
Field number. "0xFFFF" means
tab-stop. |
|
|
NOTES:
Immediately following the extended header is the image
of the form.
In the case of color screens, this is an image of the characters followed by
an image of the attributes.
The encoded password and the screen image are check summed
with a proprietary algorithm to prevent someone without access
to the creation password from changing the format outside
of filePro. If someone does this, filePro will not let the
format be used by any runtime program -- you will get a checksum
error. You can fix this by re-saving the format with the
appropriate creation program.
All values are in decimal unless preceded with "0x" for
hexadecimal.
|
|