(57)【特許請求の範囲】
【請求項１】
プログラムされたコンピュータ処理により、電子取引データを、フォーマット変換処理を行ってネットワーク中継するＥＤＩシステムのフォーマット変換処理方法であって、
プログラムされたコンピュータ処理を実行する手段として、
受信処理手段と変換処理手段および送信処理手段を有し、
上記電子取引データは、階層構造からなり、
上記受信処理手段は電子取引データを受信し、
上記変換処理手段は、上記受信処理手段が受信した電子取引データのフォーマット変換処理を行い、
上記送信処理手段は、上記変換処理手段がフォーマット変換した電子取引データを送信し、
かつ、上記変換処理手段は、
上記受信処理手段が受信した電子取引データのフォーマット変換に伴うコード変換を含むデータ編集処理を行う際に、
当該データ内に、予め定められたデータ以外のデータが存在する場合は不正データ、存在しない場合に正常データとして検出し、
検出した不正なデータと共に、該不正データが属する階層以下の全てのデータを破棄し、
正常データのみを上記送信処理手段による送信の対象として出力する
ことを特徴とするＥＤＩシステムのフォーマット変換方法。
【請求項２】
請求項１に記載のＥＤＩシステムのフォーマット変換方法であって、
上記変換処理手段は、
上記正常データを一時的に記憶装置に蓄積し、
蓄積した正常データと同じ階層における他のデータの全てが正常であると検出した後、上記記憶装置に蓄積した正常データを上記送信処理手段による送信の対象として出力する
ことを特徴とするＥＤＩシステムのフォーマット変換方法。
【請求項３】
請求項１もしくは請求項２のいずれかに記載のＥＤＩシステムのフォーマット変換方法であって、
上記変換処理手段は、
上記検出した不正データを特定する一覧情報を生成して出力する
ことを特徴とするＥＤＩシステムのフォーマット変換方法。
【請求項４】
プログラムされたコンピュータ処理により、電子取引データを、フォーマット変換処理を行ってネットワーク中継するＥＤＩシステムのフォーマット変換装置であって、
プログラムされたコンピュータ処理を実行する手段として、
上記電子取引データを受信する受信処理手段と、該受信処理手段が受信した電子取引データのフォーマット変換処理を行う変換処理手段、および、該変換処理手段がフォーマット変換した電子取引データを送信する送信処理手段を有し、
上記電子取引データは、階層構造からなり、
上記変換処理手段は、
上記受信処理手段が受信した電子取引データのフォーマット変換に伴うコード変換を含むデータ編集処理を行う際に、
当該データ内に、予め定められたデータ以外のデータが存在する場合は不正データ、存在しない場合に正常データとして検出する手段と、
検出した不正なデータと共に、該不正データが属する階層以下の全データを破棄する手段と、
正常データのみを上記送信処理手段による送信の対象として出力する手段と
を有することを特徴とするＥＤＩシステムのフォーマット変換装置。
【請求項５】
請求項４に記載のＥＤＩシステムのフォーマット変換装置であって、
上記変換処理手段は、
上記正常データを一時的に記憶装置に蓄積し、
蓄積した正常データと同じ階層における他のデータの全てが正常であると検出した後、上記記憶装置に蓄積した正常データを上記送信処理手段による送信の対象として出力する手段
を有することを特徴とするＥＤＩシステムのフォーマット変換装置。
【請求項６】
請求項４もしくは請求項５のいずれかに記載のＥＤＩシステムのフォーマット変換装置であって、
上記変換処理手段は、
上記検出した不正データを特定する一覧情報を生成して出力する手段
を有することを特徴とするＥＤＩシステムのフォーマット変換装置。
【請求項７】
コンピュータを、請求項４から請求項６のいずれかに記載のＥＤＩシステムのフォーマット変換装置における各手段として機能させるためのプログラム。』
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＥＤＩ（Ｅｌｅｃｔｒｏｎｉｃ  Ｄａｔａ  Ｉｎｔｅｒｃｈａｎｇｅ）システム（電子データ変換システム）に係り、特に、ＥＤＩシステムにおける流通等の業務の効率化と信頼性の向上を図るのに好適な技術に関するものである。
【背景技術】
【０００２】
現在、ＥＤＩシステムでは、全ての企業間取引で共通の伝票データフォーマットを使用できるようにするために、「メッセージ種別」、「メッセージ構造」、「データ項目」と「データ項目の意味」および「データ属性」を標準化した標準ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）フォーマットへと共通化が行われている。
【０００３】
しかしながら、現状、例えば流通業のＥＤＩシステムにおいて使用されているデータフォーマットは、ＸＭＬ、固定長、ＣＳＶ（Ｃｏｍｍａ  Ｓｅｐａｒａｔｅｄ  Ｖａｌｕｅｓ）形式など、取引先により多種多様である。従って、流通ＥＤＩセンタでは、伝票データを取引先から受信し、他の取引先へと送信する際に、取引先毎に異なるフォーマットに変換する必要が生じている。
【０００４】
また、取引先毎に独自のコードを使用している場合やデータの表記形式が異なる場合も多く、必要に応じて適切なコード変換やデータ変換を行わなくてはならない。
【０００５】
以上により、特定の取引先、データフォーマットに限定しない汎用的な伝票データのフォーマット変換の仕組みが必要となる。
【０００６】
フォーマット変換システムにおいて、正しくデータ変換を行うには、変換前の電子取引データが正しいフォーマットであることが前提となる。しかしながら、取引先毎に独自のコードを使用している場合が存在する現状では、独自であるが故に、企業ごとの電子取引データ作成者のミスが発生する可能性があり、想定されないデータを設定した状態で電子取引データを作成する状況が存在しうる。
【０００７】
電子取引データの作成時点でのデータ不正の場合は、ＥＤＩセンタとしてデータを修正することはできず、取引先によるデータの修正の実施と、データの再送信が必要となり、電子取引データの取引先への到着に大幅な遅延が生じる。
【０００８】
例えば、特許文献１においては、電子データ変換システムにおけるフォーマット修正方法および修正フォーマットによるデータ変換の再実行のためのデータ変換方法の提供の技術の記載がある。この技術は、不正データ部分にフラグを立て、不正データ修正後に正常データを再利用することにより、データ変換の再実行に要する時間が短縮されるというものである。
【０００９】
しかし、流通ＥＤＩでは、伝票データが止まらずに流通することが最優先事項とされる要求があるため、正常データはできる限り留めないことが必要となる。上記技術で確かに不正データの修正および再実行の時間は短縮されるものの、一部の不正データの存在のために、正常データ部を含む電子取引データ全体が出力および送信されずに留まってしまい、業務が滞ってしまう。
【００１０】
これでは、上記流通ＥＤＩにおいて伝票データを流通させることが最優先事項であるという要請に対応することはできない。
【００１１】
【特許文献１】特開２００１−６０２４０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
解決しようとする問題点は、従来の技術では、例えば流通ＥＤＩにおいて伝票データを流通させることが最優先事項であるという要請に対応することはできない点である。すなわち、従来の技術では、不正データが存在することをデータ作成者に伝達し、また正常データを再利用することにより、デバックの効率化、時間の短縮は実現できるものの、不正データと共に本来正常であるデータも出力されず留まってしまうため、業務が滞ってしまう。
【００１３】
本発明の目的は、これら従来技術の課題を解決し、流通等のＥＤＩシステムにおける業務の効率化と信頼性の向上を図ることである。
【課題を解決するための手段】
【００１４】
上記目的を達成するため、本発明では、フォーマット変換処理中に不正データと正常データを切り離し、正常データ部分のみを出力する。これにより、有効な正常データは取引先へとリアルタイムで送信可能であり、不正データ部分のみを修正、再変換および再送信を行えばよく、流通ＥＤＩの業務効率化を実現することが可能である。
すなわち、本発明においては、フォーマット変換処理の実行時に、フォーマット変換後のデータを即座にファイル出力するのではなく、一時的に内部メモリに蓄積しておく。その際、内部メモリに蓄積するデータの範囲は、エラー時破棄の対象となる階層以下の範囲に限定し、入力ファイルの読み込みとメモリへの蓄積を繰り返し、蓄積した範囲のデータにそれ以上不正データが混在する可能性がなくなった時点でファイルへの出力を行う。以上により、伝票データの階層構造を崩すことなく、かつ、内部メモリを無駄に浪費することもなく正常データと不正データの切り分けが実現できる。
また、不正データが存在した場合は、メモリ上に蓄積された変換後のデータから、不正データ箇所を特定できる項目を抽出し、エラーリストファイルへ出力する。これにより、後からでも、不正データが存在するファイル上での位置を容易に特定することができる。
【発明の効果】
【００１５】
本発明によれば、流通業務上における不正なデータのみ、または、不正なデータを含む一定範囲のデータのみを除外して、正常なデータは通常通り出力すること、および不正なデータ箇所を特定する情報を提供することができ、伝票データの取引先への到着の遅延が即座に欠品や在庫余剰などの不利益の誘発を招く恐れのある流通ＥＤＩ業界の現実において、流通業務上使用可能な伝票データは出来る限りリアルタイムでの送信が可能であり、不正データ部分のみを修正、再変換および再送信を行えばよく、業務の効率化を実現し、信頼性の向上へとつながる。
【発明を実施するための最良の形態】
【００１６】
以下、図を用いて本発明を実施するための最良の形態例を説明する。図１は、本発明に係るフォーマット変換装置を設けたＥＤＩシステムの構成例を示すブロック図であり、図２は、図１における変換処理部の構成例を示すブロック図、図３は、図１における変換処理部による不正データ検知処理手順例を示す説明図、図４は、図１における変換処理部で取り扱うデータの階層構造例を示す説明図、図５は、図１における変換処理部による変換処理前後のデータの第１の階層構造例を示す説明図、図６は、図１における変換処理部による変換処理前後のデータの第２の階層構造例を示す説明図、図７は、図１における変換処理部の本発明に係るフォーマット変換処理手順例を示すフローチャートである。
【００１７】
図１におけるＥＤＩシステム（図中「ＥＤＩセンタ」と記載）１０３は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）や主メモリ、表示装置、入力装置、外部記憶装置からなるコンピュータ構成からなり、光ディスク駆動装置等を介してＣＤ−ＲＯＭ等の記憶媒体に記録されたプログラムやデータを外部記憶装置内にインストールした後、この外部記憶装置から主メモリに読み込みＣＰＵで処理することにより、データ受信処理部１０４と、本発明のフォーマット変換装置としての変換処理部１０５、データ送信処理部１０６、通信部（図中「通信」と記載）１０７の各処理部の機能を実行する。
【００１８】
本例のＥＤＩシステム１０３では、本発明のフォーマット変換装置としての変換処理部１０５により、電子取引データを、フォーマット変換処理を行う際、フォーマット変換対象の電子取引データにおける不正データの有無を検出し、不正データを検出した場合に、当該不正データを送信処理の対象から取り除き、不正データを取り除いた電子取引データを出力する。
【００１９】
尚、変換処理部１０５は、電子取引データのフォーマット変換に伴うコード変換を含むデータ編集処理を行う際に、当該データ内に、予め定められたデータ以外のデータが存在する場合に、不正なデータであると検出する。
【００２０】
また、電子取引データは、階層構造からなり、変換処理部１０５は、不正データと共に、この不正データの下位層にあるデータを、送信処理の対象から取り除く。
【００２１】
また、変換処理部１０５は、正常にフォーマット変換したデータ（正常データ）に関しては、一時的に記憶装置に蓄積しておき、蓄積した正常データと同じ階層における他のデータの全てが正常であると検出した後に、記憶装置に蓄積した正常データを変換後データとして出力する。
【００２２】
さらに、変換処理部１０５は、検出した不正データを特定する一覧情報（リスト）を生成して出力する。
【００２３】
以下、このような処理を行うＥＤＩシステム１０３の詳細を説明する。
【００２４】
図１に示すように、ＥＤＩシステム１０３と取引先（１）１０１のコンピュータ端末装置（図中「基幹システム等」と記載）１０１ａ、および、ＥＤＩシステム１０３と取引先（２）１０２のコンピュータ端末装置（図中「基幹システム等」と記載）１０２ａとは、それぞれの通信部（図中「通信」と記載）１０１ｂ，１０２ｂ，１０７を介して公衆回線等のネットワークにより接続され、互いに電子取引データの送受信を行う。
【００２５】
ＥＤＩシステム１０３は、通信部１０７およびデータ受信処理部１０４により、取引先（１）１０１のコンピュータ端末装置１０１ａより送信された電子取引データを受信し、変換処理部１０５により、取引先（２）１０２のコンピュータ端末装置１０２ａで使用されるフォーマットへと変換処理を行い、データ送信処理部１０６と通信部１０７により、取引先（２）１０２へと送信する。
【００２６】
その際、変換処理部１０５においては、取引先（１）１０１のコンピュータ端末装置１０１ａより受信した電子取引データに、想定外の不正データが混在しているか否かを検出し、混在している場合は、その不正データを特定する情報をエラーリスト１０８としてファイル等へ出力すると共に、不正データ箇所以外の電子取引データについては取引先（２）１０２のコンピュータ端末装置１０２ａへと送信する。
【００２７】
出力したエラーリスト１０８は、取引先（１）１０１に対して、ファクシミリや、コンピュータ端末装置１０１ａへの電子メール等の方法により通知する。このエラーリスト１０８を受信した取引先（１）１０１は、そのエラーリスト１０８に記載された不正データ箇所情報を基に、該当する不正データを修正し、修正データのみ、または、修正データを含む一定範囲のデータを、再び、コンピュータ端末装置１０１ａによりＥＤＩシステム１０３へと送信する。
【００２８】
コンピュータ端末装置１０１ａからの修正データを受信すると、ＥＤＩシステム１０３は、変換処理部１０５により、取引先（２）１０２で使用されるフォーマットへと変換処理を行い、取引先（２）１０２のコンピュータ端末装置１０２ａへと送信を行い、一連の電子取引データの中継処理を完了する。
【００２９】
このような、図１におけるＥＤＩシステム１０３におけるフォーマット変換処理の動作について、図２を用いてより詳細に説明する。
【００３０】
現在、流通業務上使用される電子取引データのファイル形式は、固定長形式（固定長伝票データファイル２１０ａ）、ＣＳＶ形式（ＣＳＶ伝票データファイル２１１ａ）、およびＸＭＬ形式（ＸＭＬ伝票データファイル２１２ａ）が存在し、取引先（１）１０１のコンピュータ端末装置１０１ａよりいずれのファイル形式の電子取引データを受信した場合でも、変換処理部１０５は、フォーマット変換処理部２００ａにより、それぞれに対応したフォーマット変換プログラムを用いて、共通に中間共通ＣＳＶデータファイル２０１へ変換を行い、この中間共通ＣＳＶデータファイル２０１の内容を中間共通ＣＳＶデータ用データベース２０２へ格納する。
【００３１】
そしてさらに、フォーマット変換処理部２００ｂにより、それぞれに対応したフォーマット変換プログラムを用いて、中間共通ＣＳＶデータファイル２０１を、取引先（２）１０２の使用するファイル形式、つまり、固定長形式（固定長伝票データファイル２１０ｂ）、ＣＳＶ形式（ＣＳＶ伝票データファイル２１１ｂ）、およびＸＭＬ形式（ＸＭＬ伝票データファイル２１２ｂ）のいずれかへ変換し、通信部１０７を介して、取引先（２）１０２のコンピュータ端末装置１０２ａに、フォーマット変換した電子取引データを送信する。
【００３２】
このフォーマット変換処理部２００ａ，２００ｂによるフォーマット変換処理中に、不正データの存在の有無の検出、および、検出した不正データを特定する情報の抽出を行い、エラーリストファイル２０３ａ，２０３ｂとして出力する。
【００３３】
以下、フォーマット変換処理部２００ａ，２００ｂにおける不正データの検出処理の概要について図３を用いて説明する。
【００３４】
図３に示すように、電子取引データの変換処理、すなわち、変換前フォーマットデータ３１１から変換後フォーマットデータ３１２への変換処理は、フォーマット変換プログラム３０３により、変換に使用する電子取引データのデータ階層構造を定義した階層定義パラメータファイル３０１の設定内容、および、電子取引データ内の各伝票項目データの変換前後の各々の対応関係やデータの編集手順などを定義したスキーマ定義パラメータファイル３０２の設定内容に従い行われる。
【００３５】
このフォーマット変換の際に、データのコード変換や数値表現形式の変換などのデータの編集が必要となる場合、流通業務上で必要なデータ編集機能を有したデータ編集モジュール３０４を適宜呼び出しながらフォーマット変換を実行する。
【００３６】
本例において、変換前の電子取引データに不正なデータが含まれていると判断する代表的な事例は、データのコード変換時に、想定外のコードが変換前電子取引データに含まれていた場合である。
【００３７】
データのコード変換は、データ編集モジュール３０４上で行われ、データ編集モジュール３０４は、予め設定されたコード変換表ファイル３０８の情報を基に、データのコード変換を実行するが、そのコード変換表ファイル３０８上に設定されていないコードが、変換前の電子取引データに存在する場合に、当該データが不正データであると判断し、不正データ存在通知３０５を、データ編集モジュール３０４の呼び出し元であるフォーマット変換プログラム３０３へと返す。
【００３８】
この不正データ存在通知３０５を受け取ったフォーマット変換プログラム３０３は、現在処理中のデータが不正データであるということを認識し、電子取引データからその不正データを特定するのに必要な伝票項目データを抽出し、不正データ特定情報３０６としてリスト化してエラーリストファイル３０７へ出力する。
【００３９】
次に、図４〜図６を用いて、ＥＤＩシステム１０３内の変換処理部１０５におけるフォーマット変換処理時に検出した不正データに対する階層単位でのスキップ処理について説明する。
【００４０】
まず、不正データ検出時のフォーマット変換処理のデータ階層単位でのスキップ処理を説明する前提として、電子取引データにおけるデータの階層構造の概念について図４を用いて説明する。
【００４１】
データ階層とは、あるデータとデータとの間に主従関係を持たせ、意味的に関連するデータ同士を集団化させたデータ構造形態である。通常、集団化されたデータは必要に応じて複数回出現することが許される。
【００４２】
流通業で使用される伝票データを例に説明すると、図４に示すように、伝票番号や取引先名などから構成された、取引先ごとに生成されるデータの集団である伝票ヘッダ階層４０１と、明細番号や商品名、単価などから構成された、商品ごとに生成されるデータの集団である伝票明細階層４０２とが存在するといえる。
【００４３】
基本的には、伝票ヘッダ階層４０１は複数回出現することが許され（「伝票ヘッダ階層１」、「伝票ヘッダ階層２」、…、「伝票ヘッダ階層Ｎ」）、また、同一の伝票ヘッダ階層４０１の下に伝票明細階層４０２が複数回出現する（「伝票明細階層１」、「伝票明細階層２」、…、「伝票明細階層Ｎ」）ことが許される。
【００４４】
ただし、伝票ヘッダ階層４０１が出現していないにも関わらず、伝票明細階層４０２が出現することは許されない。以上がデータの階層構造の基本概念である。
【００４５】
次に、図５および図６を用いて、スキップ処理および破棄するデータ階層の単位について説明する。
【００４６】
図５においては、データの破棄対象となる階層を「伝票明細階層」以下に設定し、符号５０６で示される「伝票明細階層４」に属する項目「欠品理由」のデータ５０７が不正な値であった場合の例を示している。
【００４７】
まず、「伝票ヘッダ階層１」５０１に属するデータ、および、この「伝票ヘッダ階層１」５０１に従ずる関係にある「伝票明細階層１」５０２、「伝票明細階層２」５０３に属するデータは、正常にフォーマット変換処理が行われ、「伝票ヘッダ階層１」５０９、および、それに従ずる「伝票明細階層１」５１０および「伝票明細階層２」５１１に属するデータとしてファイル出力される。
【００４８】
次に、「欠品理由データ」５０７が不正な値であった場合、「伝票明細階層４」５０８に属するデータ全てが業務上利用不能となるため、「伝票明細階層４」５０６自体は不要となる。
【００４９】
従って、「伝票ヘッダ階層２」５０４に属するデータ、および「伝票ヘッダ階層２」５０４に従ずる関係にある「伝票明細階層３」５０５に属するデータは、正常にフォーマット変換処理が行われファイル出力されるものの、「伝票明細階層４」５０６に属する全てのデータは変換後ファイルに出力されずに破棄される。
【００５０】
そして、「伝票ヘッダ階層３」５０８以降のデータが正常にフォーマット変換処理され、最終的に、「伝票明細階層４」５０６に属するデータを除く全てのフォーマット変換後データがファイル出力される。
【００５１】
一方、図６においては、データの破棄対象となる階層を、伝票ヘッダ階層以下に設定し、「伝票ヘッダ階層２」６０４に属する「納品区分データ」６０６が不正な値であった場合の例が示されている。
【００５２】
まず、「伝票ヘッダ階層１」６０１に属するデータ、および、この「伝票ヘッダ階層１」６０１に従ずる関係にある「伝票明細階層１」６０２、並びに、「伝票明細階層２」６０３に属するデータは、正常にフォーマット変換処理が行われ、「伝票ヘッダ階層１」６０９、およびそれに従ずる「伝票明細階層１」６１０、並びに、「伝票明細階層２」６１１に属するデータとしてファイル出力される。
【００５３】
これに対して、「納品区分データ」６０６が不正な値であると、「伝票ヘッダ階層２」６０４に属するデータの全てが業務上利用不能となるため、「伝票ヘッダ階層２」６０４自体が不要となり、それに従ずる「伝票明細階層３」６０６および「伝票明細階層４」６０７も併せて不要となる。
【００５４】
従って、「伝票ヘッダ階層２」６０４に属する全てのデータ、および、「伝票ヘッダ階層２」６０４に従ずる関係にある「伝票明細階層３」６０５および「伝票明細階層４」６０７に属する全てのデータが変換後ファイルに出力されずに破棄される。
【００５５】
そして、「伝票ヘッダ階層３」６０８以降のデータが正常にフォーマット変換処理され、最終的に、「伝票ヘッダ階層２」６０４に属するデータ、および、この「伝票ヘッダ階層２」６０４に従ずる関係にある「伝票明細階層３」６０５および「伝票明細階層４」６０７に属するデータを除く全てのフォーマット変換後データがファイル出力される。
【００５６】
尚、設定したデータの破棄対象階層よりも上位の階層で不正データが存在する場合は、フォーマット変換処理エラーとして、不正データが検出された時点でフォーマット変換処理自体を中止する。
【００５７】
例えば、図５において、データの破棄対象階層を伝票明細階層以下に設定し、それよりも上位の階層に位置する伝票ヘッダ階層に属する「納品区分データ」５１５が不正な値であった場合、その時点でフォーマット変換処理を中止し、「伝票ヘッダ階層２」５０４よりも後に出現するデータのフォーマット変換処理を実行せずに終了する。
【００５８】
以上のように、データ階層単位でのデータの破棄処理において、ある階層内でデータの不正が、単数または複数存在した場合は、その階層に属するデータおよびその階層に従ずる階層に属するデータを一体となって全て破棄することにより、データ構造の矛盾等の発生等を防ぎ、不正データ破棄後もデータ構造の有効性を保つことができる。
【００５９】
次に、図７を用いて、このような不正データ検出時のフォーマット変換処理のデータ階層単位でのスキップ処理および破棄処理について説明する。
【００６０】
まず、変換前データから１行分のデータを読み込み（ステップＳ７０１）、読み込んだデータが、ユーザによって指定された不正データ破棄対象階層より下の階層に位置するデータであるか否かを判別する（ステップＳ７０２）。
【００６１】
不正データ破棄対象階層より下の階層に位置するデータであれば、ステップＳ７０３の処理に移り、不正データ破棄対象の階層以上の階層に位置するデータであった場合は、ステップＳ７０８の処理に移る。ここで、使用される階層の概念は、階層定義パラメータファイルに設定された内容を元に判断される。
【００６２】
ステップＳ７０３においては、階層定義パラメータファイルおよびスキーマ定義パラメータファイルに設定された内容を元に、変換前データに対するフォーマット変換処理を行う。そして、データの値の編集が必要な場合は、スキーマ定義パラメータファイルの設定内容に従いデータ編集処理を行う（ステップＳ７０４）。
【００６３】
このデータ編集処理中に不正データが検出されたか否かを判定し（ステップＳ７０５）、不正データが検出されなければ、変換後のデータを変換後データ格納用の内部メモリ（キャッシュメモリやメインメモリ等、ＣＰＵから直接アクセス可能な記憶装置）へ書き込む（ステップＳ７０６）。
【００６４】
尚、このステップＳ７０６の処理では、ファイルへの出力は行わない。なぜなら、このステップＳ７０６の処理の時点では、まだ現在処理中の階層内に不正データが混在しないということが確定しておらず、この処理の時点で変換前データファイル１行毎の単位でデータのファイル出力を行ってしまうと、後から同一階層の不正データが出現し、処理中の階層自体のデータファイル出力が全て不要となった場合にも、すでにデータがファイル出力されてしまっている状態となるからである。
【００６５】
従って、変換後のデータを実際にファイル出力する時点は、ステップＳ７０２での判定処理において、ステップＳ７０１の処理で読み込んだ変換前データの１行がユーザ指定の破棄対象階層と同じ階層かまたは、それよりも上の階層に位置するデータであった場合、すなわち、ステップＳ７０８の処理での段階となる。
【００６６】
ステップＳ７０５の処理において不正データが検出された場合は、変換後データの内容から、不正データの箇所を特定するために必要となるデータを取得する（ステップＳ７１０）。尚、不正データの箇所を特定するために必要となるデータは、予めＥＤＩセンタと取引先間で決定しておき、その決定されたデータを変換後データから取得する。
【００６７】
ステップＳ７１０の処理で取得した不正データ特定情報を、エラーリストファイルへ出力する（ステップＳ７１１）。そして、エラーリスト出力が行われた不正データを含む変換後データを、破棄する（ステップＳ７１２）。すなわち、不正データを含む変換後データに関しては、ステップＳ７０６での処理のように、変換後データ格納用の内部メモリへのデータ書き込みもファイル出力も行わない。
【００６８】
ステップＳ７１２において変換後データを破棄した後、もしくは、ステップＳ７０６において変換後データを内部メモリに蓄積した後、未処理変換前のデータの存在確認を行い（ステップＳ７０７）、まだ存在する場合は、再び、ステップＳ７０１の処理に移行し、変換前の次の１行を読み込み、存在しない場合には、そのまま一連のフォーマット変換処理を終了する。
【００６９】
ステップＳ７０８においては、変換後データの格納用の内部メモリの内容を全てファイル出力し、その後、ステップＳ７０８において、その変換後データ格納用の内部メモリの内容を削除する。
【００７０】
以上、図１〜図７を用いて説明したように、本例では、ＥＤＩシステムのフォーマット変換処理において、不正データと正常データを切り離し、正常データ部分のみを出力する。これにより、有効な正常データは取引先へとリアルタイムで送信可能であり、不正データ部分のみを修正、再変換および再送信を行えばよく、流通ＥＤＩの業務効率化を実現することが可能である。
【００７１】
より具体的には、フォーマット変換処理の実行時に、フォーマット変換後のデータを即座にファイル出力するのではなく、一時的に内部メモリに蓄積しておく。その際、内部メモリに蓄積するデータの範囲は、エラー時破棄の対象となる階層以下の範囲に限定し、入力ファイルの読み込みとメモリへの蓄積を繰り返し、蓄積した範囲のデータにそれ以上不正データが混在する可能性がなくなった時点でファイルへの出力を行う。これにより、伝票データの階層構造を崩すことなく、かつ、内部メモリを無駄に浪費することもなく正常データと不正データの切り分けが実現できる。また、不正データが存在した場合は、メモリ上に蓄積された変換後のデータから、不正データ箇所を特定できる項目を抽出し、エラーリストファイルへ出力する。これにより、後からでも、不正データが存在するファイル上での位置を容易に特定することができる。
【００７２】
このように、本例によれば、流通業務上不正なデータのみ、または、不正なデータを含む一定範囲のデータを除外して、正常なデータは通常通り出力すること、および不正なデータ箇所を特定する情報を提供することにより、伝票データの取引先への到着の遅延が即座に欠品や在庫余剰などの不利益の誘発を招く恐れのある流通ＥＤＩ業界の現実において、流通業務上使用可能な伝票データは出来る限りリアルタイムでの送信が可能であり、不正データ部分のみを修正、再変換および再送信を行えばよく、業務の効率化を実現し、信頼性の向上へとつながる。
【００７３】
尚、本発明は、図１〜図７を用いて説明した例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えば、本例では、流通業の伝票情報を持つ電子取引データのフォーマット変換処理を行うＥＤＩシステムを例として説明したが、他の業種での電子取引データのフォーマット変換処理を行うＥＤＩシステムであっても良い。
【００７４】
また、本例のコンピュータ構成例に関しても、キーボードや光ディスクの駆動装置の無いコンピュータ構成としても良い。また、本例では、光ディスクを記録媒体として用いているが、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ）等を記録媒体として用いることでも良い。また、プログラムのインストールに関しても、通信装置を介してネットワーク経由でプログラムをダウンロードしてインストールすることでも良い。
【図面の簡単な説明】
【００７５】
【図１】本発明に係るフォーマット変換装置を設けたＥＤＩシステムの構成例を示すブロック図である。
【図２】図１における変換処理部の構成例を示すブロック図である。
【図３】図１における変換処理部による不正データ検知処理手順例を示す説明図である。
【図４】図１における変換処理部で取り扱うデータの階層構造例を示す説明図である。
【図５】図１における変換処理部による変換処理前後のデータの第１の階層構造例を示す説明図である。
【図６】図１における変換処理部による変換処理前後のデータの第２の階層構造例を示す説明図である。
【図７】図１における変換処理部の本発明に係るフォーマット変換処理手順例を示すフローチャートである。
【符号の説明】
【００７６】
１０１：取引先（１）、１０１ａ，１０２ａ：。
１０１ｂ，１０２ｂ：通信部、
１０３：ＥＤＩシステム、１０４：データ受信処理部、１０５：変換処理部（フォーマット変換装置）、１０６：データ送信処理部、１０７：通信部、１０８：エラーリスト、２００ａ，２００ｂ：フォーマット変換処理部、２０１：中間共通ＣＳＶデータファイル、２０２：中間共通ＣＳＶデータ用データベース、２０３ａ，２０３ｂ：エラーリストファイル、２１０ａ，２１０ｂ：固定長伝票データファイル、２１１ａ，２１１ｂ：ＣＳＶ伝票データファイル、２１２ａ，２１２ｂ：ＸＭＬ伝票データファイル、３０１：階層定義パラメータファイル、３０２：スキーマ定義パラメータファイル、３０３：フォーマット変換プログラム、３０４：データ編集モジュール、３０５：不正データ存在通知、３０６：不正データ特定情報、３０７：エラーリスト、３０８：コード変換表ファイル、３１１：変換前フォーマットデータ、３１２：正常に変換された変換後フォーマットデータ、４０１：伝票ヘッダ階層（１）〜（Ｎ）、４０２：伝票明細階層（１）〜（Ｎ）、５０１：伝票ヘッダ階層（１）、５０２：伝票明細階層（１）、５０３：伝票明細階層（２）、５０４：伝票ヘッダ階層（２）、５０５：伝票明細階層（３）、５０６：伝票明細階層（４）、５０７：欠品理由（不正データ）、５０８：伝票ヘッダ階層（３）、５０９：伝票ヘッダ階層（１）、５１０：伝票明細階層（１）、５１１：伝票明細階層（２）、５１２：伝票ヘッダ階層（２）、５１３：伝票明細階層（３）、５１４：伝票ヘッダ階層（３）、６０１：伝票ヘッダ階層（１）、６０２：伝票明細階層（１）、６０３：伝票明細階層（２）、６０４：伝票ヘッダ階層（２）、６０５：伝票明細階層（３）、６０６：納品区分（不正データ）、６０７：伝票明細階層（４）、６０８：伝票ヘッダ階層（３）、６０９：伝票ヘッダ階層（１）、６１０：伝票明細階層（１）、６１１：伝票明細階層（２）、６１２：伝票ヘッダ階層（３）。
【図１】
0004738429.tif 000002
【図２】
0004738429.tif 000003
【図３】
0004738429.tif 000004
【図４】
0004738429.tif 000005
【図５】
0004738429.tif 000006
【図６】
0004738429.tif 000007
【図７】
0004738429.tif 000008