Sculptor 2 Manual - 01 - 05
Sculptor 2 Manual - 01 - 05
Sculptor 2 Manual - 01 - 05
Published by
Microprocessor Developments Ltd
Trademark Acknowledgements
MS DOS and MSNET are trademarks of Microsoft Corp.
Netware is a trademark of Novelllnc.
OS9 is a trademark of Microware Corp.
PC-DOS and PC-NET are trademarks of International BusinessMachines Inc.
Ultrix and VMS are trademarks of Digital Equipment Corp.
SCULPTOR is a trademark of Microprocessor Developments Ltd.
Uniflex is a trademark of Technical Systems Consultants Inc.
Unix is a trademark of AT&T Bell Laboratories.
Xenix is a trademark of Microsoft Corp.
----
CHAPTER 1 GLOSSARY OF TERMS
The following terms have been used in this manual and are defined
here.
argument
A parameter to a function.
ascii
channel
child task
command
data field
data file
descriptor
The information such as the name, type and size which is used to
describe a field in a data dictionary.
field
file id
function
index file
key field.
keyed file
A logical file consisting of two system files, a data file which holds data
records and an index file which holds the index to those records.
label
A name given to a
program line so that the line may be referenced by a
goto or gosub command or a trap clause.
lock
numeric expression
parent task
A process which initiates the execution of another (child) process. In
Sculptor, the exec command is used to initiate another process.
pathname
process
raw mode
record
A set of fields which comprise a logical unit, for example, a stock record.
record buffer
An area in a program into which a record from a file is read and then
made available for processing. Sculptor automatically allocates a record
buffer to each file declared in a program.
relational expression
screen field
screen overlay
scroll area
A set of screen fields laid out such that each field has its heading at the
top of a column of data values for that field. All fields in the scroll area
have the same heading line and occupy the same number of rows. (The
scroll area may be used to display subscripted fields or to concurrently
display data from multiple records which might, for example, represent
the lines on an invoice.)
scroll line
The row number within the scroll area on which screen input and display
commands currently operate. Also used as the default index value for
subscripted fields which are not explicitly indexed when referenced.
sequential file
string
subscripted field
temporary field
text expression
trap clause
vdu
Shorthand for the key code sent by holding down the CTRL key and
pressing X. X may be any character in the ascii range @ through _
(underscore).
Contents Page
The Sculptor system provides full device independence through the use
of vdu and printer parameter files. Utilities are supplied to define the
parameters for terminal and printer characteristics so that programs may
run without modification on a wide variety of systems. Many of the
internal messages issued by the Sculptor system may be configured to
any spoken language by the let utility.
The keyed file routines used within Sculptor are available separately for
use within the C language to access Sculptor keyed files directly.
Documentation conventions
3. Optional items are enclosed in square brackets "[ ]". The square
brackets should not be entered as part of the command.
4. An ellipsis " ... " indicates that the preceding item may be repeated.
Each keyed file has one physical key which may be logically interpreted
as several separate data items. There are commands to search the index
on part of the key. The index is a multi-level tree which, for efficiency, is
reorganised every time a record is inserted or deleted. The technique
used is very fast and means that the index is always up to date. The data
file grows automatically as records are inserted and it is not necessary
to predeclare the file size. To avoid unnecessary growth, the space
released by deletions is re-used when new records are inserted.
Files which contain only key information may be defined. These can be
used to provide cross-referencing and alternative lockup-Indexes.
The Sculptor screen form language requires a vdu parameter file for each
type of vdu that is being used. Several such files are supplied with the
system and new ones can be created with the program setvdu. See
chapter 10 for further details.
The purpose of these parameter files is,to make screen form language
programs independent of the terminal being used. Almost any terminal
with cursor positioning and a "clear screen" command may be used,
although Sculptor is more effective if protected fields and thin-line
graphics are available. Almost all modern terminals are suitable and
.•many different types of terminal may be used on the same system.
1. Use the program describe to define the record layouts for each file
required. Up to 32 files may be used within a single screen form or
report/batch program and up to eight alternative record layouts may
be defined for eachfile. Good design technique should avoid too
much use of alternative record layouts. The describe program
creates data dictionary files, identified by a .d extension, which are
then used by the compilers and by some of the keyed file utilities.
2. Create new keyed files using the program newkf which reads the
data dictionary files, calculates the required key and record lengths
and initialises the new keyed files.
The utility program kfcheck checks the integrity of keyed file indexes. It
should be run as part of the start-up procedure every time the system is
switched on or, if the system is permanently on, it should be run once
each day. If damage is reported the kfri utility is normally able to repair
it. Prolonged use of a damaged file can lead to serious loss of data.
Contents. Page
What is a data dictionary . 3-1
Sculptor keyed file layout .3-2
Field name .3-3
Field heading .3-3
Field type and size .3-3
Field format .3-5
Default formats .3-7
Field validation .3-8
On-line help 3-10
Field comment 3-10
Hide from SOL ·3-10
Reverse sign (SOL) 3-10
Command line syntax 3-10
Using describe - Menu options 3-11
File management 3-14
The path table 3-15
Error messages 3-16
A data dictionary is used to define the record layout for each Sculptor
keyed file. The data dictionary file has the same name as the data file
but with a .d extension. It is used by the newkf program to create a
Sculptor keyed file and by the compilers, cf and cr, when compiling a
program that uses that file.
Defining all the information about a file in one place greatly simplifies the
use of that file in Sculptor programs. The file details can be readily printed
for documentation purposes using the pdes program.
Multiple data dictionaries may be defined for a single keyed file and are
referred to as alternate record layouts for that file.
The record layout is described in terms of fields. Each field must have a
name, type and size. The field may optionally have a default heading,
format, validation list and help text. These, with the exception of the
validation list, may be over-ridden by the programmer within a program.
Each file must have a key. The key for a record is composed of the values
for all of the key fields concatenated in the order defined. The data record
is composed of all the fields in the record, including key fields,
concatenated in the order defined. The record data is stored in a data
file. There is also an index file which holds a 8-tree index to the data
records. The index file has the same name as the data dictionary but with
a .k extension.
The order in which key fields are defined is crucial, since index sequential
access depends upon the content of the key. Keys are sorted by direct
byte comparison, which means that if the sequential access order is
important, you should not include numeric fields which may contain
negative values, or any floating point fields (rS or mS).
Field name
Each field name must be unique within the data dictionary file. Although
it is possible to use the same name in different files, the compilers will
issue a warning if identical field names are encouritered within. a
program, and only the first encountered will be accessible.
si name
sl_accno
si_amount
may be used if the file was a sales ledger file.
Field heading
Field format
A format may be attached to a field and is used to determine the precise
way in which the field is printed and displayed. If no format is specified,
a standard default is applied to suit the field's type and size. Any format
defined in the data dictionary may be overridden within a screen form or
report/batch language program.
ALPHANUMERIC FIELDS
Following the character(s) with a plus (+) sign will force conversion when
assigning a value to the field. Examples of the use of formats on
alphanumeric fields follow:
NUMERIC FIELDS
For numeric fields the output width equals the number of characters in
the format specification. The following format characters have a special
meaning, other characters in the format are output unchanged.
# Designates a position where leading zeros are to
be space filled.
A numeric format is processed from right to left. Once digit selection has
begun (the first # , * . or 0), the first non-special character terminates the
numeric part of the format. If the last digit designator was # * or 0 , all
further characters in the format are floated right and leading spaces,
asterisks or zeros are used to make up the required width. Examples of
the use of numeric formats is shown below:
DATE FIELDS
Date formats may use the characters d, m and y to designate day, month
and year respectively. The year portion may be two or four digits or may
be omitted altogether. However it is generally better to omit date formats
and allow the default value to apply. By doing this the program becomes
independant of date format and may be run without recompilation in other
countries. For this reason it is wise to design screen forms and reports
on the assumption that dates require space for a four-digit year. The
default date format may be altered in the run-time interpreters sage and
sagerep using the program Icf. Example date formats are shown below:
Default formats
If a format is not specified for a date or numeric field, a default is applied
as follows:
There is also a:default date format set in the compilers ef and er and in
describe itself. Theorily purpose of the date format in these programs
is to indicate how date constants are to be .interpretedin the program
code and validation lists.
,Fieldvalidation
Input data is always automatically validated according to field type and
size,both in the screen form and the report/batch languages. Further
validation within. the screen form language may be defined by attaching
a validation list to a field description. This will ensure that only valid data
may be inputby the operator. Any data valid for the type and size of the
field may be assigned directly to that field. Cross-field validation is also
possible by programmed testing of data input using the screen form or
report/batch language,
AUTOMATIC VALIDATION
Integer fields
Only integers within the range appropriate to the field size are accepted.
Money fields
For m4 and mB fields, amounts must be whole numbers or fractions with
exactly two digits following the decimal point and must be within the m4
or mB range.
Date fields
Day, month and year must be input in the order specified in the date .
format, but most punctuation characters are accepted as separators
regardless of the the one used in the actual format. ·Ifa two-digit year is
input then 1900 is added to the year. Input dates are fully checked with
proper consideration for leap years, although a correction for the loss of
eleven days in September, 1752 is not made.
Validation lists may also allow no input to the field as a valid entry. This
is done by using two consecutive commas. Validation lists may not be
overridden within a screen form program.
Alphanumeric fields
"y,n
MR,MRS,MISS,MS,DR,SIR
"A-M,X,Z
Numeric fields
0-100
,,0,100~999
t 1-19,21-29,31-39
,,-500"-100; 100~500
Money fields
,,0-9999.99
,,0-999999
1-99,500-599
On displaying a validation list for a date field, describe will show the year
as four digits.
On-line help
When a field is input in the screen form language an optional line of help
text may be presented either automatically using the autohelp on
command or when the user presses the HELP key. This on-line help may
be defined for each field in the record as appropriate. The on-line help
for a field may be overridden within a screen form language program.
Field comment
When a data dictionary is printed using the pdes utility program, the
comments field may be shown. The comment entry provides information
about the field, for documentation purposes, which may otherwise not
be obvious from the field name or heading.
When the SQl system is used to produce ad-hoc enquiries from the file,
a field may be hidden from access. This may be used to preserve the
security of sensitive data while allowing users to produce reports with
sql, eql or fql.
Reverse Sign(Sal)
When producing ad-hoc reports using SQl, a field may be defined which,
although containing a positive or negative value, should have its sign
reversed for the purposes of the enquiry, egoif a field contained 100 then
it would be shown and totalled as -100 and vice-versa. This is used to
correctly show and total amounts which should be treated as the opposite
sign, ie, debits in a bank account.
The fifename is the name of the data dictionary file that is to be edited.
Tile .d extension is automatically added.
The -q flag selects quiet mode so that the program name and date are
not displayed on exit from describe.
The data dictionary file is used by the compilers cf and cr, by the newkf
utility and by the Sal suite sql, fql and eql.
If changes are made to the structure of a data dictionary file then all
programs that access that file must be recompiled to incorporate the
changes. The reformat utility must be used to preserve existing data if
the size or field order of the record is changed. If changes to the size or
field order have been made and there is no existing data or the data need
not be preserved, the newkf utility can be used to re-initialise the file
(see chapter 10 for details on the reformat and newkf utilities).
EXAMPLE
describe
describe newfile
describe -q ledger
While the cursor is positioned on any of the menu options, the current
descriptor line may be changed using the plus (+) and minus H keys.
Edit
This selection is active on entry to describe and allows changes to all
fields already recorded and appending of additional fields. The following
keys can be used in Edit. As these keys are defined in the vdu parameter
file, they may differ slightly on some vdus and systems.
Insert
Inserts a blank field above the current position. Field data is entered in
the expanded display. If no valid field data is entered, or ESC is pressed,
the insertis abandoned. Pressing F10 at any time or RETURN at the last
field exits and inserts the new descriptor.
Delete
Undelete
Recovers the last deleted field at the current descriptor line position.
Move
The order of the fields inthe descriptor file may be changed. The current
field is selected and may be moved using the up and down arrow keys.
Pressing ENTER completes the move.
IMPORTANTNOTE: Moving a key field into the data field area,or a data
fiefdlnto thekeyfield area will change the field type from key to data or
from data: to key respectively.
Go to
Key
Toggles the current field from Key(K) to Data (0). The current field must
be either the last key field or the first data field. Use the Move option to
place the field if necessary.
Changing the key fields will require the reformatting of any existing data
and the recompilation of of all existing programs which use the data file.
Existing programs may also have to be modified to correctly use the new
key fields.
Title
A title is stored with the descriptor file and is used for documentation
purposes. This option allows entry and amendment of that title, together
with four lines of comment text.
Files
Help
Displays the help menu and allows selection from a range of help topics.
Press ESC to return to the describe menu.
Clear
This option clears all current fields from the workspace. Descriptor files
stored on disk will remain unchanged.
Enters the file management system. The file selected will be loaded for
editing. The path table may also be edited. See File management on
page 3-14 for further details. If loading a file will cause descriptor
information to be lost, you will be asked if the current file is to be saved.
Answering N here will allow you to select a file, but will give you another
chance to save the changed descriptors just before the new file is loaded.
Save
The current descriptor fields are saved to disk using the current file name.
If a Clear command has been executed or a file has not previously been
loaded, a file name (without the .d extension) must be entered.
If a new file name is given, it will over-write an existing file of the same
name after giving a warning that the existing file will be lost.
Quit
Don't forget to use reformat on your data files and recompile your
programs if any of the following changes have been made:
In either mode, the functions available are the same. The current
directory may be changed using the F2 key, files in other directories may
be selected with the aid of the Path Table. Using this, up to 14 directory
paths can be stored and then scanned using the F5 and F6 keys. A
complete key summary follows:
Key Function
F10 Return to the menu. In the load option, the file will
NOT be loaded.
ENTER Return to the menu. In the load option the file will
be loaded.
IMPORTANT NOTE. The use of relative paths within the path table may
result in the paths being invalid if the paths.se file is read while in a
different directory. Always use absolute paths within the path table for
consistency.
Error messages.
On running the help system the help files could not be found. Ensure that
the SCULPTOR environment variable points to the location of the
Sculptor directory and that the help file des.hlp is in the HELP
subdirectory.
Bad dimension
Dimension value is zero or lacks closing parenthesis.
The size of the field does not match the type entered.
Content.s Page
Introduction .4-2
Output code .4-2
Command line syntax for rg .4-2
Screen fields for rg . . . . . .4-3
Error messages for rg ... .4-4
Command line syntax for 8g .4-5
Screen fields for 8g .4-6
Error messages for 8g .4-7
Both program generators are similar in operation, but differ slightly in the
fields available on the screen in active mode and, of course, in the output
code produced.
Output code
The code that is created by the program generators is well suited to the
task it has to perform. Subroutines are used for common routines, such
as display and input to screen forms, and headers and totals in
report/batch programs. When dealing with array fields on screen forms,
each is placed on the scroll area and code is generated to display and
input all elements of each array, independent of size. Although this
technique is capable of dealing with a very wide variety of situations, if
the code is to be used as the basis for an application program it will
probably require tailoring for the application.
rg [-a] filename
The generated file will contain all the Sculptor commands necessary to
produce a report of the fields from the data file, correctly formatted with
headings and totals. This source file may then be modified using a
standard text editor.
Used with the -a option, rg will display a full screen form which may be
used to select the fields to be displayed, and the formats to be applied
when printing those fields. The fields from the data dictionary file will be
listed in turn and you may choose to select or omit them from the
generated report and adjust the heading and format of the displayed field.
Report title The title that will be displayed centred at the top
of the report.
T&5 The type and size of the field. Some fields may be
too large to fit on a single line of the printer. These
should be omitted from the generated display, or
rg will report an error and will not create the
program.
y/n Include (y) or omit (n) the field from the generated
report.
When you have finished selecting fields from the data dictionary file, you
will be asked if you want duplicate key values suppressed. If you have
not placed all of the key fields on the report, there may be duplicate
values shown on the report, even though the full key is not, of course,
duplicated. Selecting this option will suppress the printing of these
duplicates and generally tidy the report.
All of the fields of filename will not fit on the report. Use the -a option to
select the fields that will fit on the report.
Can't execute cr
The compiler cr could not be found. Check that the development system
has been fully installed and that the er program is available.
sg requires that a Sculptor data file called gen_cont resides in the main
Sculptor program directory. This error occurs if that file could not be
found. Check the location of this file.
The -a option uses the sage screen form interpreter to present the screen
form for input. Please check the location and availability of the sage
program.
An operating system input error has occurred. Check the integrity of the
file.
sg [-a] filename
sg will design the screen form so that all the fields will fit on the screen,
if possible, so may take some time to perform the optimisation if there
are a large number of fields. If the fields cannot be fitted on the screen,
sg will abort the process with an appropriate error message.
The generated file will contain all the Sculptor commands necessary to
maintain the data file, with options to insert, find, next, match, amend,
delete and exit. This source file may then be modified using a standard
text editor.
Used with the -a option, sg will display a full screen form which may be
used to select the fields to be displayed, and the formats to be applied
when displaying those fields. The fields from the data dictionary file will
be listed in turn and you may choose to select or omit them from the
generated screen form and adjust the heading and format of the
displayed field.
yln Include (y) or omit (n) the field from the generated
report.
All of the fields of filename will not fit on the screen. Use the -a option to
select the fields that will fit on the screen.
Can't execute cf
The compiler cf could not be found. Check that the development system
has been fully installed and that the cf program is available.
sg requires that a Sculptor data file called gen_cont resides in the main
Sculptor program directory. This error occurs if that file could not be
found. Check the location of this file.
The -a option uses the sage screen form interpreter to present the screen
form for input. Please check the location and availability of the sage
program.
An operating system input error has occurred. Check the integrity of the
file.
This chapter describes the operation of the screen painter for screen
form language programs, sp.
Contents Page
Introduction .5-2
~..•~--
The screen painter reads a Sculptor screen form language source file
and allows fields to be placed on any of the eight screens available. When
an existing source file is read, screen fields are drawn on the screen and
may be moved, changed or deleted as required. Fields from any file may
be placed on the screen as may any temporary fields (ie, those defined
with !temp). New temporary fields may be added and placed on the
screen. The scroll area, field delimiters and form title may also be
amended as required.
When the source file is saved, any changes made are written back and
the source file may then be compiled in the normal manner.
As the source file may contain conditional compilation statements for the
Sculptor pre-processor, spp, the screen painter performs the first phase
of that same conditional compilation so that the sections of code that are
being amended are the sections that would be compiled. Manifest
constants may, therefore, be defined on the sp command line to provide
the same level of control provided by spp.
When the screen painter begins, it reads the filename specified, if any,
and displays the screen as it would look to the user. An additional status
line at the bottom of the display and a menu on the right hand side are
also displayed. Each of these menu options is detailed in the following
sections.
Move fields
Allows movement using the arrow keys to any location on the screen.
The cursor location is marked with a plus (+) sign. Fields displayed may
be picked up and dropped at any location using the SPACE bar.
Movement of the field onto the start line of a defined scroll area will
display the field vertically to the depth specified as the scroll area depth,
with the field heading shown centred above.
If a scroll field is at the right edge of the screen, you will not be able to
move it vertically out of the scroll area as doing so would display the field
horizontally off the edge of the screen. Move the field to the left first.
The functions available will depend on whether the cursor is over a blank
area of the screen, over a field which has not been selected or moving
a field which has already been selected.
5-2 04.90 Sculptor Reference Manual
Screen Painter
KEYS AVAILABLE WHEN CURSOR IS OVER A BLANK AREA
Add fields
Using the file management system, first select the descriptor file, then
fields from that file to place on the display.
Use the arrow keys to select a file, and press ENTER to accept that
selection. See page 5-10 for details on selecting files.
When a file has been selected, the fields in the file are displayed on the
left hand side of the screen. Select or deselect a field using the ENTER
key. As a field is selected, it's name appears in the placement list on the
right section of the screen and an asterisk is shown to the left of the field
name. All of the fields shown in the placement list will be transferred to
the screen form in turn when you press F2.
When selecting the field names, F10 may be pressed to abandon the
entire option and return directly to the main menu.
Having pressed F2, the fields appear in turn on the display and you may
place them by moving to the desired location using the arrow keys and
pressing the SPACE bar. The next field on the placement list will then
appear. After the last field has been placed you will return to the menu.
If no fields have been selected you will return directly to the menu.
A list of the currently active screens are shown in the lower right corner.
All fields selected will be placed on all currently active screens in the
order shown in the placement list.
Fields that appear highlighted are already displayed and may not be
selected again.
Temp declarations
The field declarations are shown in a list with a menu of actions shown
below. Select a declaration using the up and down arrow keys and select
an action to perform using the left and right arrow keys.
where fieldname is the name of the field, heading is the heading which
will be used as a default for this field (blank for no default heading),
type&size is the field type and storage size, and format is the format
specifier (see page 3-5 for further information).
MENU ACTIONS
When editing field headings, a '<' symbol is used to indicate the end of
the field data. This is useful if trailing spaces are required.
Field declarations
The screen field declarations are shown in a list with a menu of actions
shown below. Select a declaration using the up and down arrow keys
and select an action to perform using the left and right arrow keys.
where fieldname is the name of the field, heading is the heading which
will be displayed, ( a space indicates no heading ), row and column are
the screen positions of the first character in the data field, and format is
the optional format specifier which may over-ride the default for this field
(see page 3-5 for a list of available formats).
No two screen field declarations may refer to the same record field or
temporary field.
If an attempt is made to insert a field name from a file which has not been
used in this screen form previously, the message "needs !temp or !file
declaration" is displayed. Select the field using the Add fields option or
create a !temp declaration for the field using the Temp declarations
option.
When editing a field heading a '<' symbol is used to indicate the end of
the heading data. This is useful if trailing spaces are required.
Edit title
The screen title is taken from the first line of the source file. This option
allows amendment of that title. The title entered is centred and
highlighted (using the start page title (entry 23) sequence from the vdu
parameter file) on the top line of the display.
Any fields displayed on the start line are duplicated vertically the number
of times defined by the scroll depth. This allows multiple copies of the
same field to be displayed. The scroll area applies to all screens - not
just the active screen.
Change delimiters
The characters which are used to delimit the field data. may be changed
with this option. Each delimiter may be any single character. Pressing
ENTER alone leaves the delimiters as they are. The default delimiters
used are left and right square bracket "[]", however, if the loaded source
file contains a !box declaration, the characters defined there are used.
A standard and extended display depth and width may be defined in the
vdu parameter file for a terminal. This option allows you to switch
between standard and extended width or depth.
This option has no effect if your vdu does not support extended width
and/or depth.
Enter the file management system in READ ONLY mode, to view the
descriptors of any data dictionary (.d) file on the system. All of the
functions of file management are available including the ability to edit the
Path Table.
Directory of files
Used to view the files in the current directory, three types of file may be
listed.
Sculptor data dictionary files with a .d extension are displayed with the
file title shown to the right of the file name. This is designed to aid
identification of the file.
Screen form source (.1) files may also be shown, as may the screen form
compiled code files (.g).
Loads a source file into the workspace and displays the fields defined
within that file. The vdu width arid depth will be adjusted to meet the
requirements of the loaded source file.
If you have not saved any changes made to your current file - you will be
prompted to do so before the new source file is loaded.
The screens that were active when you selected Load source file will
remain active when the new file is loaded. This may result in none of the
fields from that source file being displayed.
During the loading of a source file, sp may find errors within the file and
will report them accordingly. If errors are found, the file will NOT be
loaded. Use your normal editor to correct the stated errors before
attempting to re-load the source file.
Save changes
Saves any changes to the current source file. If this is a new source file,
you will be asked to enter a name for the file (without the .f extension).
If a file by that name already exists you will be prompted to over-write it
or enter another name for the new file.
All declarations are written back to your source file and may be edited
accordingly.
An existing source file may be loaded and the layout changed without
affecting any sage commands within that source file as sp will only
change declarations as follows:
Include files
The old source file is renamed as filename.bak when the changes are
saved.
When used with the -q switch, sp will exit quietly and NOT display the
version number header box.
The screen painter directly modifies Sculptor screen form source files.
Include files declared within the source file using !include declarations
are also read and may be modified if declarations read from those files
are changed.
The file management system may be entered in one of two modes. When
entered from the View Files option on the main menu, data dictionary
files may be viewed. Entry via the Load File option will load the selected
source file for editing with sp.
In either mode, the functions available are the same. The current
directory may be changed using the F2 key, files in other directories may
be selected with the aid of the Path Table. Using this, up to 14 separate
directory paths can be stored and then scanned using the F5 and F6
keys. A complete key summary is shown below:
F10 Return to the menu. In the load option, the file will NOT be
loaded.
ENTER Return to the menu. In the load option, the file will be
loaded.
IMPORTANT NOTE: The use of relative paths within the path table may
result in the paths being invalid if the paths.sc file is read while in a
different directory. For consistency, always use absolute paths within the
path table.
Error messages
These errors prevent a source file from being loaded. Many of these
errors are preceded with the message:
Error in filename at line [ (!include) J nnn :
Where the (!include) will be shown to identify that the error was in an
include file and where nnn is the line number where the error occurred.
The named field would not fit on the screen and has not been placed.
Fieldname adjusted
The named field would not fit on the screen at the intended position and
the position has been adjusted to allow it to fit.
Bad !define
A syntax error was encountered in a !define declaration.
Bad ! declaration
An unknown declaration was found.
Missing}
There is a missing left brace character in the source file at the specified
line.
Linked to a field
You cannot change the name of a temporary field that has been used in
a field declaration. If the name must be changed, delete the appropriate
field declaration first then re-try.