情報カタログ・マネージャー プログラミングの手引きおよび解説書

情報カタログ・マネージャーの API 出力構造

図 24 は、情報カタログ・マネージャーの API 出力構造の一般的な形式を示しています。 この出力構造は、ヘッダー域、定義域、およびオブジェクト域の 3 つの 連続した区域からなります。 情報カタログ・マネージャー API 呼び出しによっては (FLGGetType のように)、最初の 2 つの区域だけしか 作成されないこともあります。

ユーザーのプログラムが出力構造を作成する API 呼び出しを呼び出すと、 NULL ポインターを指すポインターがパラメーターとして渡されます。 そして、その API 呼び出しが出力構造のアドレスを NULL ポインターに割り当てます。

複数の API 呼び出しを呼び出すことによってメモリーを使い切ることのないように、 ユーザーのプログラムで情報カタログ・マネージャーの API 呼び出し FLGFreeMem を使用して、この出力構造に 割り振られたメモリーを割り振り解除することができます。 FLGFreeMem の詳細については、FLGFreeMemを参照してください。

図 24. API 出力構造


バイト・レベルでの情報カタログ・マネージャー出力構造の図。

以下の API 呼び出しでは、データを戻すために出力構造が作成されます。

FLGDeleteTree
削除されたオブジェクト・インスタンスのリストを戻します。

FLGFoundIn
特定のインスタンスが検索されたインスタンスまたはオブジェクト・タイプのリストを戻します。

FLGGetInst
オブジェクト・インスタンスに関する情報を獲得します。

FLGGetReg
オブジェクト・タイプ登録に関する情報を獲得します。

FLGGetType
オブジェクト・タイプに関する情報を獲得します。

FLGInit
必要な資源を割り振り、情報カタログ・マネージャー・クライアントを初期設定します。

FLGListAnchors
他のオブジェクトに含まれていない Grouping オブジェクトのインスタンス のリストを戻します。このような最上位の Grouping オブジェクトは、 アンカー と呼ばれます。

FLGListAssociates
特定のインスタンスまたはオブジェクト・タイプと関連するインスタンスのリストを戻し ます。

FLGListContacts
指定したインスタンスのためにすべての Contact オブジェクト・インスタンス のリストを戻します。

FLGListObjTypes
すべてのオブジェクト・タイプのリストを戻します。

FLGListOrphans
現在他のインスタンスとは関連していない、特定のオブジェクト・タイプのインスタンスの リストを戻します。

FLGListPrograms
すべての Program オブジェクトのリストを戻します。

FLGManageCommentStatus
コメント用に利用可能な選択項目のリストを更新します。

FLGManageUsers
情報カタログの管理者とユーザーを更新し、各ユーザーの権限の エクステントを識別します。

FLGNavigate
指定された Grouping オブジェクトに含まれる Grouping また は Elemental オブジェクトのリストを戻します。

FLGSearch
特定のオブジェクト・タイプの、選択基準を満たすインスタンスのリストを戻します。

FLGSearchAll
任意のオブジェクト・タイプの、選択基準を満たすインスタンスのリストを戻します。

FLGWhereUsed
指定されたオブジェクトを含む Grouping オブジェクトのリストを戻します。

ヘッダー域 (常に存在)

ヘッダー域では、定義域とオブジェクト域の情報を記述します。 ヘッダー域のバイト・オフセット位置は、図 25 および 表 12 で表示、説明しています。

図 25. 出力構造のヘッダー域


バイト・レベルでの情報カタログ・マネージャー出力構造のヘッダー域の図。


表 12. 出力構造のヘッダー域とそのフィールド
図 25 で示したセクション バイト・オフセット 存在するかどうか 説明
FLG-HEAD 0-7 常に存在 構造の識別子。
定義の長さ 8-15 常に存在 定義域の長さ。

値は 160 の倍数 (特性の数に各定義レコードの長さを掛けた値)。

オブジェクトの長さ 16-23 常に存在 オブジェクト域の長さ。

データが戻されない場合には、このオブジェクト域の長さはゼロ (00000000) になる。

オブジェクト域の項目カウント 24-31 常に存在 オブジェクト域に入力された各特性値の数。

この値は、定義域内の特性の数にオブジェクト域で記述された 値のセットの数を掛けた値になる。

データが戻されない場合には、このオブジェクト域の長さはゼロ (00000000) になる。

区分 32 以下の呼び出しで存在
  • FLGGetInst
  • FLGGetReg
  • FLGGetType
オブジェクト・タイプまたはオブジェクトの区分

有効な値は以下のとおり。

G
Grouping

E
Elemental

C
Contact

P
Program

D
Dictionary

S
Support

A
Attachment
オブジェクト・タイプの ID 33-38 以下の呼び出しで存在
  • FLGGetInst
  • FLGGetReg
  • FLGGetType
オブジェクト・タイプに関するシステム生成された識別子。

39-159 常に存在 ブランクのままにする必要がある。

定義域 (常に存在)

定義域には、特定の情報カタログ・マネージャー API 機能によって出力値として作成された 特性定義の集合が入ります。

表 13 は、出力構造を作成する API 呼び出し のための定義域の意味を示しています。

表 13. 各種の API 呼び出しにおける定義域の意味
API 呼び出し 定義域で示される情報

FLGGetInst
FLGGetReg
FLGGetType
FLGDeleteTree

オブジェクト登録、オブジェクト・タイプ、またはオブジェクト・インスタンス を定義する特性の集合の定義。
FLGInit 情報カタログ・マネージャー環境に関する情報

FLGFoundIn
FLGListAnchors
FLGListAssociates
FLGListContacts
FLGListObjTypes
FLGListOrphans
FLGListPrograms
FLGManage-
CommentStatus
FLGManageUsers
FLGNavigate
FLGSearch
FLGSearchAll
FLGWhereUsed

これらのいずれかの API 呼び出しによって戻された各項目を記述する特性の集合の定義。

図 26 は、この定義域内のレコードのバイト・オフセット位置 を示しています。

図 26. 定義域内のレコード


バイト・レベルでの情報カタログ・マネージャー出力構造の定義域 における単一定義レコードの図。

特性の集合における各特性は、表 14 に示すように、 形式設定された仕様の集合によって定義されます。

表 14. 出力構造の定義域とそのフィールド
図 26 で示したセクション バイト・オフセット 存在するかどうか 説明
特性名 0-79 常に存在 外部名。
データ・タイプ 80-109 常に存在 特性のデータ・タイプ。

有効な値は以下のとおり。

CHAR
固定長文字データ。 最大長は 254。

VARCHAR
可変長文字データ。 最大長は 4000。

LONG VARCHAR
可変長文字データ。 最大長は 32700。

TIMESTAMP
yyyy-mm-dd-hh.mm.ss.nnnnnn 形式のタイム・スタンプ。 タイム・スタンプの長さは 26。
長さ 110-117 常に存在 オブジェクト域内の特性値の最大長。
ppn 118-125 以下の呼び出しで存在
  • FLGGetInst
  • FLGGetReg
  • FLGGetType
  • FLGManage- CommentStatus
その他の API 呼び出しの場合、このフィールドは未使用のためブランクのまま。
特性省略名
vf 126 以下の呼び出しで存在
  • FLGGetInst
  • FLGGetReg
  • FLGGetType
その他の API 呼び出しの場合、このフィールドは未使用のためブランクのまま。
特性が必須であるのか、任意選択であるのか、あるいはシステム生成される のかを指定する値フラグ。

有効な値は以下のとおり。

R
必須

O
任意選択

S
システム生成
us 127 以下の API 呼び出しで存在
  • FLGGetInst
  • FLGGetType
その他の API 呼び出しの場合、このフィールドは未使用のためブランクのまま。
ある特性が汎用固有識別コード (UUI) のパートであることを示す、UUI の順序番号。

有効な値は以下のとおり。

1
UUI のパート 1
2
UUI のパート 2
3
UUI のパート 3
4
UUI のパート 4
5
UUI のパート 5
(ブランク)
UUI の一部ではない

UUI のパートの詳細については、情報カタログ・マネージャー 管理の手引き を参照。


128-159 常に存在 予約セクション。

ブランクのまま。

オブジェクト域 (値を検索するときに存在)

オブジェクト域には、定義域で定義された特性の値が入ります。 これらの値は、定義域で定義したとおりの順序で表示されます。

オブジェクト域は、以下の API 呼び出しの出力構造に含まれます。

FLGDeleteTree

FLGFoundIn

FLGGetInst

FLGGetReg

FLGInit

FLGListAnchors

FLGListAssociates

FLGListContacts

FLGListObjTypes

FLGListOrphans

FLGListPrograms

FLGManageCommentStatus

FLGManageUsers

FLGNavigate

FLGSearch

FLGSearchAll

FLGWhereUsed

それぞれの値のサイズは、以下の規則に従って判別することができます。

データ・タイプ
値のサイズに関する規則

VARCHAR
値の前に、その値の実際の長さを示す 8 文字長のフィールドが付きます。

LONG VARCHAR
値の前に、その値の実際の長さを示す 8 文字長のフィールドが付きます。

CHAR
値は定義域の特性の長さフィールドで定義されたバイト数を占め、定義された 長さになるように右側に埋め込みが行われます。

TIMESTAMP
26 バイトです。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]