特定のオブジェクト・インスタンスを含む Grouping オブジェクト・インスタンス のリストを検索するために使用します。
許可
管理者またはユーザー
構文
APIRET APIENTRY FLGWhereUsed( PSZ pszFLGID,
PFLGHEADERAREA * ppListStruct,
PFLGEXTCODE pExtCode );
パラメーター
この ID の 1 文字目から 6 文字目までは、このインスタンスの オブジェクト・タイプを識別します。
この ID の 7 文字目から 16 文字目までは、システム生成された固有のインスタンス ID です。
この出力構造には、コンテナー・オブジェクトに関するいくつかの特性仕様と 特性値が入ります。 各収納用オブジェクトについて、以下の情報が示されます。
すべてのインスタンスは、最初にオブジェクト・タイプ名によって分類され、 次に名前によって分類されます。インスタンスの実際の順序は、情報カタログで 使用するデータベース管理システムの照合順序によって決まります。
FLGWhereUsed によって戻すことのできるオブジェクト・インスタンスの 最大数は計算機で使用可能な記憶域によって異なり、約 5000 です。
出力構造がない場合には、構造を指すポインターは NULL にセットされます。
戻された理由コードの説明については、付録 D, 情報カタログ・マネージャーの理由コードを参照してくだ さい。
出力構造
FLGWhereUsed が作成する出力構造には、図 160 に示すように、 指定されたオブジェクトを含むオブジェクトのリストが入っています。
出力構造のオブジェクト域には、指定されたオブジェクト・インスタンス を含むすべての Grouping オブジェクトのリストが入ります。 戻されたオブジェクト・インスタンスは、FLGID の値と オブジェクト・インスタンスの外部名によって識別されます。
使用方法
出力構造に割り振られたメモリーの解放
FLGWhereUsed が出力構造にあるデータを戻した場合、出力構造に戻されたデータを 保管してから、FLGFreeMem を呼び出さなくてはなりません (FLGFreeMem参照)。 メモリーを解放するのに、たとえば C 言語指示のような他の方式は使用しないで ください。
図 161 は、FLGWhereUsed API 呼び出しを出すために必要な C 言語コード を示しています。 このサンプル・コードは、FLGWhereUsed API 呼び出しを発行します。
図 161. C 言語による FLGWhereUsed の呼び出しのサンプル
APIRET rc; // reason code from FLGWhereUsed
UCHAR pszFLGID[FLG_ID_LEN + 1]; // Information Catalog Manager ID
PFLGHEADERAREA * ppListStruct; // pointer to output structure pointer
FLGEXTCODE ExtCode=0; // extended code
.
. /* provide values for input parameters */
.
strcpy (pszFLGID, "0000770000003333");
rc = FLGWhereUsed (pszFLGID,
ppListStruct, // address of output structure pointer
&ExtCode);
図 162 は、この呼び出しによって得られる出力構造を示しています。
図 162. FLGWhereUsed のための出力構造のサンプル
指定されたオブジェクト・インスタンスは、2 つの異なる オブジェクト・タイプの 3 つのインスタンスに含まれています。 オブジェクト・タイプ ID 000056 に対応するオブジェクト・タイプ名は、 オブジェクト ID 000022 よりも英字順で小さい値であるため、最初に示されます。