サンプルの拡張
このシナリオでは、ACE、GSA、および SA アプリケーションのメッセージ・セットに TLOG 拡張を追加する方法について説明します。
これはまた、メッセージ・セットおよび POSLog XSLT を要件に合わせて変更する場合にも役立つことがあります。
このシナリオでは、カスタム・トランザクション・レコードを TLOG メッセージ・セット内に定義する方法について説明します。
このシナリオで、11_GG という名前のカスタム・トランザクション・レコードが、以下の指定に基づいて TLOG ACE、GSA、および SA メッセージ・セットに定義されます。
<TransactionRecord Name="11_GG" Description="Custom Transaction Record">
<TLogField><Name>StringType</Name><Type>PD</Type><Length>1</Length></TLogField>
<TLogField><Name>SubStringType</Name><Type>Pack</Type><Length>1</Length></TLogField>
<TLogField><Name>CustomField1</Name><Type>PD</Type><Length>4</Length></TLogField>
<TLogField><Name>CustomField2</Name><Type>PD</Type><Length>4</Length></TLogField>
<TLogField><Name>CustomField3</Name><Type>PD</Type><Length>4</Length></TLogField>
<TLogField><Name>CustomField4</Name><Type>ASCII</Type><Length>4</Length></TLogField>
</TransactionRecord>
** PD - Packed Decimal
- 最初のセクションは、カスタム・トランザクション・レコードを TLOG ACE メッセージ・セットに追加する方法を示します。
- 2 番目のセクションは、カスタム・トランザクション・レコードを TLOG GSA および SA メッセージ・セットに追加する方法を示します。
- 3 番目のセクションは、仕様に基づいてフィールドをトランザクション・レコードに追加する方法を示します。
- 4 番目のセクションは、新しい拡張のメッセージを POSLog に変換する方法を示します。
TLOG ACE メッセージ・セットでのトランザクション・レコードの定義
TLOG ACE メッセージ・セットにカスタム・トランザクション・レコードを定義するには、以下を行います。
- ETTP_TLOG_messages_custom_ACE.mxsd で「エレメントと属性」を選択します。
- 「エレメントと属性」を右クリックして、「グローバル・エレメントの追加」を選択します。
「globalElement」という名前の新しいグローバル・エレメントが作成されます。
- グローバル・エレメントを「11_GG」に名前変更します。
- 「globalElement」のタイプを「複合タイプ」に、「構成」を '' に設定します。
- グローバル・エレメントの論理プロパティーおよび物理プロパティーを以下のように設定します。
- globalElement 11_GG の下の {Local complexType} を選択します。
- 「プロパティー」ページに移動します。
- 「LogicalProperties」->「ComplexType」->「LocalGroup」->「構成」を「シーケンス」に設定します。
- 「PhysicalProperties」->「TLOGRAW」->「ComplexType」->「FieldIdentification」->「DataElementSeparation」を「全エレメント区切り」に設定します。
- 「PhysicalProperties」->「TLOGRAW」->「ComplexType」->「FieldIdentification」-「区切り文字」を「:」に設定します。
- 「PhysicalProperties」->「TLOGRAW」->「ComplexType」->「FieldIdentification」-「不在エレメント区切り文字の抑制」を「しない」に設定します。
- 仕様に基づいて、トランザクション・レコード内のフィールドを (以下のセクションで説明されているように) 定義します。
- エレメント参照を、グループ custom11 内のトランザクション・レコード 11_GG に追加します。
- グループ custom11 を選択して、右クリックします。
- 「エレメント参照の追加」をクリックします。
- 追加するトランザクション・レコードとして、「11_GG」を選択します。
将来 IBM が更新された TLOG ACE メッセージ・セットを出荷する場合でも、カスタム・トランザクション・レコードを再定義する必要はありません。
ETTP_TLOG_messages_custom_ACE.mxsd のコピーを取得して、更新された TLOG ACE メッセージ・セットのメッセージ・セット・フォルダー内にドロップしてください。
TLOG GSA および SA メッセージ・セットでのトランザクション・レコードの定義
TLOG GSA および SA メッセージ・セットにカスタム・トランザクション・レコードを定義するには、以下を行います。
- グローバル・エレメントを ETTP_TLOG_messages_IBM_<GSA|SA>.mxsd に追加します。
- ETTP_TLOG_messages_custom.mxsd で「エレメントと属性」を選択します。
- 「エレメントと属性」を右クリックして、「グローバル・エレメントの追加」を選択します。
「globalElement」という名前の新しいグローバル・エレメントが作成されます。
- グローバル・エレメントを「11_GG」に名前変更します。
- 「globalElement」のタイプを「複合タイプ」に、「構成」を '' に設定します。
- グローバル・エレメントの論理プロパティーおよび物理プロパティーを以下のように設定します。
- globalElement 11_GG の下の {Local complexType} を選択します。
- 「プロパティー」ページに移動します。
- 「LogicalProperties」->「ComplexType」->「LocalGroup」->「構成」を「シーケンス」に設定します。
- 「PhysicalProperties」->「TLOGRAW」->「ComplexType」->「FieldIdentification」->「DataElementSeparation」を「全エレメント区切り」に設定します。
- 「PhysicalProperties」->「TLOGRAW」->「ComplexType」->「FieldIdentification」-「区切り文字」を「:」に設定します。
- 「PhysicalProperties」->「TLOGRAW」->「ComplexType」->「FieldIdentification」-「不在エレメント区切り文字の抑制」を「しない」に設定します。
- 仕様に基づいて、トランザクション・レコード内のフィールドを (以下にある次のセクションで説明されているように) 定義します。
- エレメント参照を、ETTP_TLOG_messages_IBM_<GSA|SA>.mxsd 内の適切な場所で、トランザクション・レコード 11_GG に追加します。
トランザクション・レコード内のフィールドの定義
TLOG ACE、GSA、および SA メッセージ・セット内のトランザクション・レコードにフィールドを定義するには、以下を行います。
- ETTP_TLOG_messages_custom.mxsd 内の「エレメントと属性」の下で、トランザクション・レコード (この場合は 11_GG) を選択します。
- トランザクション・レコード 11_GG を右クリックします。
- 「ローカル・エレメントを追加」をクリックします。
「localElement」という名前の新しいローカル・エレメントが作成されます。
- ローカル・エレメントを名前変更して、それを「CustomField1」に設定します。
- ローカル・エレメント「CustomField1」のプロパティーを以下のように設定します。
- ローカル・エレメント「CustomField1」を選択します。
- 「プロパティー」ページに移動します。
- 「LogicalProperties」->「ローカル・エレメント」>「タイプ」を「decimal」に設定します。
- 「LogicalProperties」->「ローカル・エレメント」>「MinOccurs」を、そのフィールドがオプションの場合には「0」に設定します。
- 「LogicalProperties」->「ローカル・エレメント」>「MaxOccurs」を、そのフィールドを何回でも繰り返すことが可能な場合には「-1」に設定します。
- 「PhysicalProperties」->「TLOGRAW」->「ローカル・エレメント」->「PhysicalType」を「TLOG に特定」に設定します。
- 「PhysicalProperties」->「TLOGRAW」->「ローカル・エレメント」->「長さ」を「4」に設定します。
- ステップ 2 から 5 までを繰り返して、トランザクション・レコード 11_GG の残りのフィールド CustomField2、CustomField3、CustomField4 を定義します。
POSLog XSLT の変更
TLOG サンプルでは XSLT のセットを使用して、ACE、GSA、および SA メッセージを POSLog に変換します。
これらの XSLT は、'<Toolkit Workspace>\ETTP_EXAMPLE\XSLT\POSLogV2.1' または '<Toolkit Workspace>\ETTP_EXAMPLE_V1\XSLT\POSLogV1.0' のどちらかにあります。
新しく定義されたトランザクション・レコード/フィールドは、
これらの XSLT が新しいトランザクション・レコード/フィールドを処理するように変更されていなければ、POSLog に変換されません。
ACE、GSA、および SA メッセージのフィールドを対応する POSLog にマップするための、独自の変換規則を作成できます。
サンプルのホームに戻る