AdsDDFindNextObject

Advantage Client Engine

Continues the search initiated by AdsDDFindFirstObject and retrieves the name of the next object passing the search condition from the data dictionary.

Syntax

UNSIGNED32 AdsDDFindNextObject( ADSHANDLE hDBConn,

ADSHANDLE hFindHandle,

UNSIGNED8 *pucObjectName,

UNSIGNED16 *pusObjectNameLen );

Parameters

hDBConn (I)

Handle of a database connection.

hFindHandle (I) 

Find handle that was returned by AdsDDFindFirstObject.

pucObjectName (O)

Returns the name of next object in the data dictionary. The length of the object name has a maximum length of ADS_MAX_OBJECT_NAME_LEN.

pusObjectNameLen (I/O)

On input, specifies the size of the buffer pointed to by the pucObjectName. On output, returns the length of the object name returned in pucObjectName.

Special Return Codes

AE_NO_OBJECT_FOUND

No additional object matching the specified condition was found in the data dictionary.

Remarks

AdsDDFindNextObject is used in conjunction with AdsDDFindFirstObject to retrieve the names of the objects matching the search condition from the data dictionary. When names of all objects matching the searching condition have been retrieved, the function returns AE_NO_OBJECT_FOUND.

See AdsDDFindFirstObject for information on types of objects that can be searched.

Example

Find all index files that are associated with the "Customer Information" table.

AdsConnect60( "n:\\MyData\\myData.ADD", ADS_REMOTE_SERVER, "ADSSYS", NULL, ADS_DEFAULT, &hDD );

usBufferSize = (UNSIGNED16)sizeof( aucFileName );

if ( AE_SUCCESS == AdsDDFindFirstObject( hDD, ADS_DD_INDEX_FILE_OBJECT,

"Customer Information", aucFileName,

&usBufferSize, &hFindHandle ))

{

do

{

printf( "%s\n", aucFileName );

usBufferSize = (UNSIGNED16)sizeof( aucFileName );

}

while ( AE_SUCCESS == AdsDDFindNextObject( hDD, hFindHandle, aucFileName, &usBufferSize ));

}

 

/* No need to call AdsDDFindClose since we are closing the DD. */

AdsDisconnect( hDD );

See Also

AdsDDFindFirstObject

AdsDDFindClose

AdsConnect60