指定されたオブジェクト・タイプの新規インスタンスを作成するために使用します。
許可
管理者または許可ユーザー (すべてのオブジェクト・タイプ); ユーザー (Comments オブジェクト・タイプのみ)
構文
APIRET APIENTRY FLGCreateInst( PFLGHEADERAREA pObjInstStruct,
PSZ pszFLGID,
PFLGEXTCODE pExtCode );
パラメーター
この ID の 1 文字目から 6 文字目までは、このインスタンス のオブジェクト・タイプを識別します。これらの文字の値は、 入力構造ヘッダー・レコードの 33 バイトから 38 バイトまでと同じです。
この ID の 7 文字目から 16 文字目までは、システム生成された固有のインスタンス ID です。
他の API 呼び出しがこのインスタンスを参照するときには、 ここで戻された pszFLGID が使用されます。
FLGCreateInst API 呼び出しが正常に実行されなかった場合には、 pszFLGID は NULL にセットされます。
戻された理由コードの説明については、付録 D, 情報カタログ・マネージャーの理由コードを参照してくだ さい。
入力構造
FLGCreateInst を使用するには、図 47 に示す入力構造を定義し なければなりません。 この構造はヘッダー域、定義域、およびオブジェクト域からなります。
バイト・オフセットの意味については、情報カタログ・マネージャー API 入力構造を参照してくだ さい。
使用方法
前提条件
制約事項
オブジェクト管理タスクの実行を許可されていないが、 Comments オブジェクト・インスタンスを作成している場合は、 Creator 特性値が自分のログオン・ユーザー ID になるよ うにしなくてはなりません。
入力要件
ヘッダー域
ヘッダー・レコードのすべてのフィールドが必要です。
定義域
定義域は、オブジェクト・インスタンスを作成しているオブジェクト・タイプの定義済みの 特性のいくつか、またはすべてを含むことができます。 以下の規則が適用します。
データ・タイプ
データ長
特性省略名
値フラグ
UUI 番号
オブジェクト域
特性 NAME の値は、オブジェクト・タイプ内で固有である必要はありません。 重複した項目を作成することもできます。 ただし、重複する項目を作成する場合には、オブジェクト・インスタンス を区別することができるように、別の特性の値としてなんらかの記述情報 を指定するようにしてください。
データ・タイプ | 初期設定値 |
---|---|
CHAR | 非適用記号のあとに、特性の長さ全体にわたってブランクが続きます。 |
TIMESTAMP | 最大設定可能値に設定。 9999-12-31-24.00.00.000000 |
VARCHAR LONG VARCHAR | 00000001; 8 バイトで指定された長さフィールド。非適用記号が続きます。 |
データ・タイプ | 初期設定値 |
---|---|
CHAR TIMESTAMP | 特性の長さ全体にわたってブランク。 |
VARCHAR LONG VARCHAR | 00000000。8 バイトの長さフィールドが存在していて、 しかもゼロにセットされていなければなりません。 |
情報カタログ更新の制御
プログラムを可能な限り、情報カタログと同期化させるために、FLGCreateInst が 正常に完了したあとで、呼び出しを FLGCommit (FLGCommit参照) に 組み込む必要があります。 FLGCreateInst が正常に完了しない場合は、呼び出し を FLGRollback (FLGRollback参照) に組み込む必要があります。
図 48 は、FLGCreateInst 呼び出しを出すために必要な C 言語コード を示しています。
このサンプル・コードは Grouping オブジェクト・タイプの新規インスタンス を作成します。
図 48. C 言語による FLGCreateInst の呼び出しのサンプル
APIRET rc; // Declare reason code
PFLGfEADERAREA pObjInstStruct; // Pointer to the input structure
UCHAR pszFLGID[FLG_ID_LEN+1]; // Returns system-generated ID
FLGEXTCODE ExtCode = 0; // Declare extended code
.
/* creating pObjInstStruct object Instance by providing property values */
.
.
rc = FLGCreateInst (pObjInstStruct, // input structure
pszFLGID, // Returned ID of created instance
&ExtCode); // Pass pointer to extended code
図 49 は、この FLGCreateInst 呼び出しのため の入力構造を示しています。 pObjInstStruct パラメーターはこの構造を指します。新規の オブジェクト・インスタンスに関する特性および値の情報は この構造に入っています。
図 49. FLGCreateInst のための入力構造のサンプル
注: