Retrieve Database File Description (QDBRTVFD) API


  Required Parameter Group:


  Default Public Authority: *USE

  Threadsafe: Conditional; see Usage Notes.

The Retrieve Database File Description (QDBRTVFD) API allows you to get complete and specific information about a file on a local or remote system. The information is returned to a receiver variable in either a file definition template or a format definition mapping. The file definition template provides more complete information about a database file than the Display File Description (DSPFD) command. The format definition provides complete information about the record formats of the file.

The format definition is used with the Query (QQQQRY) API to get data from a file. You can run the QDBRTVFD API to build a format definition that is later used to run a query. This format definition can be used several times to extract information from a database, making the Query API run faster. If the format definition is not created prior to running a query, the QQQQRY API must create one when it runs.


Authorities and Locks

Library Authority
*EXECUTE
File Authority
*OBJOPR
File Lock
*SHRNUP

Required Parameter Group

Receiver variable
OUTPUT; CHAR(*)

The receiver variable that is to receive the information requested. You can specify the size of the area smaller than the format requested as long as you specify the length of receiver variable parameter correctly. As a result, the API returns only the data the area can hold.

Length of receiver variable
INPUT; BINARY(4)

The length of the receiver variable provided. The length of receiver variable parameter may be specified up to the size of the receiver variable specified in the user program. If the length of receiver variable parameter specified is larger than the allocated size of the receiver variable specified in the user program, the results are not predictable. The minimum length is 8 bytes.

Qualified returned file name
OUTPUT; CHAR(20)

The actual qualified file name from which the file description has been extracted. If an override is active this file and library name may be different from the one entered with the API.

Format name
INPUT; CHAR(8)

The content and format of the information to be returned about the specified file, member, or format. You can use the following format names:

See Format of Generated Information for a description of these formats.

Qualified file name
INPUT; CHAR(20)

The name of the file about which the information is to be extracted and the library in which it is located. The first 10 characters contain the file name, and the second 10 characters contain the library name.

You can use the following special values for the library name:


Record format name
INPUT; CHAR(10)

The name of the record format in the specified file that is to be used to generate the file description. (This parameter is used only with format FILD0200.)

You can use the following special value for the record format name


Override processing
INPUT; CHAR(1)

Whether overrides are to be processed. The following values are used:


System
INPUT; CHAR(10)

Whether the information that is returned is about a file on either a local or remote system, or both. The possible values are:


Format type
INPUT; CHAR(10)

Whether the logical formats returned are internal or external. (This parameter is used only with format FILD0200.) A description and examples of the internal (*INT) and external (*EXT) formats follow:

The following are DDS, *EXT, and *INT format type examples: For a logical file definition of (1) that is based on a physical file definition of (2), a format type of *EXT would return (3) and a format type of *INT would return (4).


  Format Type Example DDS

  Logical file definition (1):

  Physical file definition (2):





  Format Type *EXT Example
  (3)





  Format Type *INT Example
  (4)


Error code
I/O; CHAR(*)

The structure in which to return error information. For the format of the structure, see Error code parameter.


Format of Generated Information

The QDBRTVFD API can be used to provide information in the following formats:

The following sections provide an overview of each of these formats. If an offset equals zero in the returned information, there is no corresponding structure associated with it.

The asterisk (*) in the Field column represents a reserved field. No variable is associated with these reserved fields.


FILD0100 Format (File Definition Template (FDT) header)

FILD0100 provides detailed information about how the file is built. FILD0100 Format shows how this information is organized. When more than one entry can appear, the figure indicates this as in (5).

Descriptions of the fields in this structure follow FILD0100 Format. The include source is supplied on the system, in source file H, member name QDBRTVFD, in the QSYSINC library. The field names in the following tables apply only to the ILE C include. See Include files and the QSYSINC library for the names of the OPM and ILE RPG and COBOL includes.

FILD0100 Format

FILD0100 Format


File Definition Header (Qdb_Qdbfh)

Qdb_Qdbfh is the first structure and is located at offset zero of the returned data.



Physical File Specific Attributes (Qdb_Qdbfphys)

You can locate the Qdb_Qdbfphys section with the offset Qdbpfof, in the FDT header section.



Trigger Description Area (Qdb_Qdbftrg)

You can locate the Qdb_Qdbftrg section with the offset Qdbfotrg in the Physical File Specific Attributes section, or with the offset Qdbflotrg in the Logical File Specific Attributes section. This section is repeated by the number of triggers, Qdbftrgn or Qdbfltrgn.



Constraint Definition Header (Qdb_Qdbf_Constraint)

You can locate the Qdb_Qdbf_Constraint section with the offset Qdbfofcs located in the physical file specific attributes section, Qdb_Qdbfphys.



Constraint Definition Entries

The number of constraint definition entries depends on the type of constraint.


Constraint Keys (Qdb_Qdbf_Keyn)

The Qdb_Qdbf_Keyn section is located with the offset Qdbf_Hlen in the constraint definition header, Qdbf_Constraint. When the constraint is referential constraint, the offset to the next section is located with the offset Qdbf_Kslen in this structure.



Key Name Array (Qdb_Qdbf_Narray)

This array follows the constraint keys structure, Qdbf_Keyn. The number of constraint key name array entries is in field Qdbf_nokys in the constraint keys structure.



Referential Constraint Definition (Qdb_Qdbf_Riafk_Afkd)

You can locate this section with the offset Qdbf_kslen in the constraint keys structure, Qdbf_Keyn, that precedes this structure. This structure exists only if the constraint is a referential constraint.



Check Constraint (Qdb_Qdbf_Chk_Cst)

This section is located with the offset Qdbf_Hlen in the constraint definition header, Qdbf_Constraint. This structure exists only if the constraint is a check constraint.



Start of change

Check Constraint Violation (Qdb_Qdbf_Chk_Cst_Violation)

The section exists for each check constraint violation clause that is specified. To locate the ON INSERT VIOLATION clause use Qdbf_chk_violation_insert_offset. To locate the ON UPDATE VIOLATION clause use Qdbf_chk_violation_update_offset. Both of these offsets are defined in the Check Constraint structure, Qdb_Qdbf_Chk_Cst.



End of change

Datalink Header (Qdb_Qdbfdtalnk)

The Qdb_Qdbfdtalnk section is the header for the datalink columns that have linked servers. There will be one header and one or more datalink column entries defined by the Qdb_Qdbfdlcole structure. You can locate this structure with the offset Qdbfodl in the Physical File Specific Attributes structure, Qdb_Qdbfphys.



Datalink Column Entry (Qdb_Qdbfdlcole)

The Qdb_Qdbfdlcole section repeats for the number of columns (Qdbfdlcoln) defined in structure Qdb_Qdbfdtalnk. You can locate the first column entry using offset Qdbfdlocole in structure Qdb_Qdbfdtalnk. Since Qdb_Qdbfdlcole is a varying length structure, use length Qdbfdlcelen to get to the next column entry.



Record ID Codes (Qdb_Qdbfdrtb)

The Qdb_Qdbfdrtb section describes the record ID codes for program described physical files. The record ID code information is an array with variable length entries. You can locate this section with the offset Qdbforid located in the physical file specific attributes section, Qdb_Qdbfphys.



Record ID Codes Array (Qdb_Qdbfdrae)

This array follows the record ID codes structure, (Qdb_Qdbfdrtb). The number of record ID code array entries is in Qdbfdrnum.



Logical File Specific Attributes (Qdb_Qdbflogl)

You can locate the Qdb_Qdbflogl section with the offset Qdbflfof located in the FDT header section, Qdb_Qdbfh.



Join Specifications (Qdb_Qdbfj)

The join specifications, Qdb_Qdbfj, are a linked list. There is an entry in the linked list for each join to-file. Each entry defines the join logical file's based on physical files and the fields in the from-file and the to-file used to join the based on physical file.

You can locate this section with the offset Qdbfoj located in the FDT header section, Qdb_Qdbfh.



Join Specification Array (Qdb_Qdbfjfld)

You can locate the Qdb_Qdbfjfld section with the offset Qdbfjsao located in the join header section, Qdb_Qdbfj. The number of join specification array entries may be up to one less than the number of data members, Qdbflbnum , located in the FDT header section, Qdb_Qdbfh.



Join Duplicate Sequence Specification Array (Qdb_Qdbfjdup)

You can locate the Qdb_Qdbfjdup section with the offset Qdbfjdao in the join section, Qdb_Qdbfj. The number of join specification array entries may be up to one less than the number of data members, Qdbflbnum, located in the FDT header section, Qdb_Qdbfh.



SQL Area (Qdb_Qdbfv)

The SQL area, Qdb_Qdbfv, contains the SQL select statement, or the SQL create index statement for new SQL indexes created for V6R1M0. For logical files, you can locate this section with the offset Qdbfovw located in the logical file specific attributes section, (Qdb_Qdbflogl). For SQL materialized query tables, you can locate this section with the offset Qdbfovw_mqt located in the physical file specific attributes section, (Qdb_Qdbfphys).



SQL Materialized Query Table Dependency Header (Qdb_Qdbfmqtd_Head)

The Qdb_Qdbfmqtd_Head section is located with the offset Qdbfmqtd_o in the SQL area, Qdb_Qdbfv. This structure exists only if the file is a SQL materialized query table.



SQL Materialized Query Table Dependency Entry (Qdb_Qdbfmqtd)

The Qdb_Qdbfmqtd section repeats in the dependency array for the number of depended-on files (Qdbfmqtd_#_deps) defined in structure Qdb_Qdbfmqtd_Head. The first dependency entry follows the dependency header Qdb_Qdbfmqtd_Head. Use length Qdbfmqtd_len to get to the next dependency entry.



Partitioned Table Header (Qdb_Qdbfsqpt_Head)

The Qdb_Qdbfsqpt_Head section is located with the offset Qdbfoff_sqpt. This structure exists only if the file is a partitioned table.


Partitioned Area (Qdb_Qdbfsqpt_Part)

The Qdb_Qdbfsqpt_Part section is located with the offset Qdbfsqpt_Part_Offset. This structure exists only if the file is a partitioned table.The repeating structure(Qdb_Qdbfsqpt_Part) can be located with the Qdb_Qdbfsqpt_Part_Len value.


Partition Range Key Area (Qdb_Qdbfsqpt_Range)

The Qdb_Qdbfsqpt_Range section is located with the offset Qdbfsqpt_Ran_Offset. This structure exists only if the file is a partitioned table that has range partitioning. Use Qdbfsqpt_Range_Len to get to the next entry.


Partition Header Hash Key Area (Qdb_Qdbfsqpt_Head_Hash)

The Qdb_Qdbfsqpt_Head_Hash is the header area for the hash keys. It is located with the offset Qdbfsqpt_Hk_Offset. This structure exists only if the file is a partitioned table that has hash partitioning.




Partition Hash Key Area (Qdb_Qdbfsqpt_Hash)

The Qdb_Qdbfsqpt_Hash section repeats for the number of partition hash keys,Qdbfsqpt_Head_Num_Keys. It follows Qdb_Qdbfsqpt_Head_Hash.



Alternative Collating Sequence Table (Qdb_Qdbfacs)

You can locate this section with the offset Qdbfocs in the FDT header section, Qdb_Qdbfh. This section is also referred to as the Sort Sequence Table. A sort sequence table can be either single-byte or UCS-2. If the UCS-2 table length, Qdbf_UCS2_Srtseq_Len, is non-zero, then it is a UCS-2 sort sequence table and the single-byte table, Qdbfacst, will be cleared.



IDDU/SQL Data Dictionary Area (Qdb_Qdbfdic)

You can locate the Qdb_Qdbfdic section with offset Qdbfodic in the FDT header section, Qdb_Qdbfh.



SQL Long/Alias File Name Area (Qdb_Qdbflngn)

The SQL long/alias file name area contains the files alternate names that can be used to access the file when using the system's SQL interfaces. You can locate the Qdb_Qdbflngn section with the offset Qdbfolng in the IDDU/SQL data dictionary section.



File Scope Array (Qdb_Qdbfb)

A file scope array, Qdb_Qdbfb, is present for all database files. The number of data members, Qdbflbnum, contains the number of file scope array entries. Each entry contains a based on physical file name and, optionally, a record format name.

Externally described physical files have one entry that names the physical file record format. The entry's file name portion is not used.

Program described physical files have one entry for each data dictionary record format. The entry names the data dictionary record format. The entry's file name portion is not used.

Non-join logical files have one entry for each based on physical file. The entry names the based on physical file and describes the logical file record format to use with that file.

Join logical files have one entry for each based on physical file. The entry names the based on physical file. Only the first entry describes the logical file record format.

SQL view logical files have one entry for each based on physical file. The entry names the based on physical file that will be either an externally described physical file or another view logical file. Only the first entry describes the logical file record format.

You can locate this section with the offset Qdbfos in the FDT header section, Qdb_Qdbfh.



Select/Omit Specification Array (Qdb_Qdbfss)

The select/omit specification array ( Qdb_Qdbfss) entries describe the record format fields to which the select/omit statement refer.

Non-join logical files can have one select/omit specification array for each file scope array entry.

Join logical files can have only one select/omit specification array. The first scope array entry for the join logical file contains the offset to the select/omit specification array.

You can locate this section with the offset Qdbfsoof in the scope array entry section.



Select/Omit Parameters (Qdb_Qdbfsp)

The Qdb_Qdbfsp section is a linked list of parameter descriptions. It describes the parameter values for this particular select/omit statement. The parameters are either a compare value or another record format field.

You can locate this section with the offset Qdbfsoso in the select/omit array section, Qdb_Qdbfss.



Key Specification Array (Qdb_Qdbfk)

The key specification array (Qdb_Qdbfk) entries describe the record format fields used in defining the file access path.

Non-join logical files can have one key specification array for each file scope array entry.

Join logical files can have only one key specification array. The first scope array entry for the join logical file contains the offset to the file's key specification array.

You can locate this section with the offset (Qdbfksof) in the scope array entry section, Qdb_Qdbfb.



Distributed File Definition Section and Partition Key Array (Qdb_Qdbf_dis_pkeyarr)

The distributed file definition section and partition key array (Qdb_Qdbf_dis_pkeyarr) contains the node group name and library name for the distributed file and the record format fields used in defining the partition key for each scope entry.

You can locate this section with the offset Qdbfodis in the scope array entry section, Qdb_Qdbfb.



Journal Information (Qdb_Qdbfjoal)

The section Qdb_Qdbfjoal contains the journal information for the physical file. You can locate this section with offset Qdbfjorn in the FDT header section, Qdb_Qdbfh.



FILD0200 Format (Qdb_Qddfmt Structure)

FILD0200 provides the format used by the records of the specified file. This structure is also used by the QQQQRY API to get data from the named file. FILD0200 Format shows how this information is organized. When more than one entry can appear, the figure indicates this as in (6). Descriptions and offsets of the fields in this structure are in the tables immediately following FILD0200 Format.

The descriptions and offsets are available in the include source supplied on the system. You can see this source in source file H, member name QDBRTVFD, in the QSYSINC library.

FILD0200 Format

FILD0200 Format


Format Definition Header (Qdb_Qddfmt)

The Qdb_Qddfmt section is always located at the beginning of the returned data area.



Field Header (Qdb_Qddffld)

This section is located immediately after the Qdb_Qddfmt header. The number of entries in this structure is defined by variable Qddffldnum in the Qdb_Qddfmt header. This structure is to be defined at variable Qddffldx in the Qdb_Qddfmt header.



Reference Information (Qdb_Qddfrefi)

You can locate the Qdb_Qddfrefi section with the offset Qddfrefd in the field header section, Qdb_Qddffld.



Field Prompted Numeric Editing Information (Qdb_Qddfdfne)

You can locate the Qdb_Qddfdfne section with the offset Qddffpnd in the field header section, Qdb_Qddffld.



Edit Code/Edit Word Information (Qdb_Qddfedcw)

You can locate the Qdb_Qddfedcw section with the offset Qddfedtd in the field header section, Qdb_Qddffld.



Validity Checking Information (Qdb_Qddfvchk)

You can locate the Qdb_Qddfvchk section with the offset Qddfvckd in the field header section, Qdb_Qddffld.



Validity Checking Entry (Qdb_Qddfvcst)

The first validity checking entry starts at Qddfvcen in the validity checking information section, Qdb_Qddfvchk.



Validity Checking Parameter (Qdb_Qddfvcpr)

The first validity checking parameter starts at Qddfvcpm in the validity checking entry section, Qdb_Qddfvcst.



Complex Object Field Type Information (Qdb_Qddfcpli)

You can locate the Qdb_Qddfcpli section with the offset Qddfcplx in the field header section, Qdb_Qddffld.



Field Text (Qdb_Qddfftxt)

You can locate the Qdb_Qddfftxt section with the offset Qddftxtd in the field header section, Qdb_Qddffld.



Alias Name Structure (Qdb_Qddfalis)

You can locate this section with the offset Qddfxals located in the field header section, Qdb_Qddffld.



Default Value Description Information (Qdb_Qddfdft)

You can locate the Qdb_Qddfdft section with the offset Qddfdftd in the field header section, Qdb_Qddffld.



Identity Column Information (Qdb_Qddfidcl)

You can locate the Qdb_Qddfidcl section with the offset Qddf_Identity_Off in the field header section, Qdb_Qddffld.



Derived Field Description Information

The derived field structure is a stack of operators and operands in postfix notation. Postfix notation is a method of forming mathematical expressions in which each operator is preceded by its operands and indicates the operation to be performed on the operands or the intermediate results that precede it. For example:

A + B
would be:
A B +

Numeric operands and character operands cannot be mixed in one derived field description. If numeric operands are specified, the resulting field attributes must be numeric. If character operands are specified, the resulting field attributes must be character or DBCS. Character and DBCS only fields cannot be mixed in one derived field description.

Substringing DBCS fields is allowed, although the data is treated as character data, that is, there is no true double-byte substring support. This applies to query formats only.


Derived Field Header (Qdb_Qddfderv)

You can locate this section, Qdb_Qddfderv, with the offset Qddfderd in the field header section, Qdb_Qddffld.



Derived Field Entry (Qdb_Qddfdvst)



Field Operand Entry (Qdb_Qddfdvof)



Constant Operand Entry (Qdb_Qddfdvoc)



Operator Entry (Qdb_Qddfdvo)



Derived Field Text Information (Qdb_Qddfdvtx)

You can locate the Qdb_Qddfdvtx section with the offset Qddfdvot in the Derived Field Header section, Qdb_Qddfderv.



Column Heading Information (Qdb_Qddfcolh)

You can locate the Qdb_Qddfcolh section with the offset Qddfchd in the field header section, Qdb_Qddffld.



IDDU/SQL Dictionary Format Information (Qdb_Qddfdic)

You can locate the Qdb_Qddfdic section with the offset Qddfdico in the field header section, Qdb_Qddffld.



IDDU/SQL Dictionary Field Information (Qdb_Qddfdicf)

You can locate the Qdb_Qddfdicf section with the offset Qddfdicd located in the field header section, Qdb_Qddffld.



Translate Table Specification (Qdb_Qddfxl)

You can locate the Qdb_Qddfxl section with the offset Qddfxlto in the field header section, Qdb_Qddffld.



Case Selection Specification (Qdb_Qddfcsl)

You can locate the Qdb_Qddfcsl section with the offset Qddfrcao in the field header section, Qdb_Qddffld. For a description of selection specifications, see QDBQS in the Query (QQQQRY) API.



Function Name Specification (Qdb_Qddfunc_def)

You can locate the Qdb_Qddfunc_def section with the offset Qddfdo_func_def in the derived operator entry section, Qdb_Qddfdvo.

This section can only be specified when used in conjunction with the QQQQRY API.

This section can be used to reference a function by name rather than opcode qddfdvop. It can be used to resolve to existing built-in functions provided by the database or to user-defined functions defined in the SYSROUTINE SQL catalog in the QSYS2 library. Resolution is based on function name, number of parameters, compatible parameters and library list, in that order.

See the DB2® for IBM i SQL reference topic collection for more information about user-defined functions and the SYSROUTINE catalog.



FILD0300 Format (Key Field Information)

FILD0300 provides detailed information for key fields of each record format of the specified file. This structure is used by the QQQQRY API to get data from the named file. FILD0300 Format shows how this information is organized. When more than one entry can appear, the figure indicates this as in (7). To get a description of all the fields contained in this structure and to determine the offsets, see the include source supplied on the system. An offset to the key field information array of each record format is provided in the record format information structure. If 0 is returned for this offset, this record format has no key field. If -1 is returned for this offset, the size of the receiver provided is insufficient to hold the returned data. You can see this source in source file H, member name QDBRTVFD, in the QSYSINC library.

FILD0300 Format

FILD0300 Format


Key Information Header (Qdb_Qdbwh)

The Qdb_Qdbwh section is always located at the beginning of the returned data area.



Record Format Key Information Array (Qdb_Qdbwhrec)

The Qdb_Qdbwhrec section is located immediately after the Qdb_Qdbwh header. This is a linked list. There is a format record for each format. The number of formats is stored in Fmt_Counts in the Qdb_Qdbwh header.



Key Field Description Array (Qdb_Qdbwhkey)

You can locate the Qdb_Qdbwhkey section with the offset Key_Info_Offset in the Qdb_Qdbwhrec array member. This is a linked list. There is a key field information array member for each key in the record format. The number of key fields is stored in Num_Of_Keys in the Qdb_Qdbwhrec array member.



FILD0400 Format (Qdb_qdbftrg_head structure)

FILD0400 provides detailed information about triggers defined for a file. FILD0400 Format shows how this information is organized. When more than one entry can appear, the figure indicates this as in (8).

Descriptions of the fields in this structure follow FILD0400 Format. The include source is supplied on the system, in the appropriate language source file, member name QDBRTVFD, in the QSYSINC library. The field names in the following tables apply only to the ILE C include. See Include files and the QSYSINC library for the names of the OPM and ILE RPG and COBOL includes.

FILD0400 Format

FILD0400 Format


Trigger Information Header (Qdb_Qdbftrg_Head)

This is the first structure and is located at offset zero of the returned data.



Trigger Definition Entry Header (Qdb_Qdbftrg_Def_Head)

The number of entries is defined by variable Qdb_Qdbftrg_Num_Trgs in the trigger header, Qdb_Qdbftrg_Head. You can locate the Qdb_Qdbftrg_Def_Head section with the offset Qdb_Qdbftrg_Off_Ent_Num1 in the trigger header, Qdb_Qdbftrg_Head.



Trigger Definition Name Structure (Qdb_Qdbftrg_Name_Area)

You can locate the Qdb_Qdbftrg_Name_Area section with the offset Qdb_Qdbftrg_Def_Off_Trg_Name in the Qdb_Qdbftrg_Def_Head section.



SQL Path Structure (Qdb_Qdbftrg_Path_Area)

You can locate the Qdb_Qdbftrg_Path_Area section with the offset Qdb_Qdbftrg_Def_Off_Sql_Path in the Qdb_Qdbftrg_Def_Head section. This structure is for SQL triggers only.



UPDATE Columns Structure (Qdb_Qdbftrg_Updc_Area)

You can locate the Qdb_Qdbftrg_Updc_Area section with the offset Qdb_Qdbftrg_Def_Off_Upd_Col in the Qdb_Qdbftrg_Def_Head section. This structure is for SQL triggers only.



UPDATE Columns Entry Structure (Qdb_Qdbftrg_Updc_List_Ent)

The Qdb_Qdbftrg_Updc_List_Ent section maps an entry in the structure Qdb_Qdbftrg_Updc_List_Struc.



WHEN Columns Structure (Qdb_Qdbftrg_When_Area)

You can locate the Qdb_Qdbftrg_When_Area section with the offset Qdb_Qdbftrg_Def_Off_When_Cols in the Qdb_Qdbftrg_Def_Head section. This structure is for SQL triggers only.



WHEN Columns Entry Structure (Qdb_Qdbftrg_When_Array)

This Qdb_Qdbftrg_When_Array section maps an entry in the structure Qdb_Qdbftrg_When_Array. This structure is for SQL triggers only.



BODY Columns Structure (Qdb_Qdbftrg_Body_Area)

You can locate this Qdb_Qdbftrg_Body_Area section with the offset Qdb_Qdbftrg_Def_Off_Body_Cols in the Qdb_Qdbftrg_Def_Head section. This structure is for SQL triggers only.



BODY Columns Entry Structure (Qdb_Qdbftrg_Body_Array)

The Qdb_Qdbftrg_Body_Array section maps an entry in the structure Qdb_Qdbftrg_Body_Array. This structure is for SQL triggers only.



Dependent Objects Structure (Qdb_Qdbftrg_Depo_Area)

You can locate the Qdb_Qdbftrg_Depo_Area section with the offset Qdb_Qdbftrg_Def_Off_Dep_Objs in the Qdb_Qdbftrg_Def_Head section. This structure is for SQL triggers only.



Dependent Objects Entry Structure (Qdb_Qdbftrg_Depo_Array)

The Qdb_Qdbftrg_Depo_Array section maps an entry in the structure Qdb_Qdbftrg_Depo_Array. This structure is for SQL triggers only.



Transition Area Structure (Qdb_Qdbftrg_Trns_Area)

You can locate the Qdb_Qdbftrg_Trns_Area section with the offset Qdb_Qdbftrg_Def_Off_Transition in the Qdb_Qdbftrg_Def_Head section. This structure is for SQL triggers only.



Trigger Statement Area (Qdb_Qdbftrg_Stmt_Area)

You can locate the Qdb_Qdbftrg_Stmt_Area section with the offset Qdb_Qdbftrg_Def_Off_Trg_Stmt in the Qdb_Qdbftrg_Def_Head section. This structure is for SQL triggers only.



Trigger Long Comment Area (Qdb_Qdbftrg_Long_Area)

You can locate the Qdb_Qdbftrg_Long_Area section with the offset Qdb_Qdbftrg_Def_Off_Trg_Long in the Qdb_Qdbftrg_Def_Head section.



Start of change

FILD0500 Format (Qdb_Qdbfrcac_Head structure)

FILD0500 provides detailed information about row and column access control(RCAC) for a file by providing the information for the file's permissions and masks.

Descriptions of the fields in this structure follow FILD0500 Format. The include source is supplied on the system, in the appropriate language source file, member name QDBRTVFD, in the QSYSINC library. The field names in the following tables apply only to the ILE C include. See Include files and the QSYSINC library for the names of the OPM and ILE RPG and COBOL includes.

FILD0500 Format


Row and Column Access Control Header (Qdb_Qdbfrcac_Head)

This is the first structure and is located at offset zero of the returned data.



Row and Column Access Control Definition Entry Header (Qdb_Qdbfrcac_Def_Head)

The number of entries is defined by the sum of the variables Qdb_Qdbfrcac_Num_Perm and Qdb_Qdbfrcac_Num_Mask in the row and column access control header, Qdb_Qdbfrcac_Head. You can locate the Qdb_Qdbfrcac_Def_Head section with the offset Qdb_Qdbfrcac_Off_Ent_Num1 in the row and column access control header, Qdb_Qdbfrcac_Head.



Row and Column Access Control Definition Name Structure (Qdb_Qdbfrcac_Name_Area)

You can locate the Qdb_Qdbfrcac_Name_Area section with the offset Qdb_Qdbfrcac_Def_Off_Rcac_Name in the Qdb_Qdbfrcac_Def_Head section.



Row and Column Access Control Columns in Rule Text Structure (Qdb_Qdbfrcac_Crutx_Area)

You can locate this Qdb_Qdbfrcac_Crutx_Area section with the offset Qdb_Qdbfrcac_Def_Off_Crutx_Cols in the Qdb_Qdbfrcac_Def_Head section.



Row and Column Access Control Column Rutx Entry Structure (Qdb_Qdbfrcac_Col_Rutx_Array)

The Qdb_Qdbfrcac_Col_Rutx_Array section maps an entry in the structure Qdb_Qdbfrcac_Crutx_Area.



Row and Column Access Control Dependent Objects Structure (Qdb_Qdbfrcac_Depo_Area)

You can locate the Qdb_Qdbfrcac_Depo_Area section with the offset Qdb_Qdbfrcac_Def_Off_Dep_Objs in the Qdb_Qdbfrcac_Def_Head section.



Row and Column Access Control Dependent Objects Entry Structure (Qdb_Qdbfrcac_Depo_Array)

The Qdb_Qdbfrcac_Depo_Array section maps an entry in the structure Qdb_Qdbfrcac_Depo_Array.



Row and Column Access Control Access Control Expression Area (Qdb_Qdbfrcac_Ace_Area)

You can locate the Qdb_Qdbfrcac_Ace_Area section with the offset Qdb_Qdbfrcac_Def_Off_Ace in the Qdb_Qdbfrcac_Def_Head section.



Row and Column Access Control Long Comment Area (Qdb_Qdbfrcac_Long_Area)

You can locate the Qdb_Qdbfrcac_Long_Area section with the offset Qdb_Qdbfrcac_Def_Off_Long in the Qdb_Qdbfrcac_Def_Head section.



Row and Column Access Control Label Area (Qdb_Qdbfrcac_Label_Area)

You can locate the Qdb_Qdbfrcac_Label_Area section with the offset Qdb_Qdbfrcac_Def_Off_Label in the Qdb_Qdbfrcac_Def_Head section.



End of change

Usage Notes

In multithreaded jobs, this API is not threadsafe and fails for distributed data management (DDM) files of type *SNA.


Error Messages



API introduced: V2R2