アーカイブ・ユーティリティーで使用される API


概説

タスク

組み込み先

Tivoli Problem Management

概説

フラット・ファイルのオプション

データをフラット・ファイルにアーカイブすることを選択した場合には、エクスポートされたフラット・ファイルの操作では、かなりの労力が必要となることに注意しなければなりません。 このファイルは大きく、一般に扱いにくいものです。

フラット・ファイルのオプションを選択すると、結果的に、テーブルからの 1 レコードをファイルの 1 行に入れるファイルとなります。

アーカイブ・ユーティリティーがデータを読み取る元には 5 つのテーブルがありますが、フラット・ファイル中のその行には、6 つのラベル・タイプまたは タグ があります。

フラット・ファイルのタグ

eaacust.kb 知識ベースでは、ラベルは タグと呼ばれます。フラット・ファイルのタグは次の通りです。
  • CALL
  • CALLI
  • SESION
  • PROBLEMS
  • WORK_HISTORY
  • PROBLEM_HISTORY

CALL ラベルとともに CALLI ラベルが存在する理由は、CALLI ラベルは情報コールであることを示すためです。情報コールとは、対応するプログラムをオープンしないで Tivoli Problem Management で作成されるコールのことです。これは、1 つだけの CALL と、1 つまたは複数の SESION レコードが Tivoli Problem Management データベースに作成されたことを表します。

フラット・ファイルの形式

フラット・ファイルのフィールドは、Tivoli Problem Management の特定のバージョンの Tivoli Problem Management エンティティー・リレーションシップ図に示されるのと同じ順序になります。

文字列の値と非文字列の値は区別されます。ある列を char 値として作成した場合には、それは、フラット・ファイルの文字列とみなされます。この場合には、その値は "string." のように二重引用符で囲まれます。データベースの列の区切り文字は非文字列とみなされ、二重引用符では囲まれません。


タスク

フラット・ファイルの構文解析プログラムの作成

プログラムを作成して、フラット・ファイルの個別の行を構文解析する時には、タグを読み取る必要があります。このタグの後には 3 つのパイプ列 (|||) があり、このタグと最初のフィールドの始めとを区別しています。

フラット・ファイルの構文解析プログラムを作成する時には、次を実行する必要があります。

  1. その文字を 3 つのパイプに読み込む。
  2. その列を解析する。その列が文字列であるか、非文字列であるかを考慮する必要があります。

すべての文字列は eaacust.kb を編集することによってカスタマイズすることができます。ファイル・エクスポート文字はここに示されています。

ファイル・エクスポート文字 定義
EOL が '' 行の終わり。これは、出力テキスト・ファイルの行の終わりに入れられる文字です。これは、現在ブランクです。フラット・ファイルの各行の終わりに文字を表示したい場合には、この定数をそれに応じて変更する必要があります。
STD が '"' 文字列の区切り文字 / ラッパー。これは、データベース・テーブルからエクスポートされる文字列を "囲む" 文字です。文字列は、char や varchar の列などで構成されています。デフォルトは、二重引用符 (") です。
DELM が ',' 列の区切り文字。これは、フラット・ファイル・エクスポートでエクスポートされた列を区切るために使用される文字です。デフォルトはコンマ (,) です。
ND は '' 非文字列の列の区切り文字 / ラッパー。これは、出力テキスト・ファイルの非文字列の列を囲む文字です。デフォルトは空の文字列です。言い換えれば、非文字列は何にも囲まれていません。
SEP は '|||' タグと、フラット・ファイルの最初の列を区切るための仕切りです。これは、レコード・タグと、フラット・ファイルのある行のエクスポートされたデータの始めとの区切り記号です。このデフォルトは 3 つのパイプ (|||) です。

eaacust.kb に対して変更を行なった場合には、そのファイルは解析し直す必要があります。

フラット・ファイルの処理

アーカイブ・ユーティリティーによって作成されたフラット・ファイルを処理するには、CALL、SESION、PROBLEMS、WORK_HISTORY、および PROBLEM_HISTORY のテーブルの関係を再作成するアルゴリズムで次の枠取りを使用してください。
  • CALLI タグを読み取ると、別の CALLI または CALL のいずれかのタグが検出されるまで、CALLI 行と、SESION タグのあるそれ以降のすべての行を処理します。
  • CALL タグを読み取ると、PROBLEM タグを読み取るまで、CALL 行および、SESION と CALL のすべての行を処理します。また、 PROBLEM タグを処理して、すべての関連を完了します。