ASTERIA Warp、Biware EDI Stationによる流通BMS実証実験について

2013年11月
株式会社インターコム
インフォテリア株式会社

1.目的


 企業間の電子商取引を行う際には、様々なプロトコルが存在しています。業界ごとの標準仕様が制定され、その仕様も公開されていることが一般的ですが、実際は古くから利用している方法がまだまだ利用されている場合や、標準仕様に複数のバージョンが存在している場合、利用者側で多くのカスタマイズが入っている場合などが数多くあり、統一されているとは言い難い状況が続いています。
 この様々な形式が混在している状況を吸収し、各社ごとに異なる社内業務システムとシームレスに連携することを目的として、株式会社インターコムが提供するEDI統合パッケージ「Biware EDI Station」とインフォテリア株式会社が提供する「ASTERIA Warp」を使った実証実験を行いました。

2.検証の概要


 検証にあたって使用したEDIの方式は、現在、流通業界で普及が進んでいる形式である、「流通BMS」を利用しました※1 。このデータを元に、通信を行い擬似的な社内システムとして用意したデータベースとデータの送受信を行いました。

※1 JX手順で基本形Ver.1.3の発注メッセージを利用

図 1 検証の概要
図 1 検証の概要
 

 検証した処理は頻度が最も高いと思われる受注処理と発注処理です。通信経路はインターネットを使用し、取引先からのデータ受信をトリガーとして処理を開始、データベースに保存する流れを受注処理として検証しました。発注処理としてはデータベースに格納したデータを収集、インターネットを通じて取引先サーバーに伝達されるまでを検証しています。

3.検証の詳細


3.1.検証環境

 検証環境は、以下の環境をAmazon Web Services EC2で構築して利用しました。

環境項目
OS Windows Server 2012 Standard
CPU Interl Xeon E5506 2.13GHz相当×2 ※2
メモリ 1.7GB ※2
HDD容量 30GB
データベース MySQL 5
データ連携 ASTERIA Warp 4.7.1
企業間データ通信 Biware EDI Station
※2 Amazon EC2 の c1.medium にて構築

3.2.データベース環境

 取引情報を表す「trade」テーブル、取引情報に含まれる1商品ごとの明細情報を表す「items」テーブル、取引先情報を表す「account」テーブルの3種を用意しました。

図 2データベース構造
図 2データベース構造

3.3.受注処理

 受注処理はJX手順で受信した受注データを受け取り、データベースに格納する処理を検証しています。順を追って示します。

3.3.1.流通BMSの受信からCSVデータの作成

 Biware EDI Stationを利用し、流通BMSを受信する方法は、ASTERIA Warpとの連携によって変更が必要となる部分ではありませんので、通常通り行います。受注データはCSV変換を行います。この手順をワークフローとして登録したものが以下です。

図 3 受注処理
図 3 受注処理

CSVへの変換ではBiware EDI Stationに同梱されるBiware EasyExchangeにて定義します。

図 4 Biware EasyExchange
図 4 Biware EasyExchange

EasyExchangeには、一般的に利用される各種EDI形式が定義ファイルとして用意されているため、それらを選択することで変換処理の設定は完了します。カスタマイズされている場合についても、GUIを使用し、簡単に定義の変更が可能です。

定義ファイルをデフォルトで設定されている設定用のフォルダに保存することで、ワークフローのファイル変換の設定で、マッピングとして選択することができるようになりますので、こちらから設定したマッピング名称を選択します。

図 5 ファイル交換
図 5 ファイル交換

3.3.2.ASTERIA Warpの処理を実行

 ASTERIA Warpの処理実行の方法は「3.3.1流通BMSの受信からCSVデータの作成」で示したワークフローの最後で「プログラム呼び出し」として起動します。この処理はBiware EDI Stationのサーバーからコマンドラインを呼び出すものですが、curlコマンドを利用したbatファイルを作成し、ASTERIA WarpのURLトリガーをキックします。

単純にキックするだけのbatファイルであれば以下のようなものになります。

curl.exe http://localhost:21380/guest/EDIStation/request

 ※ curlコマンドでの実行はインターコム社の指定によるものです。

3.3.3.ASTERIA Warpでのデータベース保存

 起動されたASTERIA Warpはファイルからデータを読み込み、データベースに保存します。その処理内容は以下のフローにて実現しています。

図 6 データベースへの保存処理
図 6 データベースへの保存処理

 保存するテーブルは3種類に分かれているので、処理もそれぞれのテーブルについて書き込む内容になります。

図 7 マッピング情報
図 7 マッピング情報

 マッパーではBiware EDI Stationで生成されたCSVの項目をデータベースのそれぞれの項目にマッピング、保存しています。
多くの場合、流通BMSの全項目が埋まっていることは無く、処理や取引先によって異なります。この際に必要項目のみを取得、場合によっては加工してデータベースに格納します。

3.4.発注処理

 発注処理は受注処理と同様にインターネットを介した取引先に流通BMSを送信する処理の検証を行いました。順を追って示します。

3.4.1.データベースからの情報取得からCSVデータ作成

 ASTERIA Warpを使用しデータベース上の複数のテーブルに分割されて保存されている情報から発注するデータを取得、マージしてCSVファイルを作成します。

図 8 データ取得とCSV保存処理
図 8 データ取得とCSV保存処理

3.4.2.Biware EDI Stationの処理を実行

 Biware EDI Stationでの処理の実行方法は複数存在していますが、今回はRESTコンポーネントを使用し、Biware EDI StationのWeb APIを使用して呼び出しを行いました。
 API経由でBiware EDI Stationにアクセスする場合、API専用のアカウントを設定する必要があり、こちらをBiwareの管理画面より取得、RESTコンポーネントにセットします。

設定項目
コネクションを使用 いいえ
URL http://localhost:57680/default/schedule/run
認証>ユーザー名 Api
認証>パスワード Biware EDI Stationで自動生成された値
POSTパラメータ名前 scheduleAlias
POSTパラメータ値 Biware EDI Stationで設定した値

 起動した後は非同期で動作が進むため、ASTERIA Warpからはエラー情報のハンドリングができません。そこで、Biware EDI Stationの起動と共にログファイルに、起動時にBiware EDI StationからレスポンスされるジョブIDを取得し、ログ情報として出力しました。

図 9 ログ情報の生成
図 9 ログ情報の生成

3.4.3.CSVから流通BMS変換と送信

 CSVファイルから流通BMSへの変換および取引先への送信はBiware EDI Stationで行いました。以下がそのワークフローです。

図 10 CSVから流通BMS送信
図 10 CSVから流通BMS送信

CSVから流通BMSへの変換は受注処理の場合と同じくBiware EasyExchangeにて定義されたファイルを選択し、定義することで流通BMS形式のXMLデータを作成します。

以降の通信は通常のBiware EDI Station単体で利用する場合と同様に行われます。

4.まとめ


 今回の検証では流通BMSの基本形Ver.1.3に含まれる発注メッセージを例に、JX手順でのデータ送受信から社内システムとして見立てたデータベースとの連携を実証しました。
 実際の現場ではEDIの形式は様々で、社内システムはより複雑なものであったり、特定のパッケージ製品やクラウドサービスを利用している場合がほとんどと考えられます。
 この問題に対し、Biware EDI Station は、様々なEDI通信プロトコル(JX手順、ebXML、AS2、全銀手順、全銀TCP/IP手順、JCA手順)に対応し、また、様々なEDIデータ形式には、Biware EasyExchangeの設定情報の変更で対応することが可能です。複雑な社内システムやパッケージ、クラウドといった利用しているシステムに対してはASTERIA Warpのフローを利用して対応することが可能です。
 どちらの対応方法もGUIでの設定のみで対応することが可能で、プログラミングを一切必要としません。
 取引先が増加する場合や、社内でデータを利用したいシステムが増えた場合など、作りこまれたシステムを利用している場合には開発工数が発生しますが、Biware EDI Station、およびASTERIA Warpという製品を利用した疎結合で実現することで短期開発、トータルコストの削減および、将来のメンテナンス全てにおいて多くのメリットが発生します。

ASTERIA Warp

シェアNo.1データ連携ミドルウェア詳細資料をご希望の方はこちら

資料請求

30日間すべての機能をお試し!全員に書籍プレゼント中

無料トライアル

オンラインでご相談いただける無料の個別相談です。お気軽にご相談ください

オンライン相談

お見積もや製品導入についてご不明な点はお気軽にお問い合わせください

お問い合わせ

ASTERIA Warp 関連サイトのご紹介

X ASTERIA Warp Developer Network(ADN)サイト

技術情報をお探しの方

ASTERIA Warp Developer Network
(ADN)サイト

ASTERIA Warp製品の技術情報やTips、また情報交換の場として「ADNフォーラム」をご用意しています。

X ASTERIA Warpユーザーグループ(AUG)

ASTERIA Warpデベロッパーの方

ASTERIA Warp オンラインコミュニティ
ADN slack

ASTERIA Warpデベロッパー同士をつなげ、技術情報の共有やちょっとしたASTERIA Warpの疑問解決の場とすることを目的としたコミュニティです。

X ASTERIA Warpユーザーサイト

ASTERIA Warpユーザーの方

ASTERIA Warpユーザーサイト
Login

製品更新版や評価版のダウンロード、各種ドキュメントのご提供、また 技術的なお問合せもこちらで受付ています。

X ASTERIA Warpパートナーサイト

ASTERIA Warpパートナーの方

ASTERIA Warpパートナーサイト
Login

パートナーライセンスの発行や各種ドキュメントのご提供をしています。

ページ先頭へ