Information Catalog Manager Programming Guide and Reference

FLGNavigate

Retrieves a list of objects contained by a specific Grouping object.

Authorization

Administrator or user

Syntax



APIRET  APIENTRY    FLGNavigate( PSZ              pszFLGID,
                                 PFLGHEADERAREA * ppListStruct,
                                 PFLGEXTCODE      pExtCode );

Parameters

pszFLGID (PSZ) -- input
Points to the 16-character FLGID of the object instance for which contained objects will be retrieved.

Characters 1-6 of this ID identify the object type of this instance.

Characters 7-16 of this ID are the system-generated unique instance identifier.

ppListStruct (PFLGHEADERAREA) -- output
Points to the address of the pointer to the output structure. If there is no output structure, then the pointer to the output structure is set to NULL.

pExtCode (PFLGEXTCODE) -- output
Points to an extended code associated with the reason code. See Appendix D, Information Catalog Manager reason codes to see if a meaningful extended code is associated with the returned reason code.

Reason code (APIRET)
Represents the execution result of this API call.

See Appendix D, Information Catalog Manager reason codes for an explanation of the returned reason codes.

Output structure

FLGNavigate produces an output structure containing a list of objects contained by the specified object, as shown in Figure 131.

The object area of the output structure contains a list of all the object instances contained by the specified object instance. Returned for each object instance are the values of the FLGID, the object instance external name, and the child indicator, which indicates whether the object contains any other objects.

Figure 131. FLGNavigate output structure


Figure FLAA2048 not displayed.

For an explanation of the meanings of the byte offsets, see Chapter 4, The Information Catalog Manager input and output structures.

Usage

The output structure contains the following property values for each instance returned:

FLGID
The 16-character identifier of the object instance
Name
The 80-byte external name of the object instance
CHILDIND
1-character value specifying whether an object instance contains other object instances: Y is yes, N is no

The output list is sorted by object type name, then by the 80-byte name of the object instance according to the collating order used by the underlying database management system.

The maximum number of contained object instances that can be returned by FLGNavigate is approximately 5000, depending on the storage available on your machine.

Freeing memory allocated for an output structure

If FLGNavigate returned data in the output structure, you must save the data returned in the output structure and then call FLGFreeMem (see FLGFreeMem). Do not use other methods, for example, C language instructions, to free memory.

Examples

Figure 133 navigates through a structure of objects that contain other objects. In this example, ACCOUNTING contains three objects: ACCPAYABLE, ACCRECBLE, and GLEDGER. The structure is illustrated in Figure 132.

Figure 132. The contents of the ACCOUNTING object


ACCOUNTING


ACCPAYABLE


PAYABLE1

PAYABLE2


ACCRECBLE

GLEDGER



Figure 133 shows the C language code required to issue the FLGNavigate API call.

Figure 133. Sample C language call to FLGNavigate

 
 
 APIRET          rc;               // reason code from FLGNavigate
 UCHAR           pszFLGID[FLG_ID_LEN + 1];
 PFLGHEADERAREA  * ppListStruct;
 FLGEXTCODE      ExtCode = 0;           // Declare extended code
   .
   .  /* set pszParentID to FLGID of 'ACCOUNTING'          */
   .
 rc = FLGNavigate (pszFLGID,
                   ppListStruct,  // pass the address of
                                     // output structure pointer
                   &ExtCode);
 

Figure 134 illustrates the output structure for this API call.

Figure 134. Sample output structure for FLGNavigate


Figure FLAA2049 not displayed.


[ Top of Page | Previous Page | Next Page ]