************************************************************************************************
*                  BUILT-IN SYMBOLS - sorted table - valid for version 3007.2                  *
************************************************************************************************

Built-in Symbols
----------------

The Built-in symbols are pre-defined and may contain a single value, or multiple values.  Many
of the multi-valued symbols are coupled together, linked to and dependent upon the current value
in a previous level symbol.  By convention, and for easy identification, most dependent coupled
symbols begin with the name of the previous level symbol to which they are coupled.  Those that
do not are identified as dependent upon another symbol.


Single-Valued Global Symbols (S G)
----------------------------------

These Built-in symbols contain only a single value.  Once a value has been entered into one of
these symbols, it is available for use anywhere in the Template file chain.

Multi-Valued Global Symbols  (M G)
----------------------------------

These Built-in symbols may contain multiple values.  Those identified by the 'F' may be used in
#FOR statements.  Once values have been entered into these symbols, they are available for use
anywhere in the Template file chain.

Single-Valued Local Symbols  (S L)
----------------------------------

These Built-in symbols contain only a single value.  Once a value has been entered into one of
these symbols, it is available for use only within the #MODULE or #PROCEDURE section it is in.

Multi-Valued Local Symbols   (M L)
----------------------------------

These Built-in symbols may contain multiple values.  Those identified by the 'F' may be used in
#FOR statements.  Once values have been entered into these symbols, they are available for use
only within the #MODULE or #PROCEDURE section they are in.



Symbol name                    S/M (F) G/L  Description
---------------------------    --- --- ---  ----------------------------------------------------

%AppFile     1)                 S       G   File specification of the Application (.APP) file.
%AppFiles                       M   F   G   Labels of the FILE structures referenced in any
                                            File Schematic or Referential Integrity code in the
                                            application.
%DictionaryFile                 S       G   File specification of the Dictionary (.DCT) file.
%Field                          M   F   G   Labels (including prefix) of all fields in the
                                            current file, including MEMO fields
                                            (dependent on %File).
%FieldChoices                   M       G   Contains all possible values for the field.
%FieldDescription               M       G   A description of the field.
%FieldDimension1                M       G   Maximum value of first array dimension.
%FieldDimension2                M       G   Maximum value of second array dimension.
%FieldDimension3                M       G   Maximum value of third array dimension.
%FieldDimension4                M       G   Maximum value of fourth array dimension.
%FieldDisplayPicture            M       G   Default display picture.
%FieldFile                      M       G   Label of the file containing this field.
%FieldHelpID                    M       G   Contents of the HLP attribute.
%FieldID                        M       G   Label of the field without prefix.
%FieldInitial                   M       G   Initial value for the field.
%FieldLookup                    M       G   File to access to validate this field's value.
%FieldMemoImage                 M       G   Contains Y if the MEMO has a BINARY attribute.
%FieldMemoRows                  M       G   Default display rows of the MEMO.
%FieldMemoSize                  M       G   Maximum size of the MEMO.
%FieldMemoWidth                 M       G   Default display column-width of the MEMO.
%FieldName                      M       G   Contents of the field's NAME attribute.
%FieldPlaces                    M       G   Number of decimal places for the field.
%FieldRangeHigh                 M       G   Contains the upper range of valid values for the
                                            field.
%FieldRangeLow                  M       G   Contains the lower range of valid values for the
                                            field.
%FieldRecordPicture             M       G   STRING field storage definition picture.
%FieldType                      M       G   Data type of the field.
%File                           M   F   G   Labels of all FILE structures in the Database
                                            Dictionary.
%FileCreate                     M       G   Contains Y if the file has the CREATE attribute.
%FileDescription                M       G   A description of the file.
%FileMemo                       M   F   G   Labels of all MEMO fields in the file.
%FileName                       M       G   Contents of the FILE statement's NAME attribute.
%FileOwner                      M       G   Contents of the OWNER attribute.
%FilePre                        M       G   Contents of the PRE attribute (the file prefix).
%FilePrimaryKey                 M       G   The label of a KEY which is a unique key for the
                                            file.
%FileStructure                  M       G   Source code for the entire file declaration.
%FileType                       M       G   Contents of the DRIVER attribute first parameter.
%FileTypeParameter              M       G   Contents of the DRIVER attribute second parameter.
%FirstProcedure                 S       G   Label of the first procedure to be executed.
%Formula                        M   F   L   Label of the computation's destination variable.
%FormulaClass                   M       L   Contains 20-character formula class identifier to
                                            allow multiple formula positions within the
                                            generated code.
%FormulaComputation             M       L   Expression of the computed field.
%FormulaCondition               M       L   Logical expression of the conditional field.
%FormulaDescription             M       L   A description of the field.
%FormulaFalse                   M       L   Value or expression if the condition is false.
%FormulaTrue                    M       L   Value or expression if the condition is true.
%FormulaType                    M       L   Contains: COMPUTED or CONDITIONAL.
%GlobalData                     S       G   Source code for global variable declarations.
%HelpFile                       S       G   File specification of the program's help file.
%HotKey                         M   F   L   Keycode Equate label of the Hot Key.
%HotKeyProc                     M       L   Procedure call or embedded source code.
%HotKeyProcType                 M       L   Contains PROCEDURE or SOURCE.
%Key                            M   F   G   Labels (including prefix) of all KEYs and INDEXes
                                            for the current file (dependent on %File).
%KeyAuto                        M       G   Contains the label of the auto-incrementing field.
%KeycodesFile                   S       G   File specification of the program's keycode equates
                                            file.
%KeyDescription                 M       G   A description of the key.
%KeyDuplicate                   M       G   Contains Y if the key has the DUP attribute.
%KeyExcludeNulls                M       G   Contains Y if the key has the OPT attribute.
%KeyField                       M   F   G   Labels of all component fields of the KEY or INDEX
                                            (including prefix).
%KeyFieldSequence               M       G   Contains ASCENDING or DESCENDING.
%KeyFile                        M       G   Label of the file containing this key.
%KeyIndex                       M       G   Contains INDEX or DYNAMIC, if key is an INDEX.
%KeyName                        M       G   Contents of the KEY or INDEX's NAME attribute.
%KeyNoCase                      M       G   Contains Y if the key has the NOCASE attribute.
%LocalData                      S       L   Source code for variables declared local to the
                                            procedure (between PROCEDURE and CODE).
%Module                         S       L   Source code module filename (no extension or path).
%ModuleData                     S       L   Source code for variables declared local to the
                                            module (between MEMBER and first procedure).
%ModuleDescription              S       L   A short description of the source module.
%ModuleStructures               S       G   Source code for the global MAP structure.
%Primary                        S       L   Label of the procedure's primary file.
%PrimaryKey                     S       L   The procedure's primary file access key.
%Procedure                      S       L   Label of the procedure.
%ProcedureDateChanged           S       L   Date the procedure was last changed.
%ProcedureDateCreated           S       L   Date the procedure was begun.
%ProcedureDescription           S       L   A description of the procedure.
%ProcedureReturnType            S       L   Contains the return data type if a FUNCTION.
%ProcedureTemplate              S       L   Contains the name of the procedure Template.
%ProcedureTimeChanged           S       L   Time the procedure was last changed.
%ProcedureTimeCreated           S       L   Time the procedure was begun.
%ProcedureType                  S       L   Contains: PROCEDURE or FUNCTION.
%Program                        S       G   The name of the PROGRAM file (without extension).
%ProgramDateChanged             S       G   Date the application was last changed.
%ProgramDateCreated             S       G   Date the application was begun.
%ProgramTimeChanged             S       G   Time the application was last changed.
%ProgramTimeCreated             S       G   Time the application was begun.
%Pulldown                       S       L   Label of the PULLDOWN menu structure.
%PulldownField                  M   F   L   Menu Equate label for each pulldown menu item.
%PulldownFieldHelp              M       L   Contents of the MENU or ITEM's HLP attribute.
%PulldownFieldKey               M       L   Contents of the field's KEY attribute.
%PulldownFieldProc              M       L   Procedure call or embedded source code.
%PulldownFieldProcType          M       L   Contains PROCEDURE or SOURCE.
%PulldownFieldToggle            M       L   Label of the variable in the TOGGLE attribute.
%PulldownFieldType              M       L   Contains the PULLDOWN field type: MENU, PROCEDURE,
                                            TOGGLE, DIVIDER.
%PulldownHelp                   S       L   Contents of the PULLDOWN's HLP attribute.
%PulldownKey                    S       L   Keycode Equate label contained in the PULLDOWN
                                            statement's KEY attribute.
%PulldownStructure              S       L   Source code for the PULLDOWN menu structure.
%Relation                       M   F   G   Labels of all files related to the current file
                                            (dependent on %File).
%RelationConstraintDelete       M       G   May contain: RESTRICT, CASCADE, or CLEAR.
%RelationConstraintUpdate       M       G   May contain: RESTRICT, CASCADE, or CLEAR.
%RelationKey                    M       G   Label of the access key for the related file.
%RelationKeyField               M   F   G   Labels of all the access key components.
%RelationKeyFieldLink           M       G   Label of the linking field to the key component.
%RelationPre                    M       G   Prefix of the related file.
%RelationType                   M       G   Contains: 1:MANY or MANY:1.
%Report                         S       L   Label of the Report structure.
%ReportAttributes               S       L   All REPORT statememt attributes.
%ReportDetail                   S       L   Label of the body DETAIL structure.
%ReportDetailPost               S       L   Post-print procedure call or embedded source code.
%ReportDetailPostType           S       L   Contains PROCEDURE or SOURCE.
%ReportDetailPre                S       L   Pre-print procedure call or embedded source code.
%ReportDetailPreType            S       L   Contains PROCEDURE or SOURCE.
%ReportDetailStructure          S       L   Source for all REPORT DETAIL structures.
%ReportDevice                   S       L   Contents of the DEVICE attribute.
%ReportFinal                    S       L   Label of the report final page DETAIL structure.
%ReportFooter                   S       L   Label of the report FOOTER structure.
%ReportFooterStructure          S       L   Source for the REPORT FOOTER structure.
%ReportGrand                    S       L   Label of the report grand total DETAIL structure.
%ReportGroup                    M   F   L   Label of the break field for a report group.
%ReportGroupFooter              M       L   DETAIL structure label for the group footer.
%ReportGroupFooterPost          M       L   Post-print procedure call or embedded source code.
%ReportGroupFooterPostType      M       L   Contains PROCEDURE or SOURCE.
%ReportGroupFooterPre           M       L   Pre-print procedure call or embedded source code.
%ReportGroupFooterPreType       M       L   Contains PROCEDURE or SOURCE.
%ReportGroupHeader              M       L   DETAIL structure label for the group header.
%ReportGroupHeaderPost          M       L   Post-print procedure call or embedded source code.
%ReportGroupHeaderPostType      M       L   Contains PROCEDURE or SOURCE.
%ReportGroupHeaderPre           M       L   Pre-print procedure call or embedded source code.
%ReportGroupHeaderPreType       M       L   Contains PROCEDURE or SOURCE.
%ReportHeader                   S       L   Label of the report HEADER structure.
%ReportHeaderStructure          S       L   Source for the REPORT HEADER structure.
%ReportLabel                    S       L   Number of multi-up labels to print.
%ReportLabelField               M   F   L   Labels of all fields in Detail for multi-up labels.
%ReportLength                   S       L   Contents of the LENGTH attribute.
%ReportLine                     S       L   Label of the report line counter variable.
%ReportPage                     S       L   Label of the report page counter variable.
%ReportPre                      S       L   REPORT structure's prefix (PRE attribute).
%ReportPrinter                  S       L   Contents of the PRINTER attribute.
%ReportSave                     M   F   L   Contains: PAGE or a group break field label.
%ReportSaveField                M   F   L   Contains labels of all non-total fields placed in
                                            any footer (page or group) structure of the REPORT.
%ReportStructure                S       L   All source code for the REPORT structure.
%ReportTitle                    S       L   Label of the report title DETAIL structure.
%ReportTotal                    M   F   L   Labels of all total fields in the REPORT.
%ReportTotalField               M       L   Label of the field to total.
%ReportTotalReset               M       L   Contains: NONE, PAGE, or a group break field label.
%ReportTotalTally               M       L   Contains: ALL, PAGE, or a group break field label.
%ReportTotalType                M       L   Contains: SUM, COUNT, AVERAGE, HIGH, or LOW.
%ReportWidth                    S       L   Contents of the WIDTH attribute.
%Screen                         S       L   Label of the SCREEN structure.
%ScreenAtCol                    S       L   Contains column portion of the AT attribute.
%ScreenAtRow                    S       L   Contains row portion of the AT attribute.
%ScreenAttributes               S       L   All SCREEN statememt attributes.
%ScreenField                    M   F   L   Contains the Field Equate label, or the label of a
                                            STRING field, for each field in the SCREEN.
%ScreenFieldCase                M       L   Contains nothing, UPR or CAP.
%ScreenFieldCols                M       L   Label of the LIST COLS variable.
%ScreenFieldDeclarations        S       L   All other fields in the SCREEN structure.
%ScreenFieldEdit                M       L   Edit procedure call or embedded source.
%ScreenFieldEditHotKey          M       L   Contains keycode equate label of the Hot Key for an
                                            ENTRY or TEXT field.
%ScreenFieldEditReturnValue     M       L   Contains the Return Value field for an ENTRY or TEXT
                                            field.
%ScreenFieldEditType            M       L   Contains PROCEDURE or SOURCE.
%ScreenFieldExpression          M       L   Contains the expression to format the LIST QUEUE.
%ScreenFieldFix                 M   F   L   Contains QUEUE entries for LIST column headings.
%ScreenFieldFrom                M       L   Label of the QUEUE field the LIST displays.
%ScreenFieldImmediate           M       L   Contains Y if the field has the IMM attribute.
%ScreenFieldIndex               M       L   Label of the REPEAT INDEX variable.
%ScreenFieldKey                 M       L   Contents of the field's KEY attribute.
%ScreenFieldLabel               M       L   Label of the STRING field.
%ScreenFieldLeft                M       L   Contains Y if the field has the LFT attribute.
%ScreenFieldMax                 M       L   Label of the REPEAT MAX variable.
%ScreenFieldMsg                 M       L   Contents of the field's MSG attribute.
%ScreenFieldName                M       L   Contents of the NAME attribute of an IMAGE field.
%ScreenFieldPicture             M       L   Screen display picture.
%ScreenFieldPrompt              M       L   Contains the field's PROMPT string.
%ScreenFieldQueue               M       L   Label of the QUEUE the LIST displays.
%ScreenFieldQueueSize           M       L   Maximum size of a QUEUE entry the LIST displays.
%ScreenFieldRequired            M       L   Contains Y if the field has the REQ attribute.
%ScreenFieldScrollCols          M       L   Number of columns in the REPEAT structure.
%ScreenFieldScrollCount         M       L   Number of items in the REPEAT structure.
%ScreenFieldScrollRows          M       L   Number of rows in the REPEAT structure.
%ScreenFieldSetup               M       L   Setup procedure call or embedded source.
%ScreenFieldSetupReturnValue    M       L   Contains the Return Value field for an ENTRY or
                                            TEXT field.
%ScreenFieldSetupType           M       L   Contains PROCEDURE or SOURCE.
%ScreenFieldSkip                M       L   Contains Y if the field has the SKIP attribute.
%ScreenFieldText                M       L   BUTTON or CHECK field's screen text.
%ScreenFieldType                M       L   Contains: ENTRY, TEXT, OPTION, STRING, POINT, CHECK,
                                            BUTTON, LIST, IMAGE, or FORMULA.
%ScreenFieldUse                 M       L   Contents of the field's USE attribute.
%ScreenHelpId                   S       L   Contents of the SCREEN's HLP attribute.
%ScreenPaintDeclarations        S       L   All PAINT fields in the SCREEN structure.
%ScreenPre                      S       L   SCREEN structure's prefix (PRE attribute).
%ScreenStringDeclarations       S       L   All STRING (constant) fields in the SCREEN
                                            structure.
%ScreenStructure                S       L   All source code for the SCREEN structure.
%Secondary                      M   F   L   All files in the File Schematic under the Primary
                                            file.
%SecondaryTo                    M       L   Label of the file to which this file is connected in
                                            the procedure's File Schematic.
%SecondaryType                  M       L   Contains: 1:MANY or MANY:1.
%StyleFile                      S       G   File specification of the program's color styles
                                            file.
%TemplateFile                   S       G   Name of the first Template Code file in the chain.
---------------------------    --- --- ---  ----------------------------------------------------

This list is based on the file SYMBOLS.TXT (available on Compuserve as SYMBOL.ZIP, and on the
Advantage bulletin board as SYMBOLS.LZH).  That file is organised by the types of symbols and
their interdependence.  While that is useful to get an insight into how the Template symbols
relate to each other, it's not the best organisation to answer the question: "Is this symbol
that I'm looking at in this Template file built-in or user-defined?".

Since I asked myself that question a lot more often than "What built-in symbols are there?", I
reorganised the original file (for version 3006) into an alphabetically sorted list, at the same
time updating it for version 3007.2.

This list has already proved useful to me, so it will probably also be useful to other Template
writers and modifiers. - So pass it on!


Marjolein Katsma

Compuserve:     100276,2414
Internet:       100276.2414@compuserve.com

---------------------------

1) This symbol is undocumented - I found it in the file DESENV2.DLL at the head of all the other
Template symbols, though, and deduced its description.  No guarantees - I haven't tested it yet!
