取得定義を記述したファイルを取得定義ファイルと呼びます。取得定義ファイルには、複数の取得定義を記述できます。取得定義ファイルは、ユーザが任意の通常ファイル上にテキストファイルとして作成します。
取得定義ファイルは、viコマンドなど(Windowsではメモ帳など)の編集ツールを使用して定義してください。取得定義の記述方法の詳細については、"11.4.4.3 取得定義の記述"を参照してください。
なお、取得定義を容易に作成するツールとして取得定義の生成コマンドを提供しています。取得定義の生成についての詳細は"B.7 取得定義の生成"を、取得定義の生成コマンドについての詳細は"11.9.3.8 tjnlcrtfmtdef(取得定義を生成する)"を参照してください。
取得定義の登録は、tjnlfmtdefコマンドを使用して行います。tjnlfmtdefコマンドの詳細は、"11.9.3.6 tjnlfmtdef(取得定義を登録する)"を参照してください。
以下にtjnlfmtdefコマンドの入力例を示します。
----------------------------------------------- tjnlfmtdef -a -f /tjnl/def/FMT.def -----------------------------------------------
----------------------------------------------- tjnlfmtdef -a -f c:\tjnl\def\FMT.def -----------------------------------------------
取得定義の記述方法について説明します。
なお、取得定義の記述規約については、"B.5.1 取得定義構文(Symfoware/RDB連携)"を参照してください。
取得定義の記述形式を、"表11.15 取得定義の記述形式"に示します。
LOGFMT 取得定義名 -- 取得定義名 SYSITEM システム取得項目 -- システム取得項目情報 TABLE データベース名.スキーマ名.テーブル名 -- ジャーナル取得対象列情報 ( 項目名 : 列名 データ属性 列編集情報 ) DSI データベース名.スキーマ名.テーブル名 -- ジャーナル取得対象DSI情報 DSI名 CHECKPOINT ジャーナル・チェックポイント名 -- ジャーナル・チェックポイント情報 COMMENT コメント文 ; |
取得定義の記述内容の説明を"表11.16 取得定義の記述内容"に示します。取得定義の構文、および指定値の詳細については、"B.5.1 取得定義構文(Symfoware/RDB連携)"を参照してください。
キーワード | 省略 | 記述方法 | 記述内容の説明 |
---|---|---|---|
不可 | 取得定義名を指定します。 | 取得定義名を指定します。 本キーワードから";"までが1つの取得定義となります。 | |
可 | 以下のいずれかの形式で指定します。 TJNLSYSALL:すべてのシステム取得項目を取得対象とします 本キーワードを省略した場合は、システム取得項目は取得されません。 | 取得するシステム取得項目を指定します。 複数のシステム取得項目を取得対象とする場合は、システム取得項目を","で区切って記述してください。 | |
可 | 以下の形式で指定します。 データベース名.スキーマ名.テーブル名 | ジャーナルを取得する列を指定します。 同一テーブル内の複数の列を取得対象とする場合は、"項目名:列名 データ属性 列編集情報"を","で区切って記述してください。 複数のテーブルをジャーナル取得対象とする場合は、本キーワードを複数記述してください。 列編集情報については、"列編集情報"を参照してください。 | |
可 | 以下の形式で指定します。 データベース名.スキーマ名.テーブル名 DSI名 | ジャーナルを取得するDSIを指定します。 同一テーブル内の複数のDSIを取得対象とする場合は、"DSI名"を","で区切って記述してください。 複数のテーブルのDSIをジャーナル取得対象とする場合は、本キーワードを複数記述してください。 | |
可 | ジャーナル・チェックポイント名を指定します。 | 配付を要求するジャーナル・チェックポイントを識別するジャーナル・チェックポイント名を指定します。 複数のジャーナル・チェックポイント名を指定する場合は、"ジャーナル・チェックポイント名"を","で区切って記述してください。 | |
可 | 任意の文字列を指定します。 | 取得定義に対するコメント文を指定します。 |
注)取得定義を追加または変更する場合は、省略できません。
列編集情報とは、外部10進数の列の符号情報を付加せず差分抽出するなど、ジャーナルを取得する列を編集する情報のことです。
列編集情報は、"CONV = (列編集指示)"の形式で指定します。
列編集指示の機能の説明を"表11.17 列編集指示の機能"に示します。列編集指示の構文、および指定値の詳細については、"B.5.1 取得定義構文(Symfoware/RDB連携)"を参照してください。
列編集指示 | 機能 |
---|---|
外部10進数または内部10進数の列において、符号情報を付加せず差分抽出します。 | |
固定長文字列または可変長文字列の列において、指定した長さで差分抽出します。 |
注1)配付定義のOutCodeにGS_KANAまたはGS_ASCIIを指定した場合、符号情報を付加せず差分抽出します。
配付定義のOutCodeにGS_KANAまたはGS_ASCII以外を指定した場合、列編集指示の指定に関わらず、符号情報を付加して差分抽出します。
注2)配付定義のCharInfoにEXTENDを指定した場合、文字列領域のサイズを拡張せず、SIZE(長さ)で指定した長さで差分抽出します。
取得定義の記述例を"表11.18 取得定義の記述例"に示します。
LOGFMT LOG_NKANTO SYSITEM TJNLRESOURCE,TJNLDBOP,TJNLTIME TABLE 販促.関東地区.家電 ( OFFICE_ID : 販売店コード INT , ITEM_ID : 製品番号 INT , ITEM_DIVISION : 製品区分 NUMERIC(5,0) CONV=(SIGN(OFF)) , ITEM_NAME : 製品名 CHAR(300) , SALE_NUM : 販売数 INT ) DSI 販促.関東地区.家電 群馬DSI , 栃木DSI , 茨城DSI CHECKPOINT DAYEND , WEEKEND COMMENT "北関東地区の家電製品販売状況収集用定義"; |