プログラムへの項目の書き込み 

変更文書関連の項目およびテーブルを、以下の方法で完成させます。 一般データ

以下に示すのは、 INCLUDE プログラム F<K4>CDF に定義される項目です。

OBJECTID
オブジェクトのオブジェクト値(キー)

TCODE
変更の実行に使用するトランザクション

UTIME
変更時間

UDATE
変更日

USERNAME
変更者

オブジェクト固有のデータ

以下に示すのは、 INCLUDE プログラム F<K4>CDV に定義される項目です。

単一ケーステーブル

・ テーブル *< テーブル名 > またはレコード項目 < 旧レコード項目名 > (テーブル構造あり)
テーブルヘッダレコードまたはレコード項目は、オリジナルデータを含まなければなりません。

・ テーブル < テーブル名 >
テーブルヘッダレコードは、新しいデータを含む必要があります。

・ テーブル *< 参照テーブル名 >
(変更文書オブジェクトが定義されたときに、 参照テーブル名 が指定された場合のみ)
テーブルヘッダレコードは、オリジナル通貨および単位を含む必要があります。

UPD_< テーブル名 >
このフラグによって、処理ロジックを指定します。
以下の値が入力可能です。

D ”(削除)
削除のフラグの付いた *< テーブル名 > または < 旧レコード項目名 > のレコードについて、変更文書項目が作成されます。 < テーブル名 > は処理されません。

I ”(挿入)
作成のフラグの付いた < テーブル名 > のレコードについて、変更文書項目が登録されます。 *< テーブル名 > または < 旧レコード項目名 > は、処理されません。

U ”(更新)
*<
テーブル名 > または < 旧レコード項目名 > < テーブル名 > との比較が行われ、変更された各項目について変更文書項目が登録されます。 *< テーブル名 > または < 旧レコードフィールド名 > のキーと < テーブル名 > のキーは、同じでなければなりません。

”(スペース、処理なし)
*<
テーブル名 > または < 旧レコード項目名 > および < テーブル名 > は、更新プログラムによって処理されません。(変更が行われなかった場合は、処理をスキップして時間を節約することができます。 )

複数ケーステーブル:

以下のテーブルは、キーによってソートして送る必要があります。

Y<table name >
このテーブルには、変更または削除されたレコードのオリジナルバージョンが含まれなければなりません。構造は、 テーブル名 の変更文書オブジェクト定義で指定されたテーブル、処理フラグ(タイプ C 、長さ 1 )、場合によっては、 参照テーブル名 の変更文書オブジェクトの定義で指定された、関連通貨および単位のテーブルの構造も入ります。このテーブルは、変更文書オブジェクト INCLUDE の生成で登録され、 V< テーブル名 > によってディクショナリに保存されます。

処理フラグは、アプリケーションで処理する場合は、スペースから“ D ”に切り替えることができます。それ以外の場合、このフラグの効果はありません。

X< テーブル名 >
このテーブルは、変更または削除されたレコードの現バージョンを含む必要があります。構造は、 Y< テーブル名 > と同じです。
処理フラグのために入力可能な値は、以下のとおりです。

I ”(挿入)
レコードが作成されたか、テーブルレコードが削除された後、同じキーを持つレコードが同じトランザクションで作成され、このレコードを“変更”としてではなく、“削除”および“登録”(特殊なケース)として文書化します。

U ”または ”(スペース)(更新)

パラメータ UPD_< テーブル名 > (以下を参照)は、レコードが新規か、変更されているかを最初に設定します。この処理フラグがチェックされるのは、パラメータ値 U ”による TABLE_OLD および TABLE_NEW の2つのテーブルキーの比較によって、同じキーを持つ2つのレコードを見つける場合のみです。

複数ケースの内部テーブル処理フラグには、特別ケース( X< テーブル名 > )を除いて、常にスペースが含まれます。この処理フラグを“ D ”、“ I ”、または“ U ”に設定することが可能になったことによって、こうした処理フラグを利用して、テーブルをアプリケーションプログラムの他の目的にも使用できるようになりました。

UPD_<table name >
このフラグによって、処理ロジックを決定します。
以下の値が入力可能です。

D ”(削除)
Y<
テーブル名 > の、削除のフラグの付いた各レコードについて、変更文書項目が登録されます。 X< テーブル名 > は処理されません。

I ”(挿入)
X<
テーブル名 > の、作成のフラグの付いた各レコードについて、変更文書項目が登録されます。 Y< テーブル名 > は処理されません。

U ”(更新)
TABLE_OLD
および TABLE_NEW のキーが比較されます。以下の場合に分けられます。

1. レコードは TABLE_OLD に存在しますが、 TABLE_NEW には存在しません。変更文書項目は、削除される TABLE_OLD のレコードについて登録されます。

2. レコードは TABLE_NEW に存在しますが、 TABLE_OLD には存在しません。変更文書項目は、登録のフラグが付いた TABLE_NEW のレコードについて登録されます。

3. レコードは TABLE_OLD および TABLE_NEW の両方に存在します。変更文書項目は、ディクショナリで変更文書関連と定義されている、変更された各項目について登録されます。

”(スペース、処理なし)
*<
テーブル名 > または < 旧レコード項目名 > および < テーブル名 > は、更新プログラムのよって処理されません。(変更が行われなかった場合は、処理をスキップして時間を節約することができます。 )

テキストの変更

(変更文書オブジェクト定義に基づいて)、テキストの変更が記録される場合は、以下の項目を完了します。

ICDTXT_<Object>
この構造には、変更文書関連のテキストおよび、そのテキストに対応する詳細が含まれます。

TEILOBJID
変更されたテーブルレコードのキー

TEXTART
変更されたテキストのテキストタイプ

TEXTSPR
言語キー

UPDKZ
テーブルレコードのフラグ変更: D (削除)、 I (挿入)または U (更新)

UPD_ICDTXT_<Object>
テキストテーブルの変更フラグ:

”( space)
テーブルは、更新プログラムによって無視されます。

U
テーブルは、更新プログラムによって認識されます。

オプションのパラメータ

以下の INCLUDE プログラム F<K4>CDF のパラメータを、使用することもできます。

CDOC_PLANNED_OR_REAL
このパラメータによって、記録される変更が実際の変更か、変更予定かを制御します。
入力可能な値

− “ R ” 実際の(現実の)変更

− “ P ” 変更予定

− “ ”(スペース) 予定番号が存在しない場合: 実際の変更
予定番号が存在する場合: 変更予定

CDOC_UPD_OBJECT
変更文書が、オブジェクトについてどの変更アクションが実行されたかを決定する作業に関連したものである場合、実行されたアクションを渡すことができます。
入力可能な値:

− “ I オブジェクトが挿入されました。

− “ U ” オブジェクトが変更されました。

− “ D ” オブジェクトが削除されました。