151 lines
6.2 KiB
Plaintext
151 lines
6.2 KiB
Plaintext
COmpile Insert Foreign.Subs.Equates
|
|
*>>
|
|
* FOREIGN.SUBS.EQUATES - equates for the subroutine handler supplied with
|
|
* bond.
|
|
*
|
|
* Each environmental bond may supply a subroutine handler as part of its
|
|
* bonding kit. This subroutine has a name of the form XXXX.SUBS, where
|
|
* 'XXXX' is the name of the bond (e.g. DBASE, ASCII, etc.).
|
|
*<<
|
|
!
|
|
!
|
|
*
|
|
* FOREIGN.SUBS command codes
|
|
*
|
|
* The first argument to the subroutine handler is a code which specifies
|
|
* the function to be performed:
|
|
*
|
|
EQU FBS.TYPE.EXPAND$ TO 1
|
|
*>>
|
|
* FBS.TYPE.EXPAND$ - bond-specific fill-out of dictionary record.
|
|
*
|
|
* Syntax:
|
|
* $INSERT FOREIGN.SUBS.EQUATES
|
|
* CALL ____.SUBS(FBS.TYPE.EXPAND$, TYPE.ARGS, MAP.RECORD, FILE.ATTR
|
|
* DICT.RECORD, STATUS)
|
|
*
|
|
* Where:
|
|
* TYPE.ARGS -
|
|
* contains the fieldmark-separated argument values for the core
|
|
* generic type. Note that, for derived types, this may be different
|
|
* than the argument list which appears in the 'D.E.GENERIC.TYPE'
|
|
* field of 'DICT.RECORD'.
|
|
* MAP.RECORD -
|
|
* is the record from the type-mapping table which corresponds to the
|
|
* type mapping the user has (implicitly or explicitly) selected.
|
|
* FILE.ATTR -
|
|
* contains the bond-specific file attributes as returned by the
|
|
* associated bond-specific collector window. Each attribute value
|
|
* is separated by a fieldmark. The first field is reserved for
|
|
* specifying the "file type". If this argument is NULL, the default
|
|
* file attributes are to be assumed.
|
|
* DICT.RECORD -
|
|
* contains the dictionary record to be filled out. This may already
|
|
* have been partially filled out by the user and/or the generic type
|
|
* expansion routines.
|
|
* STATUS -
|
|
*
|
|
* Description:
|
|
* FBS.TYPE.EXPAND$ may be called by BOND.SUBS when it is using a type
|
|
* specification to fill out a dictionary record. The bond designer specifies
|
|
* which mappings require bond-specific manipulation of the dictionary record
|
|
* by setting a flag (BSTM.CALL.EDIT$) in the corresponding record in the
|
|
* type mappings file.
|
|
*<<
|
|
EQU FBS.MAP.FILENAME$ TO 2
|
|
*>>
|
|
* FBS.MAP.FILENAME$ - Map filename into acceptable foreign filename.
|
|
*
|
|
* Syntax:
|
|
* $INSERT FOREIGN.SUBS.EQUATES
|
|
* CALL ____.SUBS(FBS.MAP.FILENAME$, NAME.IN, NAME.OUT, STATUS)
|
|
*
|
|
* Where:
|
|
* NAME.IN -
|
|
* Contains a filename to be validated for the foreign
|
|
* environment.
|
|
* NAME.OUT -
|
|
* Will contain a translated version of the input filename
|
|
* which would be acceptable to the foreign environment. If
|
|
* the input filename did not require any translation, then
|
|
* NAME.OUT will be set to NAME.IN.
|
|
* STATUS -
|
|
* '' - The input filename is acceptable to
|
|
* the foreign environment as is.
|
|
* FS_INVALID_FILENAME_ERR$
|
|
* - The input file name cannot be directly
|
|
* represented in the foreign environment.
|
|
* Description:
|
|
* FBS.MAP.FILENAME$ can be used to map an Advanced Revelation
|
|
* filename into a foreign filename. It can also be used to
|
|
* determine the validity of a foreign filename. If the given
|
|
* filename is legal in the foreign environment, then it is
|
|
* returned and STATUS will be NULL. If not, the bond will return
|
|
* (in NAME.OUT) a similar filename which is legal and will set the
|
|
* status to FS_INVALID_FILENAME_ERR$
|
|
*<<
|
|
EQU FBS.MAP.FIELDNAME$ TO 3
|
|
*>>
|
|
* FBS.MAP.FIELDNAME$ - Map fieldname into acceptable foreign fieldname.
|
|
*
|
|
* Syntax:
|
|
* $INSERT FOREIGN.SUBS.EQUATES
|
|
* CALL ____.SUBS(FBS.MAP.FIELDNAME$, NAME.IN, NAME.OUT, STATUS)
|
|
*
|
|
* Where:
|
|
* NAME.IN -
|
|
* Contains a fieldname to be validated for the foreign
|
|
* environment.
|
|
* NAME.OUT -
|
|
* Will contain a translated version of the input fieldname
|
|
* which would be acceptable to the foreign environment. If
|
|
* the input fieldname did not require any translation, then
|
|
* NAME.OUT will be set to NAME.IN.
|
|
* STATUS -
|
|
* '' - The input fieldname is acceptable to
|
|
* the foreign environment as is.
|
|
* FS_INVALID_FIELDNAME_ERR$
|
|
* - The input file name cannot be directly
|
|
* represented in the foreign environment.
|
|
* Description:
|
|
* FBS.MAP.FIELDNAME$ can be used to map an Advanced Revelation
|
|
* fieldname into a foreign fieldname. It can also be used to
|
|
* determine the validity of a foreign fieldname. If the given
|
|
* fieldname is legal in the foreign environment, then it is
|
|
* returned and STATUS will be NULL. If not, the bond will return
|
|
* (in NAME.OUT) a similar fieldname which is legal and will set the
|
|
* status to FS_INVALID_FIELDNAME_ERR$
|
|
*<<
|
|
EQU FBS.SELECT.DERIVED$ TO 4
|
|
*>>
|
|
* FBS.SELECT.DERIVED$ - Select which type this one is derived from.
|
|
*
|
|
* Syntax:
|
|
* $INSERT FOREIGN.SUBS.EQUATES
|
|
* CALL ____.SUBS(FBS.SELECT.DERIVED$, TYPE.NAME, TYPE.ARGS,
|
|
* SELECTED.TYPE, STATUS)
|
|
*
|
|
* Where:
|
|
* TYPE.NAME -
|
|
* is an input variable containing the name of a data type in
|
|
* TYPE_TABLE.
|
|
* TYPE.ARGS -
|
|
* is an input variable containing the arguments to the data type
|
|
* specified in TYPE.NAME. These arguments will be separated by
|
|
* field marks.
|
|
* SELECTED.TYPE -
|
|
* is an output variable containing a data type specification,
|
|
* including parameters, if any.
|
|
* STATUS -
|
|
* is either NULL if no error was encountered
|
|
* Description:
|
|
* FBS.SELECT.DERIVED$ is used to dynamically decide what data type
|
|
* a particular type is derived from. When the "Derived From" field of
|
|
* a TYPE_TABLE record contains the word "DYNAMIC", BOND.SUBS will call
|
|
* FOREIGN.SUBS with this function code in order to obtain a dynamically-
|
|
* generated value for the "Derived From" field. This value may contain
|
|
* insertable parameters (e.g. "%1%").
|
|
*
|
|
*<<
|
|
* Source Date: 15:47:15 09 JAN 1991 Build ID: AREV*2.1.26 Level: 2.1
|