EDI から XML への例
このセクションでは、EDI トランザクションを (エンベロープに包んで) ハブに送信する例を示します。EDI トランザクションはハブで XML 文書に変換され、コミュニティー・マネージャーに送信されます。
この例では、Data Interchange Services のマッピング担当者が変換マップを作成したと想定しています。その変換マップは、標準の EDI 879 トランザクション (X12 のバージョン 5010 に対応した X12V5R1 ディクショナリーを使用して定義されたもの) を受け取り、XML 文書に変換します。変換された文書は、コミュニティー・マネージャーのバックエンド・アプリケーションによって処理されます。この例のマップは S_DT_EDI_TO_XML.eif という名前です。
Data Interchange Services のマッピング担当者は、変換マップを WebSphere Partner Gateway データベースに直接エクスポートすることができます。あるいは、Data Interchange Services のマッピング担当者からユーザーにファイルを送信することもできます。その場合、ユーザーは bcgDISImport ユーティリティーを使用してファイルを WebSphere Partner Gateway にインポートします。この付録では、後者のシナリオを想定しています。
変換マップのインポート
このセクションでは、EDI 入力を受け取って XML 形式に変換する変換マップのインポート手順について説明します。変換マップをインポートするプロセスで、マップに関連付けられた文書定義もインポートします。
変換マップをインポートする前に、Data Interchange Services のマッピング担当者から変換マップを受信する必要があります。この一連の手順では、S_DT_EDI_TO_XML.eif というファイルがシステムにあることを前提にしています。
- コマンド・ウィンドウを開きます。
- 以下のコマンドまたはスクリプトを入力します。
- UNIX システムの場合:
<ProductDir>/bin/bcgDISImport.sh <database_user_ID>
<password> S_DT_EDI_TO_XML.eif
- Windows システムの場合:
<ProductDir>¥bin¥bcgDISImport.bat <database_user_ID>
<password> S_DT_EDI_TO_XML.eif
ここで、<database_user_ID> と <password> は、WebSphere Partner Gateway のインストール作業の一部としてデータベースをインストールしたときに使用した値です。
変換マップと文書フロー定義の検証
インポートした変換マップと文書定義が Community Console に表示されることを確認するには、以下のステップを実行します。
- 「ハブ管理」>「ハブ構成」>「マップ」>「変換マップ」の順にクリックします。
S_DT_EDI_TO_XML マップが表示されます。
- マップの横にある「詳細の表示」アイコンをクリックします。
このマップが関連付けられている文書フロー定義を確認できます。
表 26. マップに関連付けられた文書フロー定義
ソース |
ターゲット |
パッケージ: N/A
プロトコル: X12V5R1
文書フロー: 879 (すべて) |
パッケージ:
なし
プロトコル: FVT-XML-TEST (すべて)
文書フロー: WWRE_ITEMCREATIONINTERNAL (すべて) |
S_DT_EDI_TO_XML マップは、X12 879 トランザクション (X12V5R1 規格に準拠) を読み込み、カスタム・プロトコルに変換するように定義されています。
ターゲットの構成
このセクションでは、ハブ用のファイル・システム・ディレクトリー・ターゲットを作成します。
- 「ハブ管理」>「ハブ構成」>「ターゲット」をクリックし、「ターゲットの作成」をクリックします。
- 「ターゲット名」に EDIFileTarget と入力します。
- 「トランスポート」リストから「ファイル・ディレクトリー」を選択します。
- 「ルート・パス (Root Path)」に /Data/Manager/editarget と入力します。
- 「保管」をクリックします。
コミュニティー参加者は、このターゲットに EDI 交換を送信します。
対話の作成
2 つの対話を作成します。1 つは EDI エンベロープ用、もう 1 つは EDI エンベロープ内でのトランザクション用です。
EDI エンベロープを表す対話を作成します。
- 「ハブ管理」>「ハブ構成」>「文書フロー定義」の順にクリックします。
- 「対話の管理」をクリックし、次に「対話の作成」をクリックします。
- 「パッケージ: なし」および「プロトコル: EDI-X12」を展開し、「文書フロー: ISA」を選択します。
- 「パッケージ: N/A」および「プロトコル: EDI-X12」を展開し、「文書フロー: ISA」を選択します。
- 「アクション」リストから「EDI エンベロープ解除」を選択します。
注: この対話では、変換は発生しません。EDI 交換のエンベロープ解除が行われ、個々のトランザクション (879) が取り出されます。そのため、この対話に変換マップは必要ありません。
- 「保管」をクリックします。
879 トランザクションを表すソースと、変換された文書を表すターゲットを持つ対話を作成します。
- 「ハブ管理」>「ハブ構成」>「文書フロー定義」の順にクリックします。
- 「対話の管理」をクリックし、次に「対話の作成」をクリックします。
- 「パッケージ: N/A」および「プロトコル: X12V5R1」を展開し、「文書フロー: 879」を選択します。
- 「パッケージ: なし」および「プロトコル: FVT-XML-TEST」を展開し、「文書フロー: WWRE_ITEMCREATIONINTERNAL」を選択します。
- 「変換マップ」リストから「S_DT_EDI_TO_XML」を選択します。
- 「アクション」リストから「EDI 検証および EDI 変換」を選択します。
- 「保管」をクリックします。
この対話は、標準の EDI X12 879 トランザクションから別の形式への変換を表します。したがって、変換マップを選択する必要があります。
参加者の作成
この例の参加者は、コミュニティー・マネージャー (Manager) と参加者 (TP1) の 2 つです。
コミュニティー・マネージャー・プロファイルを作成します。
- 「アカウント管理」>「プロファイル」>「コミュニティー参加者」をクリックし、「作成」をクリックします。
- 「会社ログイン名」に ComManager と入力します。
- 「参加者表示名」に Manager と入力します。
- 「参加者タイプ」で、「コミュニティー・マネージャー」を選択します。
- 「ビジネス ID」に対して「新規」をクリックし、Freeform ID として 000000000 を入力します。
注: DUNS ではなく Freeform を必ず選択してください。
- 「ビジネス ID」に対して「新規」をクリックし、Freeform ID として 01-000000000 を入力します。
- 「保管」をクリックします。
2 番目の参加者を作成します。
- 「アカウント管理」>「プロファイル」>「コミュニティー参加者」をクリックし、「作成」をクリックします。
- 「会社ログイン名」に TP1 と入力します。
- 「参加者表示名」に TP1 と入力します。
- 「参加者タイプ」で、「コミュニティー参加者」を選択します。
- 「ビジネス ID」に対して「新規」をクリックし、Freeform ID として 000000001 を入力します。
注: DUNS ではなく Freeform を必ず選択してください。
- 「ビジネス ID」に対して「新規」をクリックし、Freeform ID として 01-000000001 を入力します。
- 「保管」をクリックします。
ゲートウェイの作成
この例の両方の参加者用にファイル・ディレクトリー・ゲートウェイを作成します。最初に、Manager 用のゲートウェイを作成します。
- 「アカウント管理」>「プロファイル」>「コミュニティー参加者」をクリックし、「検索」をクリックします。
- Manager プロファイルの横にある「詳細の表示」アイコンをクリックします。
- 「ゲートウェイ」をクリックし、次に「作成」をクリックします。
-
ゲートウェイに関する以下の値を入力します。ファイル・ディレクトリー (パス全体) がファイル・システムにすでに存在している必要があります。
- 「名前」に ManagerFileGateway と入力します。
- 「トランスポート」リストから「ファイル・ディレクトリー」を選択します。
- 「アドレス」に file:///Data/Manager/filegateway と入力します。
- 「保管」をクリックします。
- 「リスト」をクリックし、コミュニティー・マネージャー用のゲートウェイをすべてリストします。
- 「デフォルト・ゲートウェイの表示」をクリックします。
- 「実動」リストから、ステップ 4 で作成したゲートウェイを選択します。
- 「保管」をクリックします。
次に、参加者用のゲートウェイを作成します。
- 「アカウント管理」>「プロファイル」>「コミュニティー参加者」をクリックし、「検索」をクリックします。
- 「TP1」の横にある「詳細の表示」アイコンをクリックして、この例で作成したもう 1 つの参加者を選択します。
- 「ゲートウェイ」をクリックし、次に「作成」をクリックします。
-
ゲートウェイに関する以下の値を入力します。ファイル・ディレクトリー (パス全体) は、既存のディレクトリーである必要があります。
- 「名前」に TP1FileGateway と入力します。
- 「トランスポート」リストから「ファイル・ディレクトリー」を選択します。
- 「アドレス」に file:///Data/TP1/filegateway と入力します。
- 「保管」をクリックします。
- 「リスト」をクリックし、参加者用のゲートウェイをすべてリストします。
- 「デフォルト・ゲートウェイの表示」をクリックします。
- 「実動」リストから、ステップ 4 で作成したゲートウェイを選択します。
- 「保管」をクリックします。
B2B 機能の設定
この交換処理での 2 つの参加者の B2B 機能を使用可能に設定します。この例では、EDI 交換はコミュニティー参加者 (TP1) から発信され、コミュニティー・マネージャーに配信されます。
- 「アカウント管理」>「プロファイル」>「コミュニティー参加者」をクリックし、「検索」をクリックします。
- この例のソース参加者 (TP1) に対して「詳細の表示」アイコンをクリックします。
- 「B2B 機能」をクリックします。
- ソース参加者に対して 2 組の機能を使用可能に設定します。
- 最初に、EDI エンベロープを表す文書フロー定義を使用可能に設定します。
- 「ソースの設定」の下で、「パッケージ: なし」に対して「役割はアクティブではありません (Role is not active)」アイコンをクリックし、有効にします。
- 「パッケージ: なし」を展開します。
- 「ソースの設定」の下で、「プロトコル: EDI-X12 (すべて)」に対して「役割はアクティブではありません (Role is not active)」アイコンをクリックします。
- 「プロトコル: EDI-X12 (すべて)」を展開します。
- 「ソースの設定」の下で、「文書フロー: ISA (すべて)」に対して「役割はアクティブではありません (Role is not active)」アイコンをクリックします。
- 次に、このトランザクションを表す文書フロー定義を使用可能に設定します。
- 「ソースの設定」の下で、「パッケージ: N/A」に対して「役割はアクティブではありません (Role is not active)」アイコンをクリックし、有効にします。
- 「パッケージ: N/A」を展開します。
- 「ソースの設定」の下で、「プロトコル: X12V5R1 (すべて)」に対して「役割はアクティブではありません (Role is not active)」アイコンをクリックします。
- 「プロトコル: X12V5R1 (すべて)」を展開します。
- 「ソースの設定」の下で、「文書フロー: 879」に対して「役割はアクティブではありません (Role is not active)」アイコンをクリックします。
- 「アカウント管理」>「プロファイル」>「コミュニティー参加者」をクリックし、「検索」をクリックします。
- この例のターゲット参加者 (Manager) に対して「詳細の表示」アイコンをクリックします。
- 「B2B 機能」をクリックします。
- ターゲット参加者に対して 2 組の機能を使用可能に設定します。
- 最初に、文書フロー定義を使用可能に設定します。
- 「ターゲットの設定」の下で、「パッケージ: N/A」に対して「役割はアクティブではありません (Role is not active)」アイコンをクリックし、有効にします。
- 「パッケージ: N/A」を展開します。
- 「ターゲットの設定」の下で、「プロトコル: EDI-X12 (すべて)」に対して「役割はアクティブではありません (Role is not active)」アイコンをクリックします。
- 「プロトコル: EDI-X12 (すべて)」を展開します。
- 「ターゲットの設定」の下で、「文書フロー: ISA (すべて)」に対して「役割はアクティブではありません (Role is not active)」アイコンをクリックします。
- 次に、変換した文書を表す文書フロー定義を使用可能に設定します。
- 「ターゲットの設定」の下で、「パッケージ: なし」に対して「役割はアクティブではありません (Role is not active)」アイコンをクリックし、有効にします。
- 「パッケージ: なし」を展開します。
- 「ターゲットの設定」の下で、「プロトコル: FVT-XML-TEST (すべて)」に対して「役割はアクティブではありません (Role is not active)」アイコンをクリックします。
- 「プロトコル: FVT-XML-TEST (すべて)」を展開します。
- 「ターゲットの設定」の下で、「文書フロー: WWRE_ITEMCREATIONINTERNAL (すべて)」に対して「役割はアクティブではありません (Role is not active)」アイコンをクリックします。
接続のアクティブ化
接続をアクティブ化するには、以下のステップを実行します。
- 「アカウント管理」>「参加者の接続」をクリックします。
- 「ソース」リストから「TP1」を選択します。
- 「ターゲット」リストから「Manager」を選択します。
- 「検索」をクリックします。
- エンベロープを表す接続に対して「アクティブ化」をクリックします。
表 27. エンベロープ接続
ソース |
ターゲット |
パッケージ: なし (N/A)
プロトコル: EDI-X12 (すべて)
文書フロー: ISA (すべて) |
パッケージ: N/A (N/A)
プロトコル: EDI-X12 (すべて)
文書フロー: ISA (すべて) |
- 変換した文書に対する 879 トランザクションを表す接続の「アクティブ化」をクリックします。
表 28. XML 文書接続に対する EDI トランザクション
ソース |
ターゲット |
パッケージ: N/A (N/A)
プロトコル: X12V5R1 (すべて)
文書フロー: 879 (すべて) |
パッケージ: なし (N/A)
プロトコル: FVT-XML-TEST (すべて)
文書フロー: WWRE_ITEMCREATIONINTERNAL (すべて) |
この時点で、TP1 が 879 トランザクションを含む EDI 交換をコミュニティー・マネージャーに送信すると、EDI 交換のエンベロープが解除されて 879 トランザクションが取り出されます。次に、879 トランザクションは変換され、変換された文書がコミュニティー・マネージャーのゲートウェイに送信されます。
