JP2001092711A - Edifactデータ及びユーザデータ間の変換方法およびこの方法をコンピュータに実行させるためのプログラムを記録した記録媒体 - Google Patents
Edifactデータ及びユーザデータ間の変換方法およびこの方法をコンピュータに実行させるためのプログラムを記録した記録媒体Info
- Publication number
- JP2001092711A JP2001092711A JP26710599A JP26710599A JP2001092711A JP 2001092711 A JP2001092711 A JP 2001092711A JP 26710599 A JP26710599 A JP 26710599A JP 26710599 A JP26710599 A JP 26710599A JP 2001092711 A JP2001092711 A JP 2001092711A
- Authority
- JP
- Japan
- Prior art keywords
- data
- edifact
- storage device
- hierarchical structure
- user data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 119
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 66
- 238000012545 processing Methods 0.000 claims abstract description 84
- 238000013507 mapping Methods 0.000 claims abstract description 51
- 230000008569 process Effects 0.000 description 53
- 238000010586 diagram Methods 0.000 description 21
- 238000004891 communication Methods 0.000 description 16
- 239000002131 composite material Substances 0.000 description 15
- XWVFVITVPYKIMH-UHFFFAOYSA-N ethyl n-[4-[benzyl(2-phenylethyl)amino]-2-(2-fluorophenyl)-1h-imidazo[4,5-c]pyridin-6-yl]carbamate Chemical compound N=1C(NC(=O)OCC)=CC=2NC(C=3C(=CC=CC=3)F)=NC=2C=1N(CC=1C=CC=CC=1)CCC1=CC=CC=C1 XWVFVITVPYKIMH-UHFFFAOYSA-N 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 4
- 230000002452 interceptive effect Effects 0.000 description 3
- ZUXNHFFVQWADJL-UHFFFAOYSA-N 3,4,5-trimethoxy-n-(2-methoxyethyl)-n-(4-phenyl-1,3-thiazol-2-yl)benzamide Chemical compound N=1C(C=2C=CC=CC=2)=CSC=1N(CCOC)C(=O)C1=CC(OC)=C(OC)C(OC)=C1 ZUXNHFFVQWADJL-UHFFFAOYSA-N 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- 238000002910 structure generation Methods 0.000 description 2
- 102100031584 Cell division cycle-associated 7-like protein Human genes 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 101000777638 Homo sapiens Cell division cycle-associated 7-like protein Proteins 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
(57)【要約】
【課題】 種々の業務システムに柔軟に適用できるED
IFACTデータ及びユーザデータ間の変換方法を提供
する。 【解決手段】 処理記述言語で記述された命令に従っ
て、EDIFACTデータと所定のユーザデータとの間
の変換を実行する。この方法では、EDIFACTデー
タ構造を写像したオブジェクト階層構造を生成した後、
このオブジェクト階層構造に含まれる一以上のオブジェ
クトからデータを取り出し、EDIFACTデータ又は
ユーザデータを生成する。オブジェクト・インタフェー
スを用いることで各オブジェクトに容易にアクセスで
き、中間データを介さずにEDIFACTデータとユー
ザデータとの変換を行うことができる。この結果、本発
明は、種々の業務システムに柔軟に適用することができ
る。
IFACTデータ及びユーザデータ間の変換方法を提供
する。 【解決手段】 処理記述言語で記述された命令に従っ
て、EDIFACTデータと所定のユーザデータとの間
の変換を実行する。この方法では、EDIFACTデー
タ構造を写像したオブジェクト階層構造を生成した後、
このオブジェクト階層構造に含まれる一以上のオブジェ
クトからデータを取り出し、EDIFACTデータ又は
ユーザデータを生成する。オブジェクト・インタフェー
スを用いることで各オブジェクトに容易にアクセスで
き、中間データを介さずにEDIFACTデータとユー
ザデータとの変換を行うことができる。この結果、本発
明は、種々の業務システムに柔軟に適用することができ
る。
Description
【0001】
【発明の属する技術分野】本発明は、電子データ交換
(EDI)で扱われるEDIFACTデータと固有のユ
ーザデータとの間の変換に関する。
(EDI)で扱われるEDIFACTデータと固有のユ
ーザデータとの間の変換に関する。
【0002】
【従来の技術】近年、企業間の商取引を電子的方法で行
う電子商取引が急速に普及している。電子商取引の普及
に伴い、異企業間の商取引情報(例えば、商品の発注日
や発注数)を電子的に交換するEDI(Electronic Dat
a Interchange:電子データ交換)も広く行われるよう
になってきた。
う電子商取引が急速に普及している。電子商取引の普及
に伴い、異企業間の商取引情報(例えば、商品の発注日
や発注数)を電子的に交換するEDI(Electronic Dat
a Interchange:電子データ交換)も広く行われるよう
になってきた。
【0003】コンピュータ間で電子情報を交換するED
Iでは、双方のコンピュータが間違いなくデータを交換
できるように、共通のルールを定めておく必要がある。
そして、世界全体で標準化された共通のEDIルールを
使用することで、国際的な電子商取引を容易に行えるよ
うになる。このような国際標準EDIルールとして、E
DIFACTがある。EDIFACTでは、シンタック
ス・ルールや各種の標準ディレクトリなどが定められて
いる。
Iでは、双方のコンピュータが間違いなくデータを交換
できるように、共通のルールを定めておく必要がある。
そして、世界全体で標準化された共通のEDIルールを
使用することで、国際的な電子商取引を容易に行えるよ
うになる。このような国際標準EDIルールとして、E
DIFACTがある。EDIFACTでは、シンタック
ス・ルールや各種の標準ディレクトリなどが定められて
いる。
【0004】企業内の業務処理システムでは、その企業
で独自に定義しているフォーマットのファイルを用いて
処理が実行される。これらのファイルは、EDIFAC
Tデータとは構成が異なっている。そこで、EDIの相
手先企業に電子データを送るときは、社内形式のデータ
(ユーザデータ)をEDIFACT形式に変換する必要
がある。逆に、EDIFACT形式で送られてきた電子
データを社内システムで使う場合には、EDIFACT
形式のデータをユーザデータに変換することが必要であ
る。
で独自に定義しているフォーマットのファイルを用いて
処理が実行される。これらのファイルは、EDIFAC
Tデータとは構成が異なっている。そこで、EDIの相
手先企業に電子データを送るときは、社内形式のデータ
(ユーザデータ)をEDIFACT形式に変換する必要
がある。逆に、EDIFACT形式で送られてきた電子
データを社内システムで使う場合には、EDIFACT
形式のデータをユーザデータに変換することが必要であ
る。
【0005】ユーザデータ−EDIFACTデータ間の
変換を行うために、一般にマッピングと呼ばれる手法が
用いられている。マッピングとは、EDIFACTデー
タ及びユーザデータの各項目間に対応関係を与える作業
である。マッピング作業によって、EDIFACTデー
タ及びユーザデータの項目間の対応関係を記述したマッ
ピング・パラメータが作成される。こうして作成された
マッピング・パラメータを用いて変換作業を行うソフト
ウェアはトランスレータと呼ばれる。つまり、トランス
レータは、マッピング・パラメータに従って、EDIF
ACTデータからユーザデータへの変換、またはその逆
の変換を行う。
変換を行うために、一般にマッピングと呼ばれる手法が
用いられている。マッピングとは、EDIFACTデー
タ及びユーザデータの各項目間に対応関係を与える作業
である。マッピング作業によって、EDIFACTデー
タ及びユーザデータの項目間の対応関係を記述したマッ
ピング・パラメータが作成される。こうして作成された
マッピング・パラメータを用いて変換作業を行うソフト
ウェアはトランスレータと呼ばれる。つまり、トランス
レータは、マッピング・パラメータに従って、EDIF
ACTデータからユーザデータへの変換、またはその逆
の変換を行う。
【0006】図18は、EDIFACTデータを利用す
る従来の業務システムの一例を示す概略図である。この
業務システム102は、業務アプリケーション50から
利用可能な業務データベース40を含んでいる。このデ
ータベース40には、商品の発注数や納品日など、業務
で使用される種々のデータが蓄積される。業務システム
102は通信システム30も備えている。業務システム
102は、この通信システム30を使用することによ
り、外部のコンピュータや通信ネットワーク(インター
ネットやデータ交換網等)と接続することができる。
る従来の業務システムの一例を示す概略図である。この
業務システム102は、業務アプリケーション50から
利用可能な業務データベース40を含んでいる。このデ
ータベース40には、商品の発注数や納品日など、業務
で使用される種々のデータが蓄積される。業務システム
102は通信システム30も備えている。業務システム
102は、この通信システム30を使用することによ
り、外部のコンピュータや通信ネットワーク(インター
ネットやデータ交換網等)と接続することができる。
【0007】業務システム102では、市販のトランス
レータ60を用いてユーザファイル70とEDIFAC
Tファイル20との間で相互に変換を行う。ユーザファ
イルの形式は、トランスレータ60によってあらかじめ
決定されてしまう。このユーザファイル70の形式は、
多くの場合、社内業務で使用される固有のデータ形式と
互換性を持たない。そこで、通常は、ユーザファイル7
0の形式を社内業務用のデータ形式に変換する変換プロ
グラム80が用意される。
レータ60を用いてユーザファイル70とEDIFAC
Tファイル20との間で相互に変換を行う。ユーザファ
イルの形式は、トランスレータ60によってあらかじめ
決定されてしまう。このユーザファイル70の形式は、
多くの場合、社内業務で使用される固有のデータ形式と
互換性を持たない。そこで、通常は、ユーザファイル7
0の形式を社内業務用のデータ形式に変換する変換プロ
グラム80が用意される。
【0008】まず、通信システム30を介してEDIF
ACT形式のファイル20を取引相手の業務システムか
ら受信した場合を考える。この場合、トランスレータ6
0は、作成済のマッピング・パラメータ62を参照し
て、EDIFACTファイル20を所定の形式のユーザ
ファイル70に変換する。このユーザファイル70は更
に、変換プログラム80によって、業務データベース4
0に対応した業務データの各項目(商品の発注数や納品
日など)に変換され、その後、業務データベース40に
格納される。
ACT形式のファイル20を取引相手の業務システムか
ら受信した場合を考える。この場合、トランスレータ6
0は、作成済のマッピング・パラメータ62を参照し
て、EDIFACTファイル20を所定の形式のユーザ
ファイル70に変換する。このユーザファイル70は更
に、変換プログラム80によって、業務データベース4
0に対応した業務データの各項目(商品の発注数や納品
日など)に変換され、その後、業務データベース40に
格納される。
【0009】逆に、業務データベース40中の業務デー
タをEDIFACT形式のファイルとして外部に出力す
る場合は、まず業務データベース40から取り出された
業務データの各項目が、変換プログラムによってユーザ
ファイル70の形式に従って変換され、ユーザファイル
70に出力される。この後、このユーザファイル70が
トランスレータ60によってEDIFACTファイル2
0に変換される。このEDIFACTファイル20は、
通信システム30を介して取引先の業務システムへ転送
される。
タをEDIFACT形式のファイルとして外部に出力す
る場合は、まず業務データベース40から取り出された
業務データの各項目が、変換プログラムによってユーザ
ファイル70の形式に従って変換され、ユーザファイル
70に出力される。この後、このユーザファイル70が
トランスレータ60によってEDIFACTファイル2
0に変換される。このEDIFACTファイル20は、
通信システム30を介して取引先の業務システムへ転送
される。
【0010】
【発明が解決しようとする課題】しかしながら、EDI
FACTの普及により適用業務範囲が拡大するにつれ、
従来技術では、ユーザの要求に対応しきれない場面が出
てきた。また、EDIFACT自体の発展に伴って、マ
ッピング手法そのものに限界が見えるようになった。
FACTの普及により適用業務範囲が拡大するにつれ、
従来技術では、ユーザの要求に対応しきれない場面が出
てきた。また、EDIFACT自体の発展に伴って、マ
ッピング手法そのものに限界が見えるようになった。
【0011】例えば、図18のように業務データをデー
タベースとして持つ業務システムが増えているが、従来
のマッピング技術では、各種データベース製品の全てに
対応することは困難である。このように、トランスレー
タが変換対象とするユーザデータのファイル形式は限定
されており、ユーザデータに対して提供されるデータ編
集機能にも大なり小なり制限がある。したがって、既存
業務処理や業務データをトランスレータに合わせて再構
築する必要が生じる。例えば、上述のように、トランス
レータを用いたEDIFACTファイル及びユーザファ
イル間の変換に加えて、変換プログラムを用いたユーザ
ファイル及び業務データ間の変換を更に行うことが必要
になる。つまり、EDIFACTデータと業務データ
(これもユーザデータと言うことができる)との間で変
換を行うために、中間的なデータを介在させる必要があ
るのである。
タベースとして持つ業務システムが増えているが、従来
のマッピング技術では、各種データベース製品の全てに
対応することは困難である。このように、トランスレー
タが変換対象とするユーザデータのファイル形式は限定
されており、ユーザデータに対して提供されるデータ編
集機能にも大なり小なり制限がある。したがって、既存
業務処理や業務データをトランスレータに合わせて再構
築する必要が生じる。例えば、上述のように、トランス
レータを用いたEDIFACTファイル及びユーザファ
イル間の変換に加えて、変換プログラムを用いたユーザ
ファイル及び業務データ間の変換を更に行うことが必要
になる。つまり、EDIFACTデータと業務データ
(これもユーザデータと言うことができる)との間で変
換を行うために、中間的なデータを介在させる必要があ
るのである。
【0012】この従来方法で使用される中間的なユーザ
ファイルは、変換プログラムが作成及び読み取りし易く
するためや、トランスレータがマッピングし易くする必
要があることから、単純な構造を持った形式とせざるを
得ない。具体的には、二次元表形式や、固定部および繰
返し部分を持つ固定長レコード形式等が採用されてい
る。しかしながら、中間ユーザファイルを単純な形式と
することは、複雑な階層と繰り返し構造を持つEDIF
ACTデータを、単純な構造に写像表現しなければなら
ないという困難な問題を生む。変換プログラムにおいて
もまた、業務データベース内で複雑な関係によって表現
されている業務データを単純な中間ユーザファイル構造
に写像表現しなくてはならない。中間ユーザファイルの
データ表現を設計する際には、これら二つの問題両方を
ともに解決することが必要となる。近年までの電子デー
タ交換では、比較的単純なEDIFACTデータ構造を
用いてきたため、単純な形式のユーザファイルを中間に
介在させる従来の変換方法であっても実用上特に大きな
問題は生じて来なかった。しかし、現在複雑で、しかも
将来にわたって複雑性を増すEDIFACTデータ構造
を考えるとき、従来方式では対応できない問題が発生す
る可能性が高い。
ファイルは、変換プログラムが作成及び読み取りし易く
するためや、トランスレータがマッピングし易くする必
要があることから、単純な構造を持った形式とせざるを
得ない。具体的には、二次元表形式や、固定部および繰
返し部分を持つ固定長レコード形式等が採用されてい
る。しかしながら、中間ユーザファイルを単純な形式と
することは、複雑な階層と繰り返し構造を持つEDIF
ACTデータを、単純な構造に写像表現しなければなら
ないという困難な問題を生む。変換プログラムにおいて
もまた、業務データベース内で複雑な関係によって表現
されている業務データを単純な中間ユーザファイル構造
に写像表現しなくてはならない。中間ユーザファイルの
データ表現を設計する際には、これら二つの問題両方を
ともに解決することが必要となる。近年までの電子デー
タ交換では、比較的単純なEDIFACTデータ構造を
用いてきたため、単純な形式のユーザファイルを中間に
介在させる従来の変換方法であっても実用上特に大きな
問題は生じて来なかった。しかし、現在複雑で、しかも
将来にわたって複雑性を増すEDIFACTデータ構造
を考えるとき、従来方式では対応できない問題が発生す
る可能性が高い。
【0013】このような事情から、複雑なデータ構造を
もつEDIFACTデータと複雑で任意の形式をもつ業
務データベース内の業務データとの変換において種々の
マッピングに対しても柔軟に対応可能な技術が要望され
ている。
もつEDIFACTデータと複雑で任意の形式をもつ業
務データベース内の業務データとの変換において種々の
マッピングに対しても柔軟に対応可能な技術が要望され
ている。
【0014】そこで、本発明は、単純形式を持たざるを
得ない中間データを介さずに、複雑なEDIFACTデ
ータと最終的なユーザデータ(例えば、上記例における
業務データ)を直接的にマッピング可能な変換方法なら
びにこのような変換方法をコンピュータに実行させるた
めのプログラムが記録された情報記録媒体を提供するこ
とを課題とする。
得ない中間データを介さずに、複雑なEDIFACTデ
ータと最終的なユーザデータ(例えば、上記例における
業務データ)を直接的にマッピング可能な変換方法なら
びにこのような変換方法をコンピュータに実行させるた
めのプログラムが記録された情報記録媒体を提供するこ
とを課題とする。
【0015】
【課題を解決するための手段】本発明のある態様では、
異なる複雑な構造を持つEDIFACTデータ及びユー
ザデータ間のマッピングを処理記述言語(論理を記述可
能なプログラム言語)で記述する。処理記述言語を用い
ることで、例えば業務データベースに対するアクセスで
は、既存技術や市販製品によるデータベースアクセス技
術を利用できるようになり、このことで任意のデータベ
ース製品に適合することが可能となる。ここで、EDI
FACTデータの複雑な構造に処理記述言語からアクセ
スする手段が必要となる。本発明は、EDIFACTデ
ータ構造を写像したオブジェクト階層構造を生成し、イ
ンタフェースとして公開されたメソッドをオブジェクト
に含めることによって、上記のようなアクセス手段を提
供している。
異なる複雑な構造を持つEDIFACTデータ及びユー
ザデータ間のマッピングを処理記述言語(論理を記述可
能なプログラム言語)で記述する。処理記述言語を用い
ることで、例えば業務データベースに対するアクセスで
は、既存技術や市販製品によるデータベースアクセス技
術を利用できるようになり、このことで任意のデータベ
ース製品に適合することが可能となる。ここで、EDI
FACTデータの複雑な構造に処理記述言語からアクセ
スする手段が必要となる。本発明は、EDIFACTデ
ータ構造を写像したオブジェクト階層構造を生成し、イ
ンタフェースとして公開されたメソッドをオブジェクト
に含めることによって、上記のようなアクセス手段を提
供している。
【0016】より具体的に述べると、本発明に係るED
IFACTデータと所定のユーザデータとの変換方法の
一態様は、処理記述言語で記述された命令に従って、E
DIFACTデータ構造を写像したオブジェクト階層構
造を生成するステップと、このオブジェクト階層構造を
第1の記憶装置に格納するステップと、処理記述言語で
記述された命令に従って、前記オブジェクト階層構造に
含まれる一以上のオブジェクトからデータを取り出し、
EDIFACTデータ又はユーザデータを生成するステ
ップと、生成されたEDIFACTデータ又はユーザデ
ータを第2の記憶装置に格納するステップと、を備えて
いる。データが取り出される前記オブジェクトは、イン
タフェースとして公開されたメソッドを含んでいる。こ
のメソッドは、処理記述言語で記述された命令によって
呼び出され、オブジェクト内のデータへのアクセスを可
能にする。なお、第1および第2の記憶装置は、同一の
記憶装置であってもよいし、別個の記憶装置であっても
よい。
IFACTデータと所定のユーザデータとの変換方法の
一態様は、処理記述言語で記述された命令に従って、E
DIFACTデータ構造を写像したオブジェクト階層構
造を生成するステップと、このオブジェクト階層構造を
第1の記憶装置に格納するステップと、処理記述言語で
記述された命令に従って、前記オブジェクト階層構造に
含まれる一以上のオブジェクトからデータを取り出し、
EDIFACTデータ又はユーザデータを生成するステ
ップと、生成されたEDIFACTデータ又はユーザデ
ータを第2の記憶装置に格納するステップと、を備えて
いる。データが取り出される前記オブジェクトは、イン
タフェースとして公開されたメソッドを含んでいる。こ
のメソッドは、処理記述言語で記述された命令によって
呼び出され、オブジェクト内のデータへのアクセスを可
能にする。なお、第1および第2の記憶装置は、同一の
記憶装置であってもよいし、別個の記憶装置であっても
よい。
【0017】また、本発明に係るコンピュータ読取り可
能な記録媒体の一態様には、EDIFACTデータと所
定のユーザデータとの間の変換をコンピュータに実行さ
せるためのプログラムが記録されている。この前記プロ
グラムは、処理記述言語で記述された命令に従って、E
DIFACTデータ構造を写像したオブジェクト階層構
造を生成するステップと、オブジェクト階層構造を第1
の記憶装置に格納するステップと、処理記述言語で記述
された命令に従って、オブジェクト階層構造に含まれる
一以上のオブジェクトからデータを取り出し、EDIF
ACTデータ又はユーザデータを生成するステップと、
生成された前記EDIFACTデータ又はユーザデータ
を第2の記憶装置に格納するステップと、をコンピュー
タに実行させる。データが取り出される前記オブジェク
トは、インタフェースとして公開されたメソッドを含ん
でいる。
能な記録媒体の一態様には、EDIFACTデータと所
定のユーザデータとの間の変換をコンピュータに実行さ
せるためのプログラムが記録されている。この前記プロ
グラムは、処理記述言語で記述された命令に従って、E
DIFACTデータ構造を写像したオブジェクト階層構
造を生成するステップと、オブジェクト階層構造を第1
の記憶装置に格納するステップと、処理記述言語で記述
された命令に従って、オブジェクト階層構造に含まれる
一以上のオブジェクトからデータを取り出し、EDIF
ACTデータ又はユーザデータを生成するステップと、
生成された前記EDIFACTデータ又はユーザデータ
を第2の記憶装置に格納するステップと、をコンピュー
タに実行させる。データが取り出される前記オブジェク
トは、インタフェースとして公開されたメソッドを含ん
でいる。
【0018】また、本発明に係るコンピュータ読取り可
能な記録媒体の別の態様に記録されたプログラムは、第
1の記憶装置に記憶されたEDIFACTデータをユー
ザデータに変換する場合に、第1記憶装置からEDIF
ACTデータを読み取るステップと、処理記述言語で記
述された命令に従って、EDIFACTデータの構造を
写像したオブジェクト階層構造を生成するステップと、
このオブジェクト階層構造を第2の記憶装置に格納する
ステップと、処理記述言語で記述された命令に従って、
オブジェクト階層構造に含まれる一以上のオブジェクト
からデータを取り出し、ユーザデータを生成するステッ
プと、生成された前記ユーザデータを第3の記憶装置に
格納するステップと、を前記コンピュータに実行させ
る。ここで、データが取り出される前記オブジェクト
は、インタフェースとして公開されたメソッドを含んで
いる。第1〜第3の記憶装置は、同一の記憶装置であっ
てもよいし、別個の記憶装置であってもよい。このプロ
グラムは、第4の記憶装置に記憶されたユーザデータを
EDIFACTデータに変換する場合には、第4記憶装
置からユーザデータを読み取るステップと、前記ユーザ
データが登録されたオブジェクトを含み、EDIFAC
Tデータ構造を写像したオブジェクト階層構造を処理記
述言語で記述された命令に従って生成するステップと、
前記オブジェクト階層構造を第5の記憶装置に格納する
ステップと、処理記述言語で記述された命令に従って、
前記オブジェクト階層構造に含まれる一以上のオブジェ
クトからデータを取り出し、EDIFACTデータを生
成するステップと、生成された前記EDIFACTデー
タを第6の記憶装置に格納するステップと、をコンピュ
ータに実行させる。ここで、データが取り出される前記
オブジェクトは、インタフェースとして公開されたメソ
ッドを含んでいる。第4〜第6の記憶装置は、同一の記
憶装置であってもよいし、別個の記憶装置であってもよ
い。
能な記録媒体の別の態様に記録されたプログラムは、第
1の記憶装置に記憶されたEDIFACTデータをユー
ザデータに変換する場合に、第1記憶装置からEDIF
ACTデータを読み取るステップと、処理記述言語で記
述された命令に従って、EDIFACTデータの構造を
写像したオブジェクト階層構造を生成するステップと、
このオブジェクト階層構造を第2の記憶装置に格納する
ステップと、処理記述言語で記述された命令に従って、
オブジェクト階層構造に含まれる一以上のオブジェクト
からデータを取り出し、ユーザデータを生成するステッ
プと、生成された前記ユーザデータを第3の記憶装置に
格納するステップと、を前記コンピュータに実行させ
る。ここで、データが取り出される前記オブジェクト
は、インタフェースとして公開されたメソッドを含んで
いる。第1〜第3の記憶装置は、同一の記憶装置であっ
てもよいし、別個の記憶装置であってもよい。このプロ
グラムは、第4の記憶装置に記憶されたユーザデータを
EDIFACTデータに変換する場合には、第4記憶装
置からユーザデータを読み取るステップと、前記ユーザ
データが登録されたオブジェクトを含み、EDIFAC
Tデータ構造を写像したオブジェクト階層構造を処理記
述言語で記述された命令に従って生成するステップと、
前記オブジェクト階層構造を第5の記憶装置に格納する
ステップと、処理記述言語で記述された命令に従って、
前記オブジェクト階層構造に含まれる一以上のオブジェ
クトからデータを取り出し、EDIFACTデータを生
成するステップと、生成された前記EDIFACTデー
タを第6の記憶装置に格納するステップと、をコンピュ
ータに実行させる。ここで、データが取り出される前記
オブジェクトは、インタフェースとして公開されたメソ
ッドを含んでいる。第4〜第6の記憶装置は、同一の記
憶装置であってもよいし、別個の記憶装置であってもよ
い。
【0019】本発明のこれらの態様によれば、EDIF
ACTデータ構造を写像したオブジェクト階層構造が生
成されるので、業務システムを構築するユーザは、変換
すべき個々のデータ要素へ容易にアクセスすることがで
きる。これにより、ユーザは、EDIFACTデータと
ユーザデータとのマッピングを処理記述言語で記述でき
るようになる。また、ユーザは、既存の業務システムに
合わせて命令を記述することで、中間データを介さず
に、EDIFACTデータを業務システムに適合したユ
ーザデータに変換したり、その逆の変換を行うことがで
きる。
ACTデータ構造を写像したオブジェクト階層構造が生
成されるので、業務システムを構築するユーザは、変換
すべき個々のデータ要素へ容易にアクセスすることがで
きる。これにより、ユーザは、EDIFACTデータと
ユーザデータとのマッピングを処理記述言語で記述でき
るようになる。また、ユーザは、既存の業務システムに
合わせて命令を記述することで、中間データを介さず
に、EDIFACTデータを業務システムに適合したユ
ーザデータに変換したり、その逆の変換を行うことがで
きる。
【0020】本発明に係るコンピュータ読取り可能な記
録媒体の別の態様には、EDIFACTデータと所定の
ユーザデータとの間の変換をコンピュータに実行させる
変換アプリケーションから利用可能なライブラリ・プロ
グラムが記録されている。この変換アプリケーション
は、処理記述言語で記述されている。このプログラム
は、変換アプリケーションの命令に従って、EDIFA
CTデータ構造を写像したオブジェクト階層構造を生成
するステップと、変換アプリケーションの命令に従っ
て、オブジェクト階層構造に含まれる一以上のオブジェ
クトからデータを取り出すステップと、をコンピュータ
に実行させる。データが取り出されるオブジェクトは、
外部インタフェースとして公開されたメソッドを含んで
いる。このメソッドは、変換アプリケーションによって
呼び出され、オブジェクト内のデータへのアクセスを可
能にする。このライブラリ・プログラムは、前記一以上
のオブジェクトから取り出したデータを用いてEDIF
ACTファイルを生成するステップをコンピュータに更
に実行させてもよい。
録媒体の別の態様には、EDIFACTデータと所定の
ユーザデータとの間の変換をコンピュータに実行させる
変換アプリケーションから利用可能なライブラリ・プロ
グラムが記録されている。この変換アプリケーション
は、処理記述言語で記述されている。このプログラム
は、変換アプリケーションの命令に従って、EDIFA
CTデータ構造を写像したオブジェクト階層構造を生成
するステップと、変換アプリケーションの命令に従っ
て、オブジェクト階層構造に含まれる一以上のオブジェ
クトからデータを取り出すステップと、をコンピュータ
に実行させる。データが取り出されるオブジェクトは、
外部インタフェースとして公開されたメソッドを含んで
いる。このメソッドは、変換アプリケーションによって
呼び出され、オブジェクト内のデータへのアクセスを可
能にする。このライブラリ・プログラムは、前記一以上
のオブジェクトから取り出したデータを用いてEDIF
ACTファイルを生成するステップをコンピュータに更
に実行させてもよい。
【0021】ライブラリ・プログラムが記録された本発
明に係る記録媒体の別の態様では、ライブラリ・プログ
ラムは、第1の記憶装置に記憶されたEDIFACTデ
ータをユーザデータに変換する場合に、前記第1記憶装
置からEDIFACTデータを読み取るステップと、変
換アプリケーションの命令に従って、前記EDIFAC
Tデータの構造を写像したオブジェクト階層構造を生成
するステップと、このオブジェクト階層構造を第2の記
憶装置に格納するステップと、変換アプリケーションの
命令に従って、オブジェクト階層構造に含まれる一以上
のオブジェクトからデータを取り出すステップと、を前
記コンピュータに実行させる。ここで、データが取り出
される前記オブジェクトは、インタフェースとして公開
されたメソッドを含んでいる。また、このライブラリ・
プログラムは、第3の記憶装置に記憶されたユーザデー
タをEDIFACTデータに変換する場合に、前記ユー
ザデータが登録されたオブジェクトを含み、EDIFA
CTデータ構造を写像したオブジェクト階層構造を前記
変換アプリケーションの命令に従って生成するステップ
と、このオブジェクト階層構造を第4の記憶装置に格納
するステップと、変換アプリケーションの命令に従っ
て、前記オブジェクト階層構造に含まれる一以上のオブ
ジェクトからデータを取り出し、EDIFACTデータ
を生成するステップと、をコンピュータに実行させる。
ここで、データが取り出される前記オブジェクトは、イ
ンタフェースとして公開されたメソッドを含んでいる。
第1〜第4の記憶装置は、同一の記憶装置であってもよ
いし、別個の記憶装置であってもよい。
明に係る記録媒体の別の態様では、ライブラリ・プログ
ラムは、第1の記憶装置に記憶されたEDIFACTデ
ータをユーザデータに変換する場合に、前記第1記憶装
置からEDIFACTデータを読み取るステップと、変
換アプリケーションの命令に従って、前記EDIFAC
Tデータの構造を写像したオブジェクト階層構造を生成
するステップと、このオブジェクト階層構造を第2の記
憶装置に格納するステップと、変換アプリケーションの
命令に従って、オブジェクト階層構造に含まれる一以上
のオブジェクトからデータを取り出すステップと、を前
記コンピュータに実行させる。ここで、データが取り出
される前記オブジェクトは、インタフェースとして公開
されたメソッドを含んでいる。また、このライブラリ・
プログラムは、第3の記憶装置に記憶されたユーザデー
タをEDIFACTデータに変換する場合に、前記ユー
ザデータが登録されたオブジェクトを含み、EDIFA
CTデータ構造を写像したオブジェクト階層構造を前記
変換アプリケーションの命令に従って生成するステップ
と、このオブジェクト階層構造を第4の記憶装置に格納
するステップと、変換アプリケーションの命令に従っ
て、前記オブジェクト階層構造に含まれる一以上のオブ
ジェクトからデータを取り出し、EDIFACTデータ
を生成するステップと、をコンピュータに実行させる。
ここで、データが取り出される前記オブジェクトは、イ
ンタフェースとして公開されたメソッドを含んでいる。
第1〜第4の記憶装置は、同一の記憶装置であってもよ
いし、別個の記憶装置であってもよい。
【0022】これらのライブラリ・プログラムを記録し
た記録媒体を使用することで、EDIFACTデータ構
造を写像したオブジェクト階層構造が生成されるので、
業務システムを構築するユーザは、変換すべき個々のデ
ータ要素へ容易にアクセスすることができる。これによ
り、ユーザは、EDIFACTデータとユーザデータと
のマッピングを処理記述言語で記述できるようになる。
また、ユーザは、既存の業務システムに合わせて変換ア
プリケーションを作成し、この変換アプリケーションに
上記のライブラリを利用させることで、中間データを介
さずに、EDIFACTデータを業務システムに適合し
たユーザデータに変換したり、その逆の変換を行うこと
ができる。
た記録媒体を使用することで、EDIFACTデータ構
造を写像したオブジェクト階層構造が生成されるので、
業務システムを構築するユーザは、変換すべき個々のデ
ータ要素へ容易にアクセスすることができる。これによ
り、ユーザは、EDIFACTデータとユーザデータと
のマッピングを処理記述言語で記述できるようになる。
また、ユーザは、既存の業務システムに合わせて変換ア
プリケーションを作成し、この変換アプリケーションに
上記のライブラリを利用させることで、中間データを介
さずに、EDIFACTデータを業務システムに適合し
たユーザデータに変換したり、その逆の変換を行うこと
ができる。
【0023】このように、本発明は、EDIFACTデ
ータに対する新規なアクセス方式を採用したEDIFA
CTデータ及びユーザデータ間の変換技術を提供する。
このアクセス方式をプログラミング言語、スクリプト言
語等の既存の処理記述言語から利用することで、EDI
FACTデータを自由かつ柔軟に扱うことができる。複
雑な構造を持つEDIFACTデータに対して簡単なア
クセス方式を提供するために、オブジェクト指向技術を
採用し、オブジェクト・インターフェースによるプログ
ラム・インターフェースを用いている。なお、本発明で
は変換を実行するためにユーザファイルを作成する必要
は必ずしもないが、マッピング・パラメータを解析・処
理する論理を処理記述言語で記述すれば、従来のファイ
ル−ファイル型のEDIFACTトランスレータを構築
することも可能である。
ータに対する新規なアクセス方式を採用したEDIFA
CTデータ及びユーザデータ間の変換技術を提供する。
このアクセス方式をプログラミング言語、スクリプト言
語等の既存の処理記述言語から利用することで、EDI
FACTデータを自由かつ柔軟に扱うことができる。複
雑な構造を持つEDIFACTデータに対して簡単なア
クセス方式を提供するために、オブジェクト指向技術を
採用し、オブジェクト・インターフェースによるプログ
ラム・インターフェースを用いている。なお、本発明で
は変換を実行するためにユーザファイルを作成する必要
は必ずしもないが、マッピング・パラメータを解析・処
理する論理を処理記述言語で記述すれば、従来のファイ
ル−ファイル型のEDIFACTトランスレータを構築
することも可能である。
【0024】更に、EDIFACTデータ及びユーザデ
ータ間のマッピングをマッピング・パラメータを使用し
て行うことも可能である。本発明に係るEDIFACT
データと所定のユーザデータとの間の変換方法の一態様
は、第1の記憶装置に記憶され、ユーザデータとEDI
FACTデータとの写像関係を記述したマッピング・パ
ラメータを第1記憶装置から読み取るステップと、この
マッピング・パラメータに従って、EDIFACTデー
タ構造を写像したオブジェクト階層構造を生成するステ
ップと、このオブジェクト階層構造を第2の記憶装置に
格納するステップと、オブジェクト階層構造に含まれる
一以上のオブジェクトからデータを取り出し、マッピン
グ・パラメータに従って、EDIFACTデータ又はユ
ーザデータを生成するステップと、生成された前記ED
IFACTデータ又はユーザデータを第3の記憶装置に
格納するステップと、を備えている。データが取り出さ
れる前記オブジェクトは、インタフェースとして公開さ
れたメソッドを含んでいる。このメソッドは、処理記述
言語で記述された命令によって呼び出され、オブジェク
ト内のデータへのアクセスを可能にする。第1及び第2
の記憶装置は、同一の記憶装置であってもよいし、別個
の記憶装置であってもよい。
ータ間のマッピングをマッピング・パラメータを使用し
て行うことも可能である。本発明に係るEDIFACT
データと所定のユーザデータとの間の変換方法の一態様
は、第1の記憶装置に記憶され、ユーザデータとEDI
FACTデータとの写像関係を記述したマッピング・パ
ラメータを第1記憶装置から読み取るステップと、この
マッピング・パラメータに従って、EDIFACTデー
タ構造を写像したオブジェクト階層構造を生成するステ
ップと、このオブジェクト階層構造を第2の記憶装置に
格納するステップと、オブジェクト階層構造に含まれる
一以上のオブジェクトからデータを取り出し、マッピン
グ・パラメータに従って、EDIFACTデータ又はユ
ーザデータを生成するステップと、生成された前記ED
IFACTデータ又はユーザデータを第3の記憶装置に
格納するステップと、を備えている。データが取り出さ
れる前記オブジェクトは、インタフェースとして公開さ
れたメソッドを含んでいる。このメソッドは、処理記述
言語で記述された命令によって呼び出され、オブジェク
ト内のデータへのアクセスを可能にする。第1及び第2
の記憶装置は、同一の記憶装置であってもよいし、別個
の記憶装置であってもよい。
【0025】また、本発明に係るコンピュータ読取り可
能な記録媒体の一態様には、EDIFACTデータと所
定のユーザデータとの間の変換をコンピュータに実行さ
せるためのプログラムが記録されており、このプログラ
ムは、第1の記憶装置に記憶され、ユーザデータとED
IFACTデータとの写像関係を記述したマッピング・
パラメータを第1記憶装置から読み取るステップをコン
ピュータに実行させる。更に、このプログラムは、第2
の記憶装置に記憶されたEDIFACTデータをユーザ
データに変換する場合に、第2記憶装置からEDIFA
CTデータを読み取るステップと、このEDIFACT
データの構造を写像したオブジェクト階層構造を生成す
るステップと、このオブジェクト階層構造を第3の記憶
装置に格納するステップと、オブジェクト階層構造に含
まれる一以上のオブジェクトからデータを取り出し、前
記マッピング・パラメータに従ってユーザデータを生成
するステップと、生成された前記ユーザデータを第4の
記憶装置に格納するステップと、を前記コンピュータに
実行させる。ここで、データが取り出される前記オブジ
ェクトは、インタフェースとして公開されたメソッドを
含んでいる。また、このプログラムは、第5の記憶装置
に記憶されたユーザデータをEDIFACTデータに変
換する場合には、第5記憶装置からユーザデータを読み
取るステップと、前記ユーザデータが登録されたオブジ
ェクトを含み、EDIFACTデータ構造を写像したオ
ブジェクト階層構造を、前記マッピング・パラメータに
従って生成するステップと、このオブジェクト階層構造
を第6の記憶装置に格納するステップと、このオブジェ
クト階層構造に含まれる一以上のオブジェクトからデー
タを取り出してEDIFACTデータを生成するステッ
プと、生成されたEDIFACTデータを第7の記憶装
置に格納するステップと、をコンピュータに実行させ
る。ここで、データが取り出される前記オブジェクト
は、インタフェースとして公開されたメソッドを含んで
いる。第1〜第7の記憶装置は、同一の記憶装置であっ
てもよいし、別個の記憶装置であってもよい。
能な記録媒体の一態様には、EDIFACTデータと所
定のユーザデータとの間の変換をコンピュータに実行さ
せるためのプログラムが記録されており、このプログラ
ムは、第1の記憶装置に記憶され、ユーザデータとED
IFACTデータとの写像関係を記述したマッピング・
パラメータを第1記憶装置から読み取るステップをコン
ピュータに実行させる。更に、このプログラムは、第2
の記憶装置に記憶されたEDIFACTデータをユーザ
データに変換する場合に、第2記憶装置からEDIFA
CTデータを読み取るステップと、このEDIFACT
データの構造を写像したオブジェクト階層構造を生成す
るステップと、このオブジェクト階層構造を第3の記憶
装置に格納するステップと、オブジェクト階層構造に含
まれる一以上のオブジェクトからデータを取り出し、前
記マッピング・パラメータに従ってユーザデータを生成
するステップと、生成された前記ユーザデータを第4の
記憶装置に格納するステップと、を前記コンピュータに
実行させる。ここで、データが取り出される前記オブジ
ェクトは、インタフェースとして公開されたメソッドを
含んでいる。また、このプログラムは、第5の記憶装置
に記憶されたユーザデータをEDIFACTデータに変
換する場合には、第5記憶装置からユーザデータを読み
取るステップと、前記ユーザデータが登録されたオブジ
ェクトを含み、EDIFACTデータ構造を写像したオ
ブジェクト階層構造を、前記マッピング・パラメータに
従って生成するステップと、このオブジェクト階層構造
を第6の記憶装置に格納するステップと、このオブジェ
クト階層構造に含まれる一以上のオブジェクトからデー
タを取り出してEDIFACTデータを生成するステッ
プと、生成されたEDIFACTデータを第7の記憶装
置に格納するステップと、をコンピュータに実行させ
る。ここで、データが取り出される前記オブジェクト
は、インタフェースとして公開されたメソッドを含んで
いる。第1〜第7の記憶装置は、同一の記憶装置であっ
てもよいし、別個の記憶装置であってもよい。
【0026】このように、EDIFACTデータ及びユ
ーザデータ間のマッピングを処理記述言語で記述するの
ではなく、マッピング・パラメータを利用することによ
っても、オブジェクト階層構造やユーザデータを生成す
ることができる。この場合でも、ユーザは、中間データ
を介さずに、EDIFACTデータを業務システムに適
合したユーザデータに変換したり、その逆の変換を行う
ことができる。
ーザデータ間のマッピングを処理記述言語で記述するの
ではなく、マッピング・パラメータを利用することによ
っても、オブジェクト階層構造やユーザデータを生成す
ることができる。この場合でも、ユーザは、中間データ
を介さずに、EDIFACTデータを業務システムに適
合したユーザデータに変換したり、その逆の変換を行う
ことができる。
【0027】
【発明の実施の形態】本発明を説明する準備として、E
DIFACTデータについて一般的な事項を簡単に説明
する。図1は、ISO9735に規定されるEDIFA
CTデータ構造を表している。図1に示されるように、
EDIFACTデータは入れ子構造を有している。参照
番号111で示される「CONNECTION(コネクション)」
は、EDI当事者間のネットワーク接続で交換されるデ
ータ転送単位を表している。「Establishment」は通信
上のヘッダ、「Termination」は通信上のトレーラを表
している。これらは、コネクション111を実際に伝送
する際に現れるもので、EDIFACTデータ構造定義
の範囲外のものである。コネクション111には、一以
上の「INTERCHANGE(インターチェンジ)」112が含
まれる。インターチェンジ112は、EDIFACTに
おけるEDI当事者間の情報交換単位である。インター
チェンジ112は、「UNB」で表されるインターチェン
ジ・ヘッダ・セグメントを先頭に含み、「UNZ」で表さ
れるインターチェンジ・トレーラ・セグメントを末尾に
含んでいる。インターチェンジ・ヘッダ・セグメント
「UNB」は、文字列UNBをセグメント・タグコードとして
含んでおり、インターチェンジ・トレーラ・セグメント
「UNZ」は、文字列UNZをセグメント・タグコードとして
含んでいる(「セグメント」および「セグメント・タグ
コード」に関しては後述する。)。「UNA」は、文字列U
NAで始まるサービス・ストリング・アドバイスであり、
インターチェンジ中の全セグメント内の特殊文字
(+:’*等)を別文字で置き換える場合に使用される
もので、任意選択でインターチェンジの先頭に付加して
もよい。一つのインターチェンジ112は、一以上の
「GROUP(グループ)」または一以上の「MESSAGE(メッ
セージ)」を含んでいる。グループだけを含むか、メッ
セージだけを含むかは排他的に選択される。一つのグル
ープは、一以上の「MESSAGE(メッセージ)」を含んで
いる。また、一つのグループは、「UNG」で表されるグ
ループ・ヘッダ・セグメントを先頭に含み、「UNE」
で表されるグループ・トレーラ・セグメントを末尾に含
んでいる。グループ・ヘッダ・セグメント「UNG」は、
文字列UNGをセグメント・タグコードとして含んでお
り、グループ・トレーラ・セグメント「UNE」は、文
字列UNEをセグメント・タグコードとして含んでいる。
このように、グループ内のメッセージは、グループ・ヘ
ッダ・セグメントとグループ・トレーラ・セグメントに
よって囲われる。インターチェンジがグループ化されな
い一以上のメッセージだけを含む場合は、メッセージ全
体が、インターチェンジ・ヘッダ・セグメントとインタ
ーチェンジ・トレーラ・セグメントによって囲われる。
なお、インターチェンジ内でグループ化されたメッセー
ジとグループ化されないメッセージとの間にはメッセー
ジ自体としての違いはないため、図1では、どちらかの
一つのメッセージをメッセージ113として示してい
る。メッセージは、取引行為の特定の意味を表現する単
位を表す。例えば、取引における見積書や発注書などが
個々のメッセージに対応する。メッセージは、「UNH」
で表されるメッセージ・ヘッダ・セグメントを先頭に含
み、「UNT」で表されるメッセージ・トレーラ・セグメ
ントを末尾に含んでいる。メッセージ・ヘッダ・セグメ
ント「UNH」は、文字列UNHをセグメント・タグコードと
して含んでおり、メッセージ・トレーラ・セグメント
「UNT」は、文字列UNTをセグメント・タグコードとして
含んでいる。メッセージは、メッセージ・ヘッダ・セグ
メントとメッセージ・トレーラ・セグメントによって囲
われる一つの「MESSAGE BODY(メッセージ本体)」を含
んでいる。メッセージ本体は、複数のセグメントからな
り、単独で意味を持つ一以上の「SEGMENT(セグメン
ト)」と、複数のセグメントが階層構造を取ることで複
合的な意味を持つ一以上の「SEGMENT GROUP(セグメン
ト・グループ)」の一方または双方を含んでいる。メッ
セージ本体を構成するセグメントやセグメント・グルー
プの構造(並び順、繰返し数、下位セグメント)は、メ
ッセージ種類ごとにEDIFACTで規定されている。
一つのセグメント・グループは、唯一の「Trigger Segm
ent(トリガ・セグメント)」を先頭に含んでいる。セ
グメント・グループは、更にゼロ個以上のセグメントを
含んでおり、一以上のセグメント・グループを更に含む
場合もある。トリガ・セグメントとは、セグメント・グ
ループを識別するためのセグメントに付けられた呼称で
あり、特別なセグメントの定義があるわけではなく、通
常のセグメントが各々のメッセージ構造定義上でトリガ
・セグメントとしての意味を持つ。セグメントは、イン
ターチェンジないしメッセージを構成するEDIFAC
Tの基本単位であり、一以上の「ELEMENT DATA(データ
要素)」を含み、セグメント終端文字(「’」)で終了
する。セグメントの先頭のデータ要素は、アルファベッ
ト3文字からなる「Segment Tag(セグメント・タグコ
ード)」と呼ばれ、そのセグメントが表現する意味を識
別するようにEDIFACTで規定されている。セグメ
ント・タグ以外のデータ要素は、業務上のデータ項目を
表現するもので、「STAND-ALONE DATA ELEMENT(単独デ
ータ要素)」または「COMPOSITE DATA ELEMENT(複合デ
ータ要素)」の二種類がある。単独データ要素は、単一
のデータ要素値を含む「SIMPLE DATA ELEMENT(単純デ
ータ要素)」一つだけで構成されるデータ要素である。
複合データ要素は、二つ以上の単純データ要素から構成
されるデータ要素であり、複合データ要素を構成する単
純データ要素を「COMPONENT DATA ELEMENT(成分データ
要素)」と呼ぶ。複合データ要素内部において成分デー
タ要素は、特殊区切り文字(「:」)で区分される。一
つのセグメントは、ゼロ個以上の単独データ要素、ゼロ
個以上の複合データ要素、ないしその双方を含み、デー
タ要素の種類とセグメント内での並び順は、セグメント
・タグコードごとにEDIFACTで規定されている。
セグメント上でデータ要素同士は、特殊区切り文字
(「+」)で区分される。EDIFACTの規定があれ
ば、セグメント上の各単独データ要素ないし各複合デー
タ要素は、それぞれ複数繰り返してもよい。この場合、
二つ以上の単独データ要素の繰返しで構成されるデータ
要素を「REPEATING STAND-ALONE DATA ELEMENT(繰返し
単独データ要素)」と呼び、二つ以上の複合データ要素
の繰返しで構成されるデータ要素を「REPEATING COMPOS
ITE DATA ELEMENT(繰返し複合データ要素)」と呼ぶ。
セグメント上において、繰返し単独データ要素を構成す
る単独データ要素同士、ないし、繰返し複合データ要素
を構成する複合データ要素同士は、特殊区切り文字
(「*」)で区分される。
DIFACTデータについて一般的な事項を簡単に説明
する。図1は、ISO9735に規定されるEDIFA
CTデータ構造を表している。図1に示されるように、
EDIFACTデータは入れ子構造を有している。参照
番号111で示される「CONNECTION(コネクション)」
は、EDI当事者間のネットワーク接続で交換されるデ
ータ転送単位を表している。「Establishment」は通信
上のヘッダ、「Termination」は通信上のトレーラを表
している。これらは、コネクション111を実際に伝送
する際に現れるもので、EDIFACTデータ構造定義
の範囲外のものである。コネクション111には、一以
上の「INTERCHANGE(インターチェンジ)」112が含
まれる。インターチェンジ112は、EDIFACTに
おけるEDI当事者間の情報交換単位である。インター
チェンジ112は、「UNB」で表されるインターチェン
ジ・ヘッダ・セグメントを先頭に含み、「UNZ」で表さ
れるインターチェンジ・トレーラ・セグメントを末尾に
含んでいる。インターチェンジ・ヘッダ・セグメント
「UNB」は、文字列UNBをセグメント・タグコードとして
含んでおり、インターチェンジ・トレーラ・セグメント
「UNZ」は、文字列UNZをセグメント・タグコードとして
含んでいる(「セグメント」および「セグメント・タグ
コード」に関しては後述する。)。「UNA」は、文字列U
NAで始まるサービス・ストリング・アドバイスであり、
インターチェンジ中の全セグメント内の特殊文字
(+:’*等)を別文字で置き換える場合に使用される
もので、任意選択でインターチェンジの先頭に付加して
もよい。一つのインターチェンジ112は、一以上の
「GROUP(グループ)」または一以上の「MESSAGE(メッ
セージ)」を含んでいる。グループだけを含むか、メッ
セージだけを含むかは排他的に選択される。一つのグル
ープは、一以上の「MESSAGE(メッセージ)」を含んで
いる。また、一つのグループは、「UNG」で表されるグ
ループ・ヘッダ・セグメントを先頭に含み、「UNE」
で表されるグループ・トレーラ・セグメントを末尾に含
んでいる。グループ・ヘッダ・セグメント「UNG」は、
文字列UNGをセグメント・タグコードとして含んでお
り、グループ・トレーラ・セグメント「UNE」は、文
字列UNEをセグメント・タグコードとして含んでいる。
このように、グループ内のメッセージは、グループ・ヘ
ッダ・セグメントとグループ・トレーラ・セグメントに
よって囲われる。インターチェンジがグループ化されな
い一以上のメッセージだけを含む場合は、メッセージ全
体が、インターチェンジ・ヘッダ・セグメントとインタ
ーチェンジ・トレーラ・セグメントによって囲われる。
なお、インターチェンジ内でグループ化されたメッセー
ジとグループ化されないメッセージとの間にはメッセー
ジ自体としての違いはないため、図1では、どちらかの
一つのメッセージをメッセージ113として示してい
る。メッセージは、取引行為の特定の意味を表現する単
位を表す。例えば、取引における見積書や発注書などが
個々のメッセージに対応する。メッセージは、「UNH」
で表されるメッセージ・ヘッダ・セグメントを先頭に含
み、「UNT」で表されるメッセージ・トレーラ・セグメ
ントを末尾に含んでいる。メッセージ・ヘッダ・セグメ
ント「UNH」は、文字列UNHをセグメント・タグコードと
して含んでおり、メッセージ・トレーラ・セグメント
「UNT」は、文字列UNTをセグメント・タグコードとして
含んでいる。メッセージは、メッセージ・ヘッダ・セグ
メントとメッセージ・トレーラ・セグメントによって囲
われる一つの「MESSAGE BODY(メッセージ本体)」を含
んでいる。メッセージ本体は、複数のセグメントからな
り、単独で意味を持つ一以上の「SEGMENT(セグメン
ト)」と、複数のセグメントが階層構造を取ることで複
合的な意味を持つ一以上の「SEGMENT GROUP(セグメン
ト・グループ)」の一方または双方を含んでいる。メッ
セージ本体を構成するセグメントやセグメント・グルー
プの構造(並び順、繰返し数、下位セグメント)は、メ
ッセージ種類ごとにEDIFACTで規定されている。
一つのセグメント・グループは、唯一の「Trigger Segm
ent(トリガ・セグメント)」を先頭に含んでいる。セ
グメント・グループは、更にゼロ個以上のセグメントを
含んでおり、一以上のセグメント・グループを更に含む
場合もある。トリガ・セグメントとは、セグメント・グ
ループを識別するためのセグメントに付けられた呼称で
あり、特別なセグメントの定義があるわけではなく、通
常のセグメントが各々のメッセージ構造定義上でトリガ
・セグメントとしての意味を持つ。セグメントは、イン
ターチェンジないしメッセージを構成するEDIFAC
Tの基本単位であり、一以上の「ELEMENT DATA(データ
要素)」を含み、セグメント終端文字(「’」)で終了
する。セグメントの先頭のデータ要素は、アルファベッ
ト3文字からなる「Segment Tag(セグメント・タグコ
ード)」と呼ばれ、そのセグメントが表現する意味を識
別するようにEDIFACTで規定されている。セグメ
ント・タグ以外のデータ要素は、業務上のデータ項目を
表現するもので、「STAND-ALONE DATA ELEMENT(単独デ
ータ要素)」または「COMPOSITE DATA ELEMENT(複合デ
ータ要素)」の二種類がある。単独データ要素は、単一
のデータ要素値を含む「SIMPLE DATA ELEMENT(単純デ
ータ要素)」一つだけで構成されるデータ要素である。
複合データ要素は、二つ以上の単純データ要素から構成
されるデータ要素であり、複合データ要素を構成する単
純データ要素を「COMPONENT DATA ELEMENT(成分データ
要素)」と呼ぶ。複合データ要素内部において成分デー
タ要素は、特殊区切り文字(「:」)で区分される。一
つのセグメントは、ゼロ個以上の単独データ要素、ゼロ
個以上の複合データ要素、ないしその双方を含み、デー
タ要素の種類とセグメント内での並び順は、セグメント
・タグコードごとにEDIFACTで規定されている。
セグメント上でデータ要素同士は、特殊区切り文字
(「+」)で区分される。EDIFACTの規定があれ
ば、セグメント上の各単独データ要素ないし各複合デー
タ要素は、それぞれ複数繰り返してもよい。この場合、
二つ以上の単独データ要素の繰返しで構成されるデータ
要素を「REPEATING STAND-ALONE DATA ELEMENT(繰返し
単独データ要素)」と呼び、二つ以上の複合データ要素
の繰返しで構成されるデータ要素を「REPEATING COMPOS
ITE DATA ELEMENT(繰返し複合データ要素)」と呼ぶ。
セグメント上において、繰返し単独データ要素を構成す
る単独データ要素同士、ないし、繰返し複合データ要素
を構成する複合データ要素同士は、特殊区切り文字
(「*」)で区分される。
【0028】図2は、メッセージがグループ化されてい
ないEDIFACTデータの一例を示している。図3
は、図2のデータをわかりやすく表記し直した図で、適
宜改行を入れてある。図3に良く示されるように、この
例では、一つのコネクションに一つのインターチェンジ
が含まれており、このインターチェンジに一つのメッセ
ージが含まれている。
ないEDIFACTデータの一例を示している。図3
は、図2のデータをわかりやすく表記し直した図で、適
宜改行を入れてある。図3に良く示されるように、この
例では、一つのコネクションに一つのインターチェンジ
が含まれており、このインターチェンジに一つのメッセ
ージが含まれている。
【0029】簡単に説明すると、図3の第一行はインタ
ーチェンジの冒頭を示すインターチェンジ・ヘッダ(イ
ンターチェンジ開始セグメントとも呼ばれる)、第二行
はメッセージの冒頭を示すメッセージ・ヘッダ(メッセ
ージ開始セグメントとも呼ばれる)である。また、最終
行はインターチェンジの最後を示すインターチェンジ・
トレーラ(インターチェンジ終了セグメントとも呼ばれ
る)であり、最終行の直前の行はメッセージの最後を示
すメッセージ・トレーラ(メッセージ終了セグメントと
も呼ばれる)である。メッセージ・ヘッダとメッセージ
・トレーラとの間に存在する各行はセグメント(メッセ
ージ内部セグメントとも呼ばれる)であり、各セグメン
トの先頭には3文字のセグメント・タグコードが配置さ
れている。これらのタグコードは、セグメントの内容を
示す固有の識別コードである。例えば、BGMタグコード
の直後のデータ要素は文書の種別(発注書、納品書な
ど)を表す。また、DTMタグコードの直後のデータ要素
は、日付を指示する。各セグメントは、区切り記
号「’」によって区分されている。また、「+」はデー
タ要素の区切り記号であり、「:」は複合データ要素内
の成分データ要素の区切り記号である。例えば、図3の
第4行におけるDTMタグコードの直後の「137:19
931105:102」は、複合データ要素であり、
「137」が日付の種別である発行日を示し、「199
31105」が1993年11月5日を示し、「10
2」は、日付表現の形式が「YYYYMMDD」であることを示
している。これらの「+」、「:」、「’」といった区
切り記号は、セパレータと呼ばれる。
ーチェンジの冒頭を示すインターチェンジ・ヘッダ(イ
ンターチェンジ開始セグメントとも呼ばれる)、第二行
はメッセージの冒頭を示すメッセージ・ヘッダ(メッセ
ージ開始セグメントとも呼ばれる)である。また、最終
行はインターチェンジの最後を示すインターチェンジ・
トレーラ(インターチェンジ終了セグメントとも呼ばれ
る)であり、最終行の直前の行はメッセージの最後を示
すメッセージ・トレーラ(メッセージ終了セグメントと
も呼ばれる)である。メッセージ・ヘッダとメッセージ
・トレーラとの間に存在する各行はセグメント(メッセ
ージ内部セグメントとも呼ばれる)であり、各セグメン
トの先頭には3文字のセグメント・タグコードが配置さ
れている。これらのタグコードは、セグメントの内容を
示す固有の識別コードである。例えば、BGMタグコード
の直後のデータ要素は文書の種別(発注書、納品書な
ど)を表す。また、DTMタグコードの直後のデータ要素
は、日付を指示する。各セグメントは、区切り記
号「’」によって区分されている。また、「+」はデー
タ要素の区切り記号であり、「:」は複合データ要素内
の成分データ要素の区切り記号である。例えば、図3の
第4行におけるDTMタグコードの直後の「137:19
931105:102」は、複合データ要素であり、
「137」が日付の種別である発行日を示し、「199
31105」が1993年11月5日を示し、「10
2」は、日付表現の形式が「YYYYMMDD」であることを示
している。これらの「+」、「:」、「’」といった区
切り記号は、セパレータと呼ばれる。
【0030】図4は、EDIFACTで規定された参照
ディレクトリに含まれるメッセージディレクトリの一例
を示している。メッセージディレクトリは、メッセージ
の構造を規定するもので、具体的には、メッセージに含
まれるセグメントの並び方やグループ分けの方法、セグ
メントグループの階層などを規定している。図4のディ
レクトリは、販売データ報告メッセージに関するもので
ある。図5は、図4に規定されるメッセージ構造をダイ
アグラムで分かりやすく示したものである。図5に示さ
れるような階層構造が図4のディレクトリに情報化され
ている。
ディレクトリに含まれるメッセージディレクトリの一例
を示している。メッセージディレクトリは、メッセージ
の構造を規定するもので、具体的には、メッセージに含
まれるセグメントの並び方やグループ分けの方法、セグ
メントグループの階層などを規定している。図4のディ
レクトリは、販売データ報告メッセージに関するもので
ある。図5は、図4に規定されるメッセージ構造をダイ
アグラムで分かりやすく示したものである。図5に示さ
れるような階層構造が図4のディレクトリに情報化され
ている。
【0031】図6は、EDIFACT参照ディレクトリ
に含まれるセグメントディレクトリの一例を示してい
る。セグメントディレクトリは、セグメントにおいてタ
グコードに続くデータ要素の並び方に関するルールを示
している。
に含まれるセグメントディレクトリの一例を示してい
る。セグメントディレクトリは、セグメントにおいてタ
グコードに続くデータ要素の並び方に関するルールを示
している。
【0032】以下、添付図面を参照しながら、本発明の
実施形態を詳細に説明する。図7は、本実施形態が実施
される業務システム100を示す概略図である。この業
務システム100は、業務アプリケーション50から利
用可能な業務データベース40を含んでおり、このデー
タベース40には、商品の発注数や納品日など、業務で
使用される種々のデータが蓄積される。また、業務シス
テム100は、通信システム30を使用することによ
り、外部のコンピュータや通信ネットワーク(インター
ネットやデータ交換網等)と接続することができる。
実施形態を詳細に説明する。図7は、本実施形態が実施
される業務システム100を示す概略図である。この業
務システム100は、業務アプリケーション50から利
用可能な業務データベース40を含んでおり、このデー
タベース40には、商品の発注数や納品日など、業務で
使用される種々のデータが蓄積される。また、業務シス
テム100は、通信システム30を使用することによ
り、外部のコンピュータや通信ネットワーク(インター
ネットやデータ交換網等)と接続することができる。
【0033】業務システム100では、変換アプリケー
ション10がEDIFACTデータと業務データベース
内の業務データとの間の変換を行う。変換アプリケーシ
ョン10は、従来技術におけるトランスレータの役割を
果たすものである。しかしながら、変換アプリケーショ
ン10に対して入出力されるユーザデータの形式は業務
データベースで使用される業務データの形式と一致して
おり、この点で、通常は業務データと一致しない形式の
ユーザデータを扱うトランスレータと異なっている。
ション10がEDIFACTデータと業務データベース
内の業務データとの間の変換を行う。変換アプリケーシ
ョン10は、従来技術におけるトランスレータの役割を
果たすものである。しかしながら、変換アプリケーショ
ン10に対して入出力されるユーザデータの形式は業務
データベースで使用される業務データの形式と一致して
おり、この点で、通常は業務データと一致しない形式の
ユーザデータを扱うトランスレータと異なっている。
【0034】変換アプリケーション10は、ライブラリ
・プログラム16に処理の一部を実行させる。また、変
換アプリケーション10は、データアクセスコード部1
2及びマッピングコード部14を備えている。データア
クセスコード部12には、業務データベースに対する業
務データ(ユーザデータ)の読出し及び書込み処理が処
理記述言語で記述されている。マッピングコード部14
には、EDIFACTデータ及び業務データ間の変換に
必要な処理が処理記述言語で記述されている。後述する
ように、ライブラリ・プログラム16は、マッピング・
コード部14に記述された命令に従って、EDIFAC
Tデータ及び業務データ間の変換に必要な処理を実行す
る。この処理には、EDIFACTデータ20の構造を
写像したオブジェクト階層構造18の生成が含まれる。
・プログラム16に処理の一部を実行させる。また、変
換アプリケーション10は、データアクセスコード部1
2及びマッピングコード部14を備えている。データア
クセスコード部12には、業務データベースに対する業
務データ(ユーザデータ)の読出し及び書込み処理が処
理記述言語で記述されている。マッピングコード部14
には、EDIFACTデータ及び業務データ間の変換に
必要な処理が処理記述言語で記述されている。後述する
ように、ライブラリ・プログラム16は、マッピング・
コード部14に記述された命令に従って、EDIFAC
Tデータ及び業務データ間の変換に必要な処理を実行す
る。この処理には、EDIFACTデータ20の構造を
写像したオブジェクト階層構造18の生成が含まれる。
【0035】図8は、図7の業務システムを実現するこ
との可能なコンピュータ・システム200のハードウェ
ア構成例を示す模式図である。このコンピュータ・シス
テム200は、任意の数のプロセッサ(処理装置)20
2を備えており、このプロセッサには主記憶装置である
ランダム・アクセス・メモリ(RAM)204および補
助記憶装置であるハードディスク(HD)206、20
8が接続されている。プロセッサ202には、一以上の
入出力装置210が接続されている。この入出力装置と
しては、例えば、マウス、キーボード、ディスプレイ・
モニタ、プリンタなどが挙げられる。また、プロセッサ
202には通信装置212が接続されており、コンピュ
ータ・システム200は、この通信装置212を使用す
ることで他のコンピュータ、あるいは通信ネットワーク
(例えば、インターネットやデータ交換網)に接続する
ことができる。プロセッサ202には、CD−ROMド
ライブ214も接続されており、取外し可能な情報記録
媒体であるCD−ROMの記録内容をプロセッサ202
が読み取れるようになっている。取外し可能な記録媒体
としては、CD−ROMの他に、MOや磁気テープなど
コンピュータが読取り可能なその他の磁気的、光学的記
録媒体を使用することができる。これらの媒体を使用す
るために、これらの媒体に対応したドライブがCD−R
OMドライブ214の代わりに、あるいはCD−ROM
ドライブ214とともにプロセッサ202に接続されて
いてもよい。
との可能なコンピュータ・システム200のハードウェ
ア構成例を示す模式図である。このコンピュータ・シス
テム200は、任意の数のプロセッサ(処理装置)20
2を備えており、このプロセッサには主記憶装置である
ランダム・アクセス・メモリ(RAM)204および補
助記憶装置であるハードディスク(HD)206、20
8が接続されている。プロセッサ202には、一以上の
入出力装置210が接続されている。この入出力装置と
しては、例えば、マウス、キーボード、ディスプレイ・
モニタ、プリンタなどが挙げられる。また、プロセッサ
202には通信装置212が接続されており、コンピュ
ータ・システム200は、この通信装置212を使用す
ることで他のコンピュータ、あるいは通信ネットワーク
(例えば、インターネットやデータ交換網)に接続する
ことができる。プロセッサ202には、CD−ROMド
ライブ214も接続されており、取外し可能な情報記録
媒体であるCD−ROMの記録内容をプロセッサ202
が読み取れるようになっている。取外し可能な記録媒体
としては、CD−ROMの他に、MOや磁気テープなど
コンピュータが読取り可能なその他の磁気的、光学的記
録媒体を使用することができる。これらの媒体を使用す
るために、これらの媒体に対応したドライブがCD−R
OMドライブ214の代わりに、あるいはCD−ROM
ドライブ214とともにプロセッサ202に接続されて
いてもよい。
【0036】このコンピュータ・システム200を用い
て図7の業務システム100を実現する場合、例えば、
変換アプリケーション10およびライブラリ・プログラ
ム16は、処理の実行に必要とされるデータ(例えば、
後述するEDIFACT参照ディレクトリ)とともにハ
ードディスク206に格納される。このライブラリ・プ
ログラム16はCD−ROMに記録されており、CD−
ROMドライブ214からハードディスク206に読み
込むことができる。他の記録媒体用のドライブが設置さ
れていれば、その記録媒体にライブラリ・プログラム1
6を記録しておき、その記録媒体からライブラリ・プロ
グラム16をハードディスク206に読み込むこともで
きる。ハードディスク208には、業務データベース4
0及び業務アプリケーション50が格納される。このよ
うに、本例では業務データベース40及び業務アプリケ
ーション50と変換アプリケーション及びライブラリ・
プログラムとを別個の記憶装置に格納しているが、同一
の記憶装置に格納することも可能である。図8の通信装
置212は、図7の通信システム30を実現する。プロ
セッサ202は、通信装置212を制御して、EDIF
ACTデータ20の送受信を実行することができる。取
引相手から受信したEDIFACTデータ20は、ハー
ドディスク206に格納される。ライブラリ16によっ
て生成されるオブジェクト構造18は、RAM204や
HDD206に格納される。
て図7の業務システム100を実現する場合、例えば、
変換アプリケーション10およびライブラリ・プログラ
ム16は、処理の実行に必要とされるデータ(例えば、
後述するEDIFACT参照ディレクトリ)とともにハ
ードディスク206に格納される。このライブラリ・プ
ログラム16はCD−ROMに記録されており、CD−
ROMドライブ214からハードディスク206に読み
込むことができる。他の記録媒体用のドライブが設置さ
れていれば、その記録媒体にライブラリ・プログラム1
6を記録しておき、その記録媒体からライブラリ・プロ
グラム16をハードディスク206に読み込むこともで
きる。ハードディスク208には、業務データベース4
0及び業務アプリケーション50が格納される。このよ
うに、本例では業務データベース40及び業務アプリケ
ーション50と変換アプリケーション及びライブラリ・
プログラムとを別個の記憶装置に格納しているが、同一
の記憶装置に格納することも可能である。図8の通信装
置212は、図7の通信システム30を実現する。プロ
セッサ202は、通信装置212を制御して、EDIF
ACTデータ20の送受信を実行することができる。取
引相手から受信したEDIFACTデータ20は、ハー
ドディスク206に格納される。ライブラリ16によっ
て生成されるオブジェクト構造18は、RAM204や
HDD206に格納される。
【0037】以下では、本実施形態によるEDIFAC
Tデータ及びユーザデータ(業務データ)間の変換方法
を、取引相手から受信したEDIFACTデータを業務
データに変換して業務データベースに入力する場合と、
業務データベースから読み出した業務データをEDIF
ACTデータに変換して取引相手に転送する場合とに分
けて説明する。
Tデータ及びユーザデータ(業務データ)間の変換方法
を、取引相手から受信したEDIFACTデータを業務
データに変換して業務データベースに入力する場合と、
業務データベースから読み出した業務データをEDIF
ACTデータに変換して取引相手に転送する場合とに分
けて説明する。
【0038】最初に、受信したEDIFACTデータを
ユーザデータに変換してデータベースに登録する例につ
いて説明する。ここで、受信したEDIFACTデータ
は、図2及び図3に示されるものとする。まず、与えら
れたEDIFACTデータをオブジェクト構造に展開
し、次に、その展開されたオブジェクト構造にアクセス
してデータを読み取り、データベースに入力する。図9
及び図10は、EDIFACTデータのオブジェクト構
造への展開処理を示すフローチャートである。この処理
は、EDIFACTデータの入れ子構造に従って、ED
IFACTデータにおいて実際に発現しているデータを
オブジェクト階層構造に写像する。メッセージ内部のセ
グメントに関しては、図5で示されるようなメッセージ
・ダイアグラムの階層構造に従って、実際に発現してい
るデータをメッセージ内部セグメント・オブジェクトの
階層構造に写像する。
ユーザデータに変換してデータベースに登録する例につ
いて説明する。ここで、受信したEDIFACTデータ
は、図2及び図3に示されるものとする。まず、与えら
れたEDIFACTデータをオブジェクト構造に展開
し、次に、その展開されたオブジェクト構造にアクセス
してデータを読み取り、データベースに入力する。図9
及び図10は、EDIFACTデータのオブジェクト構
造への展開処理を示すフローチャートである。この処理
は、EDIFACTデータの入れ子構造に従って、ED
IFACTデータにおいて実際に発現しているデータを
オブジェクト階層構造に写像する。メッセージ内部のセ
グメントに関しては、図5で示されるようなメッセージ
・ダイアグラムの階層構造に従って、実際に発現してい
るデータをメッセージ内部セグメント・オブジェクトの
階層構造に写像する。
【0039】この展開処理では、まず、EDIFACT
で規定された各種の参照ディレクトリを一括してハード
ディスク206から読み取り、RAM204に格納する
(ステップ302)。次に、受信したEDIFACTデ
ータ全体を表すコネクション・オブジェクトを生成する
(ステップ304)。次いで、ハードディスク206に
格納されたEDIFACTデータから単一のセグメント
(タグコードから始まりセパレータ「’」で終わる一連
の文字列)を読み取り、RAM204に格納する(ステ
ップ306)。この後、このようにしてRAM204に
読み込まれたセグメントを識別し、そのセグメントに対
応するEDIFACT参照ディレクトリを、ステップ3
02で読み込んだディレクトリのなかから検索する(ス
テップ308)。セグメントの識別は、タグコードを確
認することによって行われる。
で規定された各種の参照ディレクトリを一括してハード
ディスク206から読み取り、RAM204に格納する
(ステップ302)。次に、受信したEDIFACTデ
ータ全体を表すコネクション・オブジェクトを生成する
(ステップ304)。次いで、ハードディスク206に
格納されたEDIFACTデータから単一のセグメント
(タグコードから始まりセパレータ「’」で終わる一連
の文字列)を読み取り、RAM204に格納する(ステ
ップ306)。この後、このようにしてRAM204に
読み込まれたセグメントを識別し、そのセグメントに対
応するEDIFACT参照ディレクトリを、ステップ3
02で読み込んだディレクトリのなかから検索する(ス
テップ308)。セグメントの識別は、タグコードを確
認することによって行われる。
【0040】読み込んだセグメントがインターチェンジ
開始セグメントであるとステップ308において識別さ
れた場合、ステップ310でYESと判断され、ステッ
プ311に処理が進む。ステップ311では、ステップ
308で検索されたディレクトリを参照してインターチ
ェンジ・オブジェクトが生成され、コネクション・オブ
ジェクトの下位に構造化される。この後、ステップ30
6に処理が戻り、EDIFACTデータから次のセグメ
ントがRAM204に読み込まれる。一方、読み込んだ
セグメントがメッセージ開始セグメントであるとステッ
プ308で識別された場合は、ステップ312でYES
と判断され、ステップ313に処理が進む。ステップ3
13では、ステップ308で検索されたディレクトリを
参照してメッセージ・オブジェクトが生成され、ステッ
プ311で生成されたインターチェンジ・オブジェクト
の下位に構造化される。この後、ステップ306に処理
が戻り、EDIFACTデータから次のセグメントがR
AM204に読み込まれる。読み込んだセグメントがメ
ッセージ内部セグメントであるとステップ308で識別
された場合は、ステップ314でYESと判断され、図
10のステップ320に処理が進む。
開始セグメントであるとステップ308において識別さ
れた場合、ステップ310でYESと判断され、ステッ
プ311に処理が進む。ステップ311では、ステップ
308で検索されたディレクトリを参照してインターチ
ェンジ・オブジェクトが生成され、コネクション・オブ
ジェクトの下位に構造化される。この後、ステップ30
6に処理が戻り、EDIFACTデータから次のセグメ
ントがRAM204に読み込まれる。一方、読み込んだ
セグメントがメッセージ開始セグメントであるとステッ
プ308で識別された場合は、ステップ312でYES
と判断され、ステップ313に処理が進む。ステップ3
13では、ステップ308で検索されたディレクトリを
参照してメッセージ・オブジェクトが生成され、ステッ
プ311で生成されたインターチェンジ・オブジェクト
の下位に構造化される。この後、ステップ306に処理
が戻り、EDIFACTデータから次のセグメントがR
AM204に読み込まれる。読み込んだセグメントがメ
ッセージ内部セグメントであるとステップ308で識別
された場合は、ステップ314でYESと判断され、図
10のステップ320に処理が進む。
【0041】図10を参照して、ステップ320以下の
処理を説明する。メッセージ内部セグメントがRAM2
04に読み込まれると、そのセグメントに対応するメッ
セージ・ディレクトリを参照することにより、そのセグ
メントに対する階層番号が取得される。メッセージ・デ
ィレクトリの例は、図4に示されている。また、セグメ
ントの階層番号とは、図5のLevel列に示される番号で
ある。これにより、メッセージの階層構造上における当
該セグメントの位置が特定される(ステップ320)。
次に、読み込んだセグメントが前セグメントの繰返しか
否かが判断される(ステップ322)。YESと判断さ
れた場合は、前セグメント・オブジェクトに繰返しデー
タを追加する(ステップ323)。このように、繰返し
データを一つのオブジェクトに含めるのは、変換アプリ
ケーション10の開発者、すなわちライブラリ・プログ
ラム16のユーザの便宜のためである。繰返しセグメン
トに対して前セグメント・オブジェクトと別個のセグメ
ント・オブジェクトを生成する方式も採用することはで
きるが、本実施形態のように繰返しデータを一つのオブ
ジェクトに含める方が変換アプリケーション10の開発
者にとって利便性が高い。ステップ323の処理が完了
すると、ステップ306(図9)に処理が戻る。
処理を説明する。メッセージ内部セグメントがRAM2
04に読み込まれると、そのセグメントに対応するメッ
セージ・ディレクトリを参照することにより、そのセグ
メントに対する階層番号が取得される。メッセージ・デ
ィレクトリの例は、図4に示されている。また、セグメ
ントの階層番号とは、図5のLevel列に示される番号で
ある。これにより、メッセージの階層構造上における当
該セグメントの位置が特定される(ステップ320)。
次に、読み込んだセグメントが前セグメントの繰返しか
否かが判断される(ステップ322)。YESと判断さ
れた場合は、前セグメント・オブジェクトに繰返しデー
タを追加する(ステップ323)。このように、繰返し
データを一つのオブジェクトに含めるのは、変換アプリ
ケーション10の開発者、すなわちライブラリ・プログ
ラム16のユーザの便宜のためである。繰返しセグメン
トに対して前セグメント・オブジェクトと別個のセグメ
ント・オブジェクトを生成する方式も採用することはで
きるが、本実施形態のように繰返しデータを一つのオブ
ジェクトに含める方が変換アプリケーション10の開発
者にとって利便性が高い。ステップ323の処理が完了
すると、ステップ306(図9)に処理が戻る。
【0042】ステップ322でNOと判断された場合
は、前セグメントと現セグメントとの間で階層番号が比
較される(ステップ324)。この結果、前セグメント
と現セグメントの階層番号が等しい場合(ステップ32
6でYESと判断される場合)は、セグメント・オブジ
ェクトが生成され、前セグメントと同じ階層に構造化さ
れる(ステップ327)。前セグメントよりも現セグメ
ントの階層番号の方が大きい場合(ステップ328でY
ESと判断される場合)は、セグメント・オブジェクト
が生成され、前セグメントよりも下位の階層に構造化さ
れる(ステップ329)。ステップ327又は329が
完了すると、ステップ306(図9)に処理が戻る。
は、前セグメントと現セグメントとの間で階層番号が比
較される(ステップ324)。この結果、前セグメント
と現セグメントの階層番号が等しい場合(ステップ32
6でYESと判断される場合)は、セグメント・オブジ
ェクトが生成され、前セグメントと同じ階層に構造化さ
れる(ステップ327)。前セグメントよりも現セグメ
ントの階層番号の方が大きい場合(ステップ328でY
ESと判断される場合)は、セグメント・オブジェクト
が生成され、前セグメントよりも下位の階層に構造化さ
れる(ステップ329)。ステップ327又は329が
完了すると、ステップ306(図9)に処理が戻る。
【0043】前セグメントよりも現セグメントの階層番
号の方が小さい場合(ステップ328でNOと判断され
る場合)は、階層番号が現セグメントと同一の生成済セ
グメント・オブジェクトのなかから最も新しく生成され
たオブジェクトが検索され、特定される(ステップ33
0)。次いで、現セグメントが、ステップ330で特定
されたセグメント・オブジェクトの繰返しか否かが判断
される(ステップ332)。YESと判断された場合、
この特定されたオブジェクトに繰返しデータが追加され
る(ステップ333)。一方、ステップ332でNOと
判断された場合は、現セグメントに関してセグメント・
オブジェクトを生成した後、上記で特定した同一階層オ
ブジェクトの上位セグメント・オブジェクトを検索し、
生成したオブジェクトをその上位オブジェクトの下位階
層に構造化する(ステップ334)。ステップ333又
は334が完了すると、ステップ306(図9)に処理
が戻る。
号の方が小さい場合(ステップ328でNOと判断され
る場合)は、階層番号が現セグメントと同一の生成済セ
グメント・オブジェクトのなかから最も新しく生成され
たオブジェクトが検索され、特定される(ステップ33
0)。次いで、現セグメントが、ステップ330で特定
されたセグメント・オブジェクトの繰返しか否かが判断
される(ステップ332)。YESと判断された場合、
この特定されたオブジェクトに繰返しデータが追加され
る(ステップ333)。一方、ステップ332でNOと
判断された場合は、現セグメントに関してセグメント・
オブジェクトを生成した後、上記で特定した同一階層オ
ブジェクトの上位セグメント・オブジェクトを検索し、
生成したオブジェクトをその上位オブジェクトの下位階
層に構造化する(ステップ334)。ステップ333又
は334が完了すると、ステップ306(図9)に処理
が戻る。
【0044】再び図9を参照して説明を続ける。読み込
んだセグメントがメッセージ終了セグメントであるとス
テップ308で識別された場合は、ステップ316でY
ESと判断され、ステップ306に処理が戻る。ここで
再びEDIFACTデータから単一のセグメントが読み
取られ、ステップ308以下の処理が繰り返される。読
み込んだセグメントがインターチェンジ終了セグメント
であるとステップ308で識別された場合は、ステップ
318でYESと判断され、ステップ319に処理が進
む。ここでは、全セグメントの読込みが終了したか否か
が判断される。ここでYESと判断されれば、処理が終
了する。このとき、生成されたオブジェクト構造はRA
M204に格納されているが、これをハードディスク2
06に転送して記憶してもよい。一方、ステップ319
でNOと判断された場合は、ステップ306に処理が戻
り、再びEDIFACTデータから単一のセグメントが
読み取られ、ステップ308以下の処理が繰り返され
る。また、読み込んだセグメントがステップ308にお
いてインターチェンジ開始セグメント、メッセージ開始
セグメント、メッセージ内部セグメント、メッセージ終
了セグメント、インターチェンジ終了セグメントのいず
れとも識別されなかった場合は、どのセグメントにも該
当しない文字列データを読み込んだことになり、処理は
異常終了する。
んだセグメントがメッセージ終了セグメントであるとス
テップ308で識別された場合は、ステップ316でY
ESと判断され、ステップ306に処理が戻る。ここで
再びEDIFACTデータから単一のセグメントが読み
取られ、ステップ308以下の処理が繰り返される。読
み込んだセグメントがインターチェンジ終了セグメント
であるとステップ308で識別された場合は、ステップ
318でYESと判断され、ステップ319に処理が進
む。ここでは、全セグメントの読込みが終了したか否か
が判断される。ここでYESと判断されれば、処理が終
了する。このとき、生成されたオブジェクト構造はRA
M204に格納されているが、これをハードディスク2
06に転送して記憶してもよい。一方、ステップ319
でNOと判断された場合は、ステップ306に処理が戻
り、再びEDIFACTデータから単一のセグメントが
読み取られ、ステップ308以下の処理が繰り返され
る。また、読み込んだセグメントがステップ308にお
いてインターチェンジ開始セグメント、メッセージ開始
セグメント、メッセージ内部セグメント、メッセージ終
了セグメント、インターチェンジ終了セグメントのいず
れとも識別されなかった場合は、どのセグメントにも該
当しない文字列データを読み込んだことになり、処理は
異常終了する。
【0045】図11は、このようにして展開されたオブ
ジェクト構造の一例を示す模式図である。この図におい
てコネクション・オブジェクト161、インターチェン
ジ・オブジェクト162、メッセージ・オブジェクト1
63は、それぞれ、図1のCONNECTION111、INTERCHE
NGE112、MESSAGE113に対応する。図3と図11を
比較すると、図3に示されるEDIFACTデータの実
際に発現しているデータが、上述の展開処理により、こ
のEDIFACTデータの入れ子構造に従って、オブジ
ェクトの階層構造に写像されたことが分かる。また、メ
ッセージ内のセグメントについては、図5に示されるよ
うなメッセージ・ダイアグラムの階層構造に従って、図
3に示されるEDIFACTデータの実際に発現してい
るメッセージ内セグメントが、メッセージ内セグメント
・オブジェクトの階層構造に写像される。なお、図3の
各セグメント(一行毎)と図11の各セグメント・オブ
ジェクトとの対応は、セグメント・タグコード(図3で
は各行の先頭3文字、図11ではセグメント・オブジェ
クト枠の括弧内の3文字)で示されている。
ジェクト構造の一例を示す模式図である。この図におい
てコネクション・オブジェクト161、インターチェン
ジ・オブジェクト162、メッセージ・オブジェクト1
63は、それぞれ、図1のCONNECTION111、INTERCHE
NGE112、MESSAGE113に対応する。図3と図11を
比較すると、図3に示されるEDIFACTデータの実
際に発現しているデータが、上述の展開処理により、こ
のEDIFACTデータの入れ子構造に従って、オブジ
ェクトの階層構造に写像されたことが分かる。また、メ
ッセージ内のセグメントについては、図5に示されるよ
うなメッセージ・ダイアグラムの階層構造に従って、図
3に示されるEDIFACTデータの実際に発現してい
るメッセージ内セグメントが、メッセージ内セグメント
・オブジェクトの階層構造に写像される。なお、図3の
各セグメント(一行毎)と図11の各セグメント・オブ
ジェクトとの対応は、セグメント・タグコード(図3で
は各行の先頭3文字、図11ではセグメント・オブジェ
クト枠の括弧内の3文字)で示されている。
【0046】図12は、一つのセグメント・オブジェク
ト170の内部構造を一般的に示す模式図である。セグ
メント・オブジェクト170の内部実装171は、デー
タ部172と処理部173を含んでいる。これらの大部
分がオブジェクトの外側に対して隠蔽されている。
ト170の内部構造を一般的に示す模式図である。セグ
メント・オブジェクト170の内部実装171は、デー
タ部172と処理部173を含んでいる。これらの大部
分がオブジェクトの外側に対して隠蔽されている。
【0047】データ部172には、セグメント識別子
(タグコード)やそのセグメントに含まれるエレメント
・データのほかに、上位オブジェクトへの参照や下位セ
グメント・オブジェクトへの参照という、セグメント・
オブジェクトの階層構造上の位置を特定する情報が含ま
れている。従って、これらの情報を調べることにより、
一つのオブジェクトから階層構造をたどって、その上位
オブジェクトや下位オブジェクトにアクセスすることが
できる。実際、上述のステップ334では、このような
手法により上位オブジェクトへのアクセスが実現されて
いる。オブジェクトのデータ部にその上位オブジェクト
や下位オブジェクトへの参照が含まれているのは、コネ
クション・オブジェクト(下位オブジェクトへの参照の
みを含む)、インターチェンジ・オブジェクト、メッセ
ージ・オブジェクトに関しても同様である。また、デー
タ部172には、このセグメントに対応するセグメント
・ディレクトリへの参照も含まれている。従って、セグ
メント・オブジェクトにアクセスしてこの参照情報を調
べることにより、対応セグメント・ディレクトリにアク
セスすることができる。なお、この例では、データ部は
すべて非公開となっている。
(タグコード)やそのセグメントに含まれるエレメント
・データのほかに、上位オブジェクトへの参照や下位セ
グメント・オブジェクトへの参照という、セグメント・
オブジェクトの階層構造上の位置を特定する情報が含ま
れている。従って、これらの情報を調べることにより、
一つのオブジェクトから階層構造をたどって、その上位
オブジェクトや下位オブジェクトにアクセスすることが
できる。実際、上述のステップ334では、このような
手法により上位オブジェクトへのアクセスが実現されて
いる。オブジェクトのデータ部にその上位オブジェクト
や下位オブジェクトへの参照が含まれているのは、コネ
クション・オブジェクト(下位オブジェクトへの参照の
みを含む)、インターチェンジ・オブジェクト、メッセ
ージ・オブジェクトに関しても同様である。また、デー
タ部172には、このセグメントに対応するセグメント
・ディレクトリへの参照も含まれている。従って、セグ
メント・オブジェクトにアクセスしてこの参照情報を調
べることにより、対応セグメント・ディレクトリにアク
セスすることができる。なお、この例では、データ部は
すべて非公開となっている。
【0048】処理部173には、公開メソッドと非公開
メソッドの双方が含まれている。非公開メソッドには、
エレメント・データ読み込み関数および書き込み関数が
含まれている。公開メソッドには、エレメント・データ
取得関数、エレメント・データ登録関数、下位セグメン
ト・オブジェクト参照取得関数、および下位セグメント
・オブジェクト生成関数が含まれている。これらの公開
メソッドは、外部インタフェース174として機能す
る。
メソッドの双方が含まれている。非公開メソッドには、
エレメント・データ読み込み関数および書き込み関数が
含まれている。公開メソッドには、エレメント・データ
取得関数、エレメント・データ登録関数、下位セグメン
ト・オブジェクト参照取得関数、および下位セグメント
・オブジェクト生成関数が含まれている。これらの公開
メソッドは、外部インタフェース174として機能す
る。
【0049】オブジェクトの外側からこのオブジェクト
にアクセスするには、外部インターフェース174とし
て公開された上記のメソッドを用いる。例えば、後述す
るEDIFACTデータ読み取り処理においてセグメン
ト・オブジェクトにアクセスするには、インターフェー
ス174のうち、セグメント内エレメントデータを読み
込むエレメント・データ取得関数(get#ElelmentDataメ
ソッド)と、このセグメント・オブジェクトの下位階層
のセグメント・オブジェクトを参照するための下位セグ
メント・オブジェクト参照取得関数(Segmentsメソッ
ド)とを使用する。これにより、セグメント内のエレメ
ントデータを読み込むとともに、そのセグメントの下位
に位置するセグメントにアクセスすることが可能にな
る。
にアクセスするには、外部インターフェース174とし
て公開された上記のメソッドを用いる。例えば、後述す
るEDIFACTデータ読み取り処理においてセグメン
ト・オブジェクトにアクセスするには、インターフェー
ス174のうち、セグメント内エレメントデータを読み
込むエレメント・データ取得関数(get#ElelmentDataメ
ソッド)と、このセグメント・オブジェクトの下位階層
のセグメント・オブジェクトを参照するための下位セグ
メント・オブジェクト参照取得関数(Segmentsメソッ
ド)とを使用する。これにより、セグメント内のエレメ
ントデータを読み込むとともに、そのセグメントの下位
に位置するセグメントにアクセスすることが可能にな
る。
【0050】ライブラリ・プログラム16によるEDI
FACTデータ20のオブジェクト構造への展開処理
(図9及び図10)が終了すると、変換アプリケーショ
ン10は、展開されたオブジェクトからデータを読み取
る処理を行う。図13は、このような読取り処理を示す
フローチャートである。この処理は、変換アプリケーシ
ョン10のマッピングコード部14に記述された命令に
従って実行される。
FACTデータ20のオブジェクト構造への展開処理
(図9及び図10)が終了すると、変換アプリケーショ
ン10は、展開されたオブジェクトからデータを読み取
る処理を行う。図13は、このような読取り処理を示す
フローチャートである。この処理は、変換アプリケーシ
ョン10のマッピングコード部14に記述された命令に
従って実行される。
【0051】この読取り処理では、まず、コネクション
・オブジェクトにアクセスする(ステップ402)。こ
れにより、このコネクション・オブジェクトに実装され
たインターチェンジ・オブジェクトへの参照情報を調
べ、この参照情報に基づいて階層構造をたどり、一つの
インターチェンジ・オブジェクトにアクセスする(ステ
ップ404)。次いで、このインターチェンジ・オブジ
ェクトに実装されたメッセージ・オブジェクトへの参照
情報を調べて階層構造をたどり、一つのメッセージ・オ
ブジェクトにアクセスする(ステップ406)。次に、
このメッセージ・オブジェクトに実装されたセグメント
・オブジェクトへの参照情報を調べて階層構造をたど
り、一つセグメント・オブジェクトにアクセスする(ス
テップ408)。この後、このセグメント・オブジェク
トに含まれるエレメント・データを、業務データベース
40用の対応するデータ項目に取り出す(ステップ41
0)。このデータ項目は、RAM204に記憶される。
・オブジェクトにアクセスする(ステップ402)。こ
れにより、このコネクション・オブジェクトに実装され
たインターチェンジ・オブジェクトへの参照情報を調
べ、この参照情報に基づいて階層構造をたどり、一つの
インターチェンジ・オブジェクトにアクセスする(ステ
ップ404)。次いで、このインターチェンジ・オブジ
ェクトに実装されたメッセージ・オブジェクトへの参照
情報を調べて階層構造をたどり、一つのメッセージ・オ
ブジェクトにアクセスする(ステップ406)。次に、
このメッセージ・オブジェクトに実装されたセグメント
・オブジェクトへの参照情報を調べて階層構造をたど
り、一つセグメント・オブジェクトにアクセスする(ス
テップ408)。この後、このセグメント・オブジェク
トに含まれるエレメント・データを、業務データベース
40用の対応するデータ項目に取り出す(ステップ41
0)。このデータ項目は、RAM204に記憶される。
【0052】エレメント・データの取出しが終わると、
そのセグメント・オブジェクトに実装された下位セグメ
ント・オブジェクトへの参照情報を調べて階層構造をた
どり、一つの下位セグメント・オブジェクトにアクセス
する(ステップ412)。次いで、この下位セグメント
・オブジェクトから業務データベース40用の対応する
データ項目にエレメント・データが取り出される(ステ
ップ414)。このデータ項目も、RAM204に記憶
される。
そのセグメント・オブジェクトに実装された下位セグメ
ント・オブジェクトへの参照情報を調べて階層構造をた
どり、一つの下位セグメント・オブジェクトにアクセス
する(ステップ412)。次いで、この下位セグメント
・オブジェクトから業務データベース40用の対応する
データ項目にエレメント・データが取り出される(ステ
ップ414)。このデータ項目も、RAM204に記憶
される。
【0053】この後、ステップ408でアクセスしたセ
グメントの下位セグメント・オブジェクトをすべて処理
したか否かが判断される(ステップ416)。NOと判断
された場合、ステップ412に戻って、別の下位セグメ
ント・オブジェクトにアクセスする。すべての下位セグ
メント・オブジェクトが処理されるとステップ416で
YESと判断され、次に、メッセージに含まれる全ての
セグメントの処理が終了したか否かが判断される(ステ
ップ418)。未処理のセグメント・オブジェクトが残
っている場合は、処理がステップ408に戻る。この
後、未処理のセグメント・オブジェクトにアクセスが行
われ、以下、ステップ418に至るまでの処理が繰り返
される。
グメントの下位セグメント・オブジェクトをすべて処理
したか否かが判断される(ステップ416)。NOと判断
された場合、ステップ412に戻って、別の下位セグメ
ント・オブジェクトにアクセスする。すべての下位セグ
メント・オブジェクトが処理されるとステップ416で
YESと判断され、次に、メッセージに含まれる全ての
セグメントの処理が終了したか否かが判断される(ステ
ップ418)。未処理のセグメント・オブジェクトが残
っている場合は、処理がステップ408に戻る。この
後、未処理のセグメント・オブジェクトにアクセスが行
われ、以下、ステップ418に至るまでの処理が繰り返
される。
【0054】ステップ406でアクセスされたメッセー
ジ・オブジェクトに含まれるすべてのセグメント・オブ
ジェクトが処理されると、ステップ418でYESと判
断され、ステップ420に処理が進む。ここでは、イン
ターチェンジに含まれる全てのメッセージの処理が終了
したか否かが判断される。未処理のメッセージ・オブジ
ェクトが残っている場合は、処理がステップ406に戻
る。この後、未処理のメッセージ・オブジェクトにアク
セスが行われ、以下、ステップ420に至るまでの処理
が繰り返される。ステップ404でアクセスされたイン
ターチェンジ・オブジェクトに含まれるすべてのメッセ
ージ・オブジェクトが処理されると、ステップ420で
YESと判断され、ステップ422に処理が進む。ここ
では、コネクションに含まれる全てのインターチェンジ
の処理が終了したか否かが判断される。未処理のインタ
ーチェンジ・オブジェクトが残っている場合は、処理が
ステップ404に戻る。この後、未処理のインターチェ
ンジ・オブジェクトにアクセスが行われ、以下、ステッ
プ422に至るまでの処理が繰り返される。一方、コネ
クションに含まれる全てのインターチェンジの処理が終
了したとステップ422で判断されれば、処理が終了す
る。
ジ・オブジェクトに含まれるすべてのセグメント・オブ
ジェクトが処理されると、ステップ418でYESと判
断され、ステップ420に処理が進む。ここでは、イン
ターチェンジに含まれる全てのメッセージの処理が終了
したか否かが判断される。未処理のメッセージ・オブジ
ェクトが残っている場合は、処理がステップ406に戻
る。この後、未処理のメッセージ・オブジェクトにアク
セスが行われ、以下、ステップ420に至るまでの処理
が繰り返される。ステップ404でアクセスされたイン
ターチェンジ・オブジェクトに含まれるすべてのメッセ
ージ・オブジェクトが処理されると、ステップ420で
YESと判断され、ステップ422に処理が進む。ここ
では、コネクションに含まれる全てのインターチェンジ
の処理が終了したか否かが判断される。未処理のインタ
ーチェンジ・オブジェクトが残っている場合は、処理が
ステップ404に戻る。この後、未処理のインターチェ
ンジ・オブジェクトにアクセスが行われ、以下、ステッ
プ422に至るまでの処理が繰り返される。一方、コネ
クションに含まれる全てのインターチェンジの処理が終
了したとステップ422で判断されれば、処理が終了す
る。
【0055】図14は、図9及び図10に示される展開
処理および図13のデータ読取り処理の一部を処理記述
言語で記述した実際のコード例を示している。このよう
なコードが変換アプリケーション10のマッピング・コ
ード部14に含まれている。
処理および図13のデータ読取り処理の一部を処理記述
言語で記述した実際のコード例を示している。このよう
なコードが変換アプリケーション10のマッピング・コ
ード部14に含まれている。
【0056】コード180は、各オブジェクトの参照変
数を定義する。コード181は、通常の作業変数を定義
する。この作業変数は、本例では、業務データベース4
0で使用されているデータ項目である。コード182
は、コネクション・オブジェクトの生成をライブラリ・
プログラム16に命令する。コード183は、ファイル
名「SLSRPT.EDIFACT.DAT」で表されたEDIFACTデ
ータをコネクション・オブジェクト以下に展開するよう
にライブラリ16に命令する。この命令に従ってライブ
ラリ16が行う処理が、図9及び図10に示される展開
処理である。
数を定義する。コード181は、通常の作業変数を定義
する。この作業変数は、本例では、業務データベース4
0で使用されているデータ項目である。コード182
は、コネクション・オブジェクトの生成をライブラリ・
プログラム16に命令する。コード183は、ファイル
名「SLSRPT.EDIFACT.DAT」で表されたEDIFACTデ
ータをコネクション・オブジェクト以下に展開するよう
にライブラリ16に命令する。この命令に従ってライブ
ラリ16が行う処理が、図9及び図10に示される展開
処理である。
【0057】コード184は、展開後のコネクション・
オブジェクトから、一番目のインターチェンジ・オブジ
ェクトを参照するようにライブラリ16に命令する。コ
ード185は、このインターチェンジ・オブジェクトか
ら、一番目のメッセージ・オブジェクトを参照するよう
にライブラリ16に命令する。コード186は、このメ
ッセージ・オブジェクトから、セグメント・タグコード
「BGM」で示されるセグメント・オブジェクトを参照
するようにライブラリ16に命令する。コード187
は、このセグメント・オブジェクトに含まれるエレメン
ト・データのうち二番目のエレメント・データを変数V
11に取り出す。このデータは、図3において符号12
1で示されるエレメント項目データに対応している。従
って、変数V11には、値“ABC123”が入ること
になる。このように、EDIFACTデータを展開した
オブジェクト階層構造からデータを読み取り、ユーザが
使用するアプリケーション用の所定のデータ項目に取り
出すことにより、EDIFACTデータからユーザデー
タへの変換が実現されている。
オブジェクトから、一番目のインターチェンジ・オブジ
ェクトを参照するようにライブラリ16に命令する。コ
ード185は、このインターチェンジ・オブジェクトか
ら、一番目のメッセージ・オブジェクトを参照するよう
にライブラリ16に命令する。コード186は、このメ
ッセージ・オブジェクトから、セグメント・タグコード
「BGM」で示されるセグメント・オブジェクトを参照
するようにライブラリ16に命令する。コード187
は、このセグメント・オブジェクトに含まれるエレメン
ト・データのうち二番目のエレメント・データを変数V
11に取り出す。このデータは、図3において符号12
1で示されるエレメント項目データに対応している。従
って、変数V11には、値“ABC123”が入ること
になる。このように、EDIFACTデータを展開した
オブジェクト階層構造からデータを読み取り、ユーザが
使用するアプリケーション用の所定のデータ項目に取り
出すことにより、EDIFACTデータからユーザデー
タへの変換が実現されている。
【0058】このようにしてEDIFACTデータから
変換された一連のユーザデータは、変換アプリケーショ
ン10のデータアクセスコード部12に記述された命令
に従ってRAM204からハードディスク208に転送
され、業務データベース40に登録される。
変換された一連のユーザデータは、変換アプリケーショ
ン10のデータアクセスコード部12に記述された命令
に従ってRAM204からハードディスク208に転送
され、業務データベース40に登録される。
【0059】次に、ユーザデータからEDIFACTデ
ータ(ファイル)を生成する例を説明する。この場合、
最初にオブジェクト構造が生成され、次に、生成された
オブジェクト構造に基づいてユーザデータがEDIFA
CTデータへ変換される。
ータ(ファイル)を生成する例を説明する。この場合、
最初にオブジェクト構造が生成され、次に、生成された
オブジェクト構造に基づいてユーザデータがEDIFA
CTデータへ変換される。
【0060】図15は、オブジェクト構造の生成処理を
示すフローチャートである。この処理は、変換アプリケ
ーション10のマッピング・コード部14に記述された
命令に従って実行される。この処理は、業務データベー
ス40内のデータのうちEDIFACTデータとして実
際に発現させたいデータを、EDIFACTデータの入
れ子構造に従ってオブジェクト階層構造に写像する。メ
ッセージ内部のセグメントに関しては、図5で示される
ようなメッセージ・ダイアグラムの階層構造に従って、
実際に発現させたいデータをメッセージ内部セグメント
・オブジェクトの階層構造に写像する。
示すフローチャートである。この処理は、変換アプリケ
ーション10のマッピング・コード部14に記述された
命令に従って実行される。この処理は、業務データベー
ス40内のデータのうちEDIFACTデータとして実
際に発現させたいデータを、EDIFACTデータの入
れ子構造に従ってオブジェクト階層構造に写像する。メ
ッセージ内部のセグメントに関しては、図5で示される
ようなメッセージ・ダイアグラムの階層構造に従って、
実際に発現させたいデータをメッセージ内部セグメント
・オブジェクトの階層構造に写像する。
【0061】この処理では、まず、一つのコネクション
・オブジェクトを生成する(ステップ502)。次に、
一つのインターチェンジ・オブジェクトを生成し、生成
済コネクション・オブジェクトの下位に構造化する(ス
テップ504)。次いで、一つのメッセージ・オブジェ
クトを生成し、ステップ504で生成したインターチェ
ンジ・オブジェクトの下位に構造化する(ステップ50
6)。続いて、一つのセグメント・オブジェクトを生成
し、ステップ506で生成したメッセージ・オブジェク
トの下位に構造化する(ステップ508)。この後、生
成したセグメントに対応するユーザデータを業務データ
ベース40から読み取り、そのセグメント・オブジェク
トに登録する(ステップ510)。
・オブジェクトを生成する(ステップ502)。次に、
一つのインターチェンジ・オブジェクトを生成し、生成
済コネクション・オブジェクトの下位に構造化する(ス
テップ504)。次いで、一つのメッセージ・オブジェ
クトを生成し、ステップ504で生成したインターチェ
ンジ・オブジェクトの下位に構造化する(ステップ50
6)。続いて、一つのセグメント・オブジェクトを生成
し、ステップ506で生成したメッセージ・オブジェク
トの下位に構造化する(ステップ508)。この後、生
成したセグメントに対応するユーザデータを業務データ
ベース40から読み取り、そのセグメント・オブジェク
トに登録する(ステップ510)。
【0062】次いで、セグメント・オブジェクトの下位
に更にセグメント・オブジェクトが必要な場合は、一つ
の下位セグメント・オブジェクトを生成し、ステップ5
08で生成したセグメント・オブジェクトの下位に構造
化する(ステップ512)。この後、その下位セグメン
ト・オブジェクトに、その下位セグメントに対応するユ
ーザデータを登録する(ステップ514)。
に更にセグメント・オブジェクトが必要な場合は、一つ
の下位セグメント・オブジェクトを生成し、ステップ5
08で生成したセグメント・オブジェクトの下位に構造
化する(ステップ512)。この後、その下位セグメン
ト・オブジェクトに、その下位セグメントに対応するユ
ーザデータを登録する(ステップ514)。
【0063】この後、下位セグメント・オブジェクトが
全て生成されたか否かが判断され(ステップ516)、
NOの場合はステップ512に処理が戻り、下位セグメ
ントの生成及びデータ登録が繰り返される。ステップ5
16でYESと判断された場合は、セグメント・オブジ
ェクトが全て生成されたか否かが判断される(ステップ
518)。ここでNOと判断される場合はステップ50
8に処理が戻り、ステップ508からステップ518に
至るまでの処理が繰り返される。YESと判断された場
合は、メッセージが全て生成されたか否かが判断され
(ステップ520)、NOの場合はステップ506に処
理が戻り、ステップ506からステップ520に至るま
での処理が繰り返される。YESと判断された場合は、
インターチェンジが全て生成されたか否かが判断され
(ステップ522)、NOの場合はステップ504に処
理が戻り、ステップ504からステップ522に至るま
での処理が繰り返される。ステップ522でYESと判
断されれば、オブジェクト構造の生成が完了する。この
ようにして生成されたオブジェクト構造の例は、図11
に示される通りである。このオブジェクト構造は、RA
M204に格納されているが、オブジェクト構造の生成
後、ハードディスク206に転送してそこに記憶しても
よい。
全て生成されたか否かが判断され(ステップ516)、
NOの場合はステップ512に処理が戻り、下位セグメ
ントの生成及びデータ登録が繰り返される。ステップ5
16でYESと判断された場合は、セグメント・オブジ
ェクトが全て生成されたか否かが判断される(ステップ
518)。ここでNOと判断される場合はステップ50
8に処理が戻り、ステップ508からステップ518に
至るまでの処理が繰り返される。YESと判断された場
合は、メッセージが全て生成されたか否かが判断され
(ステップ520)、NOの場合はステップ506に処
理が戻り、ステップ506からステップ520に至るま
での処理が繰り返される。YESと判断された場合は、
インターチェンジが全て生成されたか否かが判断され
(ステップ522)、NOの場合はステップ504に処
理が戻り、ステップ504からステップ522に至るま
での処理が繰り返される。ステップ522でYESと判
断されれば、オブジェクト構造の生成が完了する。この
ようにして生成されたオブジェクト構造の例は、図11
に示される通りである。このオブジェクト構造は、RA
M204に格納されているが、オブジェクト構造の生成
後、ハードディスク206に転送してそこに記憶しても
よい。
【0064】上記の処理において、オブジェクト外部か
らの生成済オブジェクトへのアクセスは、図12に示さ
れるようなインターフェース174を通してだけ行われ
る。具体的には、セグメント内にエレメント・データを
書き込むエレメント・データ登録関数(put#ElelmentDa
taメソッド)と、このセグメント・オブジェクトの下位
階層にセグメント・オブジェクトを生成するための下位
セグメント・オブジェクト生成関数(CreateSegmentメ
ソッド)とが使用される。
らの生成済オブジェクトへのアクセスは、図12に示さ
れるようなインターフェース174を通してだけ行われ
る。具体的には、セグメント内にエレメント・データを
書き込むエレメント・データ登録関数(put#ElelmentDa
taメソッド)と、このセグメント・オブジェクトの下位
階層にセグメント・オブジェクトを生成するための下位
セグメント・オブジェクト生成関数(CreateSegmentメ
ソッド)とが使用される。
【0065】図16は、オブジェクト構造からEDIF
ACTデータを生成する処理を示すフローチャートであ
る。この処理は、マッピング・コード部14に記述され
た命令にしたがってライブラリ・プログラム16が実行
する。
ACTデータを生成する処理を示すフローチャートであ
る。この処理は、マッピング・コード部14に記述され
た命令にしたがってライブラリ・プログラム16が実行
する。
【0066】この生成処理では、まず、コネクション・
オブジェクトにアクセスする(ステップ602)。次い
で、コネクション・オブジェクトに実装されたインター
チェンジ・オブジェクトへの参照情報を調べて階層構造
をたどり、一つのインターチェンジ・オブジェクトにア
クセスする(ステップ604)。次に、このインターチ
ェンジ・オブジェクトに実装されたメッセージ・オブジ
ェクトへの参照情報を調べて階層構造をたどり、一つの
メッセージ・オブジェクトにアクセスする(ステップ6
06)。次いで、このメッセージ・オブジェクトに実装
されたセグメント・オブジェクトへの参照情報を調べて
階層構造をたどり、一つのセグメント・オブジェクトに
アクセスする(ステップ608)。この後、セグメント
に登録されたデータを読み取って文字コード変換し、E
DIFACT構文に従ったセパレータで前セグメントの
データと区分してRAM204に書き出す(ステップ6
10)。
オブジェクトにアクセスする(ステップ602)。次い
で、コネクション・オブジェクトに実装されたインター
チェンジ・オブジェクトへの参照情報を調べて階層構造
をたどり、一つのインターチェンジ・オブジェクトにア
クセスする(ステップ604)。次に、このインターチ
ェンジ・オブジェクトに実装されたメッセージ・オブジ
ェクトへの参照情報を調べて階層構造をたどり、一つの
メッセージ・オブジェクトにアクセスする(ステップ6
06)。次いで、このメッセージ・オブジェクトに実装
されたセグメント・オブジェクトへの参照情報を調べて
階層構造をたどり、一つのセグメント・オブジェクトに
アクセスする(ステップ608)。この後、セグメント
に登録されたデータを読み取って文字コード変換し、E
DIFACT構文に従ったセパレータで前セグメントの
データと区分してRAM204に書き出す(ステップ6
10)。
【0067】次に、メッセージに含まれる全てのセグメ
ントが書き出されたかどうかが判断され(ステップ61
2)、NOの場合はステップ608に処理が戻り、ステ
ップ608及び610の処理が繰り返される。一つのセ
グメントの下位に更にセグメントが存在する場合は、こ
れらの下位セグメントに対してステップ608及び61
0の処理が施される。例えば、一つのメッセージに複数
のセグメントが含まれ、これらのセグメントの下位にも
更にセグメントが存在している場合を考える。このよう
な場合、最上位セグメントの一つから階層構造をたどっ
てその最下位セグメントまで順次にステップ608及び
610の処理が施されていき、一つのセグメント・ツリ
ーの処理が終わったら、別の最上位セグメントから始ま
るツリーの処理が開始される。
ントが書き出されたかどうかが判断され(ステップ61
2)、NOの場合はステップ608に処理が戻り、ステ
ップ608及び610の処理が繰り返される。一つのセ
グメントの下位に更にセグメントが存在する場合は、こ
れらの下位セグメントに対してステップ608及び61
0の処理が施される。例えば、一つのメッセージに複数
のセグメントが含まれ、これらのセグメントの下位にも
更にセグメントが存在している場合を考える。このよう
な場合、最上位セグメントの一つから階層構造をたどっ
てその最下位セグメントまで順次にステップ608及び
610の処理が施されていき、一つのセグメント・ツリ
ーの処理が終わったら、別の最上位セグメントから始ま
るツリーの処理が開始される。
【0068】一つのメッセージに含まれるすべてのセグ
メントからデータが書き出されると、一つのメッセージ
の書き出しが完了したことになる。この場合(ステップ
612でYES)、インターチェンジに含まれる全ての
メッセージが書き出されたか否かが判断される(ステッ
プ614)。ここでNOと判断されると、ステップ60
6に処理が戻り、ステップ614に至るまでの処理が繰
り返される。インターチェンジに含まれる全てのメッセ
ージが書き出されると一つのインターチェンジの書き出
しが完了したことになる。この場合(ステップ614で
YES)、コネクションに含まれる全てのインターチェ
ンジが書き出されたか否かが判断される(ステップ61
6)。ここでNOと判断されると、ステップ604に処
理が戻り、ステップ616に至るまでの処理が繰り返さ
れる。一方、ステップ616でYESと判断されれば、
処理が終了する。このようにしてセグメントからRAM
204に書き出された一連のデータが、EDIFACT
データである。このEDIFACTデータは、ハードデ
ィスク206に転送してそこに格納してもよい。
メントからデータが書き出されると、一つのメッセージ
の書き出しが完了したことになる。この場合(ステップ
612でYES)、インターチェンジに含まれる全ての
メッセージが書き出されたか否かが判断される(ステッ
プ614)。ここでNOと判断されると、ステップ60
6に処理が戻り、ステップ614に至るまでの処理が繰
り返される。インターチェンジに含まれる全てのメッセ
ージが書き出されると一つのインターチェンジの書き出
しが完了したことになる。この場合(ステップ614で
YES)、コネクションに含まれる全てのインターチェ
ンジが書き出されたか否かが判断される(ステップ61
6)。ここでNOと判断されると、ステップ604に処
理が戻り、ステップ616に至るまでの処理が繰り返さ
れる。一方、ステップ616でYESと判断されれば、
処理が終了する。このようにしてセグメントからRAM
204に書き出された一連のデータが、EDIFACT
データである。このEDIFACTデータは、ハードデ
ィスク206に転送してそこに格納してもよい。
【0069】図17は、図15に示されるオブジェクト
構造生成処理の一部及び図16の変換処理を処理記述言
語で記述した実際のコード例を示している。マッピング
・コード部14には、このようなコードが含まれる。図
17のコード190は、各オブジェクトの参照変数を定
義する。コード191は、コネクション・オブジェクト
をライブラリ・プログラム16に生成させる。コード1
92は、生成済コネクション・オブジェクトの下位に一
つのインターチェンジ・オブジェクトを生成して追加す
るようにライブラリ16に命令する。コード193は、
このインターチェンジ・オブジェクトの下位に一つのメ
ッセージ・オブジェクトを生成して追加するようにライ
ブラリ16に命令する。コード194は、このメッセー
ジ・オブジェクトの下位にセグメント・タグコード「CU
X」で示されるセグメント・オブジェクトを生成して追
加するようにライブラリ16に命令する。コード195
は、このセグメント・オブジェクトの第1番目の複合エ
レメント内の第2エレメントに対し、対応ユーザデータ
である文字列データ「YEN」を登録するようにライブラ
リ16に命令する。以下、発現させたい全てのセグメン
ト・オブジェクトに対し同様の処理を繰り返す。この結
果、EDIFACTデータに変換すべきユーザデータを
含んだオブジェクトの階層構造が生成される。コード1
96は、生成したオブジェクト構造の最上位オブジェク
トであるコネクション・オブジェクトに対し、ファイル
名“SLSRPT.EDIFACT.DAT"を付けたEDIFACTデー
タの生成処理を呼び出す。この生成処理は、図16に示
されるものであり、ライブラリ16が実行する。
構造生成処理の一部及び図16の変換処理を処理記述言
語で記述した実際のコード例を示している。マッピング
・コード部14には、このようなコードが含まれる。図
17のコード190は、各オブジェクトの参照変数を定
義する。コード191は、コネクション・オブジェクト
をライブラリ・プログラム16に生成させる。コード1
92は、生成済コネクション・オブジェクトの下位に一
つのインターチェンジ・オブジェクトを生成して追加す
るようにライブラリ16に命令する。コード193は、
このインターチェンジ・オブジェクトの下位に一つのメ
ッセージ・オブジェクトを生成して追加するようにライ
ブラリ16に命令する。コード194は、このメッセー
ジ・オブジェクトの下位にセグメント・タグコード「CU
X」で示されるセグメント・オブジェクトを生成して追
加するようにライブラリ16に命令する。コード195
は、このセグメント・オブジェクトの第1番目の複合エ
レメント内の第2エレメントに対し、対応ユーザデータ
である文字列データ「YEN」を登録するようにライブラ
リ16に命令する。以下、発現させたい全てのセグメン
ト・オブジェクトに対し同様の処理を繰り返す。この結
果、EDIFACTデータに変換すべきユーザデータを
含んだオブジェクトの階層構造が生成される。コード1
96は、生成したオブジェクト構造の最上位オブジェク
トであるコネクション・オブジェクトに対し、ファイル
名“SLSRPT.EDIFACT.DAT"を付けたEDIFACTデー
タの生成処理を呼び出す。この生成処理は、図16に示
されるものであり、ライブラリ16が実行する。
【0070】このようにして変換されたEDIFACT
データの例は、図2に示されている。生成したオブジェ
クト構造からEDIFACTデータが生成される際、図
17のコード195によって登録されたデータ値は、変
換後のEDIFACTデータ上では図3において参照番
号122で示される文字列「YEN」として現れる。
データの例は、図2に示されている。生成したオブジェ
クト構造からEDIFACTデータが生成される際、図
17のコード195によって登録されたデータ値は、変
換後のEDIFACTデータ上では図3において参照番
号122で示される文字列「YEN」として現れる。
【0071】このように、変換すべきユーザデータを含
んだオブジェクトの階層構造をEDIFACT構造に沿
って生成し、各セグメント・オブジェクトからデータを
取り出してEDIFACTルールに沿って編集すること
により、ユーザデータからEDIFACTデータへの変
換が実現される。変換・生成されたEDIFACTデー
タファイルは、例えば、通信システム30を介して取引
相手に転送することができる。
んだオブジェクトの階層構造をEDIFACT構造に沿
って生成し、各セグメント・オブジェクトからデータを
取り出してEDIFACTルールに沿って編集すること
により、ユーザデータからEDIFACTデータへの変
換が実現される。変換・生成されたEDIFACTデー
タファイルは、例えば、通信システム30を介して取引
相手に転送することができる。
【0072】なお、この発明を実装する対象の具体例
を、以下の表に示す。
を、以下の表に示す。
【0073】
【表1】
【0074】本実施形態のデータ変換方法は、以下のよ
うな利点を有している。すなわち、従来は、トランスレ
ータが所定形式のファイルとEDIFACTファイル間
で変換を行っていたため、変換される個々のデータに業
務システムの開発者(トランスレータのユーザ)がアク
セスすることは困難であった。このため、従来の業務シ
ステムでは、トランスレータが行う変換処理のほかに、
トランスレータが扱う形式のファイルと業務ファイルと
の間で変換処理を行う必要があった。しかしながら、本
実施形態ではEDIFACT構造を写像したオブジェク
ト階層構造が生成されるので、ユーザは、オブジェクト
・メソッドを用いたインタフェース技法を用いて個々の
オブジェクトに含まれるデータ要素に容易にアクセスす
ることができる。従って、ユーザは、業務システムに適
したプログラムを処理記述言語を用いて記述すること
で、業務システムで使用されるユーザデータとEDIF
ACTデータとの間で直接変換を実行することができ、
これにより業務システムにおける処理の高速化を図るこ
とができる。
うな利点を有している。すなわち、従来は、トランスレ
ータが所定形式のファイルとEDIFACTファイル間
で変換を行っていたため、変換される個々のデータに業
務システムの開発者(トランスレータのユーザ)がアク
セスすることは困難であった。このため、従来の業務シ
ステムでは、トランスレータが行う変換処理のほかに、
トランスレータが扱う形式のファイルと業務ファイルと
の間で変換処理を行う必要があった。しかしながら、本
実施形態ではEDIFACT構造を写像したオブジェク
ト階層構造が生成されるので、ユーザは、オブジェクト
・メソッドを用いたインタフェース技法を用いて個々の
オブジェクトに含まれるデータ要素に容易にアクセスす
ることができる。従って、ユーザは、業務システムに適
したプログラムを処理記述言語を用いて記述すること
で、業務システムで使用されるユーザデータとEDIF
ACTデータとの間で直接変換を実行することができ、
これにより業務システムにおける処理の高速化を図るこ
とができる。
【0075】また、EDIFACTメッセージ構造定義
は複雑さを増してきており、従来のマッピング技術では
処理しきれない部分が生じたり、複数回のマッピングを
必要とするケースが生じている。本発明では、EDIF
ACTデータ構造を写像したオブジェクト階層構造を生
成するので、この階層構造をたどることによって、複雑
なマッピングも実現することができる。これにより、複
雑な構造のEDIFACTデータも比較的容易に変換す
ることができる。
は複雑さを増してきており、従来のマッピング技術では
処理しきれない部分が生じたり、複数回のマッピングを
必要とするケースが生じている。本発明では、EDIF
ACTデータ構造を写像したオブジェクト階層構造を生
成するので、この階層構造をたどることによって、複雑
なマッピングも実現することができる。これにより、複
雑な構造のEDIFACTデータも比較的容易に変換す
ることができる。
【0076】また、EDIFACTの新構文規約(シン
タックスルールバージョン4)では、EDI交換データ
に、バイナリデータや、暗号化され電子署名を持つセキ
ュリティデータの組み込みが定義され、従来のマッピン
グ手法とは相容れない部分が発生している。本発明で
は、オブジェクトの中にバイナリデータへの参照情報を
含めることで、このようなEDIFACTデータであっ
ても容易に扱うことができる。
タックスルールバージョン4)では、EDI交換データ
に、バイナリデータや、暗号化され電子署名を持つセキ
ュリティデータの組み込みが定義され、従来のマッピン
グ手法とは相容れない部分が発生している。本発明で
は、オブジェクトの中にバイナリデータへの参照情報を
含めることで、このようなEDIFACTデータであっ
ても容易に扱うことができる。
【0077】また、EDIFACTの新構文規約に追加
されたインタラクティブEDIが目的とする会話的処理
において応答時間を満足することは、従来のバッチ的変
換方式ではEDIFACT構造にユーザがアクセスでき
ないため、困難である。本発明によれば、EDIFAC
Tデータ構造がオブジェクト階層構造に写像されてお
り、この階層構造をたどることにより各種のデータにユ
ーザが容易にアクセスできるので、このような会話的処
理にも柔軟に対処することができる。
されたインタラクティブEDIが目的とする会話的処理
において応答時間を満足することは、従来のバッチ的変
換方式ではEDIFACT構造にユーザがアクセスでき
ないため、困難である。本発明によれば、EDIFAC
Tデータ構造がオブジェクト階層構造に写像されてお
り、この階層構造をたどることにより各種のデータにユ
ーザが容易にアクセスできるので、このような会話的処
理にも柔軟に対処することができる。
【0078】
【発明の効果】このように、本発明によれば、EDIF
ACTデータ構造を写像したオブジェクト構造が生成さ
れ、オブジェクト・インターフェースを用いることで各
オブジェクトに容易にアクセスできるので、ユーザは、
変換すべきデータを直接扱うことができ、中間データを
介さずにEDIFACTデータとユーザデータとの変換
を行うことができる。これにより、EDIFACTを使
用するユーザは、柔軟で適用範囲の広いプログラム開発
を行うことができる。この結果、本発明は、種々の業務
システムに柔軟に適用することが可能である。
ACTデータ構造を写像したオブジェクト構造が生成さ
れ、オブジェクト・インターフェースを用いることで各
オブジェクトに容易にアクセスできるので、ユーザは、
変換すべきデータを直接扱うことができ、中間データを
介さずにEDIFACTデータとユーザデータとの変換
を行うことができる。これにより、EDIFACTを使
用するユーザは、柔軟で適用範囲の広いプログラム開発
を行うことができる。この結果、本発明は、種々の業務
システムに柔軟に適用することが可能である。
【図1】EDIFACTデータ構造を表す模式図であ
る。
る。
【図2】EDIFACTデータの一例を示す図である。
【図3】図2のEDIFACTデータ例を分かりやすく
表記し直した図である。
表記し直した図である。
【図4】EDIFACT標準ディレクトリに含まれるメ
ッセージディレクトリの一例を示す図である。
ッセージディレクトリの一例を示す図である。
【図5】図4に規定されるメッセージ構造をダイアグラ
ムで示した図である。
ムで示した図である。
【図6】EDIFACT参照ディレクトリに含まれるセ
グメントディレクトリの一例を示す図である。
グメントディレクトリの一例を示す図である。
【図7】本発明に係るEDIFACTデータ及びユーザ
データ間の変換方法が実施される業務システムを示す概
略図である。
データ間の変換方法が実施される業務システムを示す概
略図である。
【図8】図7の業務システムを実現することの可能なコ
ンピュータ・システムのハードウェア構成例を示す模式
図である。
ンピュータ・システムのハードウェア構成例を示す模式
図である。
【図9】EDIFACTデータのオブジェクト構造への
展開処理を示すフローチャートである。
展開処理を示すフローチャートである。
【図10】EDIFACTデータのオブジェクト構造へ
の展開処理を示すフローチャートである。
の展開処理を示すフローチャートである。
【図11】EDIFACT構造を写像したオブジェクト
構造の一例を示す模式図である。
構造の一例を示す模式図である。
【図12】セグメント・オブジェクトの内部構造を示す
模式図である。
模式図である。
【図13】EDIFACTデータを展開したオブジェク
ト構造からデータを読み取る処理を示すフローチャート
である。
ト構造からデータを読み取る処理を示すフローチャート
である。
【図14】EDIFACTデータのオブジェクト展開処
理およびユーザデータ読取り処理の一部を処理記述言語
で記述したコード例を示す図である。
理およびユーザデータ読取り処理の一部を処理記述言語
で記述したコード例を示す図である。
【図15】オブジェクト構造の生成処理を示すフローチ
ャートである。
ャートである。
【図16】オブジェクト構造からEDIFACTデータ
を生成する処理を示すフローチャートである。
を生成する処理を示すフローチャートである。
【図17】オブジェクト構造生成処理の一部及びEDI
FACTデータの生成処理を処理記述言語で記述したコ
ード例を示す図である。
FACTデータの生成処理を処理記述言語で記述したコ
ード例を示す図である。
【図18】従来の業務システムの一例を示す概略図であ
る。
る。
200…コンピュータ・システム、202…プロセッ
サ、204…ランダム・アクセス・メモリ、206、2
08…ハードディスク、210…入出力装置、212…
通信装置、214…CD−ROM装置。
サ、204…ランダム・アクセス・メモリ、206、2
08…ハードディスク、210…入出力装置、212…
通信装置、214…CD−ROM装置。
Claims (8)
- 【請求項1】 EDIFACTデータと所定のユーザデ
ータとの間の変換を実行する方法であって、 処理記述言語で記述された命令に従って、EDIFAC
Tデータ構造を写像したオブジェクト階層構造を生成す
るステップと、 前記オブジェクト階層構造を第1の記憶装置に格納する
ステップと、 処理記述言語で記述された命令に従って、前記オブジェ
クト階層構造に含まれる一以上のオブジェクトからデー
タを取り出し、前記EDIFACTデータ又はユーザデ
ータを生成するステップであって、データが取り出され
る前記オブジェクトは、インタフェースとして公開され
たメソッドを含んでいるステップと、 生成された前記EDIFACTデータ又はユーザデータ
を第2の記憶装置に格納するステップと、を備える方
法。 - 【請求項2】 EDIFACTデータと所定のユーザデ
ータとの間の変換をコンピュータに実行させるためのプ
ログラムが記録されたコンピュータ読取り可能な記録媒
体であって、前記プログラムは、 処理記述言語で記述された命令に従って、EDIFAC
Tデータ構造を写像したオブジェクト階層構造を生成す
るステップと、 前記オブジェクト階層構造を第1の記憶装置に格納する
ステップと、 処理記述言語で記述された命令に従って、前記オブジェ
クト階層構造に含まれる一以上のオブジェクトからデー
タを取り出し、前記EDIFACTデータ又はユーザデ
ータを生成するステップであって、データが取り出され
る前記オブジェクトは、インタフェースとして公開され
たメソッドを含んでいるステップと、 生成された前記EDIFACTデータ又はユーザデータ
を第2の記憶装置に格納するステップと、をコンピュー
タに実行させる、コンピュータ読取り可能な記録媒体。 - 【請求項3】 EDIFACTデータと所定のユーザデ
ータとの間の変換をコンピュータに実行させるためのプ
ログラムが記録されたコンピュータ読取り可能な記録媒
体であって、前記プログラムは、 第1の記憶装置に記憶されたEDIFACTデータをユ
ーザデータに変換する場合に、前記第1記憶装置から前
記EDIFACTデータを読み取るステップと、処理記
述言語で記述された命令に従って、前記EDIFACT
データの構造を写像したオブジェクト階層構造を生成す
るステップと、前記オブジェクト階層構造を第2の記憶
装置に格納するステップと、処理記述言語で記述された
命令に従って、前記オブジェクト階層構造に含まれる一
以上のオブジェクトからデータを取り出し、ユーザデー
タを生成するステップであって、前記データが取り出さ
れる前記オブジェクトは、インタフェースとして公開さ
れたメソッドを含んでいるステップと、生成された前記
ユーザデータを第3の記憶装置に格納するステップと、
前記コンピュータに実行させ、 第4の記憶装置に記憶されたユーザデータをEDIFA
CTデータに変換する場合に、前記第4記憶装置からユ
ーザデータを読み取るステップと、処理記述言語で記述
された命令に従って、EDIFACTデータ構造を写像
したオブジェクト階層構造であって前記ユーザデータが
登録されたオブジェクトを含むものを生成するステップ
と、前記オブジェクト階層構造を第5の記憶装置に格納
するステップと、処理記述言語で記述された命令に従っ
て、前記オブジェクト階層構造に含まれる一以上のオブ
ジェクトからデータを取り出し、EDIFACTデータ
を生成するステップであって、前記データが取り出され
る前記オブジェクトは、インタフェースとして公開され
たメソッドを含んでいるステップと、生成された前記E
DIFACTデータを第6の記憶装置に格納するステッ
プと、を前記コンピュータに実行させる、コンピュータ
読取り可能な記録媒体。 - 【請求項4】 EDIFACTデータと所定のユーザデ
ータとの間の変換をコンピュータに実行させる処理記述
言語で記述された変換アプリケーションから利用可能な
ライブラリ・プログラムが記録されたコンピュータ読取
り可能な記録媒体であって、前記ライブラリ・プログラ
ムは、 前記変換アプリケーションの命令に従って、EDIFA
CTデータ構造を写像したオブジェクト階層構造を生成
するステップと、 前記変換アプリケーションの命令に従って、前記オブジ
ェクト階層構造に含まれる一以上のオブジェクトからデ
ータを取り出すステップであって、データが取り出され
る前記オブジェクトは、外部インタフェースとして公開
されたメソッドを含んでいるステップと、をコンピュー
タに実行させる、コンピュータ読取り可能な記録媒体。 - 【請求項5】 前記ライブラリ・プログラムは、前記一
以上のオブジェクトから取り出したデータを用いてED
IFACT形式のファイルを生成するステップをコンピ
ュータに更に実行させる、請求項4記載のコンピュータ
読取り可能な記録媒体。 - 【請求項6】 EDIFACTデータと所定のユーザデ
ータとの間の変換をコンピュータに実行させる処理記述
言語で記述された変換アプリケーションから利用可能な
ライブラリ・プログラムが記録されたコンピュータ読取
り可能な記録媒体であって、前記ライブラリ・プログラ
ムは、 第1の記憶装置に記憶されたEDIFACTデータをユ
ーザデータに変換する場合に、前記第1記憶装置から前
記EDIFACTデータを読み取るステップと、前記変
換アプリケーションの命令に従って、前記EDIFAC
Tデータの構造を写像したオブジェクト階層構造を生成
するステップと、前記オブジェクト階層構造を第2の記
憶装置に格納するステップと、前記変換アプリケーショ
ンの命令に従って、前記オブジェクト階層構造に含まれ
る一以上のオブジェクトからデータを取り出すステップ
であって、前記データが取り出される前記オブジェクト
は、インタフェースとして公開されたメソッドを含んで
いるステップと、を前記コンピュータに実行させ、 第3の記憶装置に記憶されたユーザデータをEDIFA
CTデータに変換する場合に、EDIFACTデータ構
造を写像したオブジェクト階層構造であって前記ユーザ
データが登録されたオブジェクトを含むものを前記変換
アプリケーションの命令に従って生成するステップと、
前記オブジェクト階層構造を第4の記憶装置に格納する
ステップと、前記変換アプリケーションの命令に従っ
て、前記オブジェクト階層構造に含まれる一以上のオブ
ジェクトからデータを取り出し、EDIFACTデータ
を生成するステップであって、前記データが取り出され
る前記オブジェクトは、インタフェースとして公開され
たメソッドを含んでいるステップと、を前記コンピュー
タに実行させる、コンピュータ読取り可能な記録媒体。 - 【請求項7】 EDIFACTデータと所定のユーザデ
ータとの間の変換を実行する方法であって、 第1の記憶装置に記憶され、ユーザデータとEDIFA
CTデータとの写像関係を記述したマッピング・パラメ
ータを前記第1記憶装置から読み取るステップと、 前記マッピング・パラメータに従って、EDIFACT
データ構造を写像したオブジェクト階層構造を生成する
ステップと、 前記オブジェクト階層構造を第2の記憶装置に格納する
ステップと、 前記オブジェクト階層構造に含まれる一以上のオブジェ
クトからデータを取り出し、前記マッピング・パラメー
タに従って、前記EDIFACTデータ又はユーザデー
タを生成するステップであって、データが取り出される
前記オブジェクトは、インタフェースとして公開された
メソッドを含んでいるステップと、 生成された前記EDIFACTデータ又はユーザデータ
を第3の記憶装置に格納するステップと、を備える方
法。 - 【請求項8】 EDIFACTデータと所定のユーザデ
ータとの間の変換をコンピュータに実行させるためのプ
ログラムが記録されたコンピュータ読取り可能な記録媒
体であって、前記プログラムは、 第1の記憶装置に記憶され、ユーザデータとEDIFA
CTデータとの写像関係を記述したマッピング・パラメ
ータを前記第1記憶装置から読み取るステップと、 第2の記憶装置に記憶されたEDIFACTデータをユ
ーザデータに変換する場合に、前記第2記憶装置から前
記EDIFACTデータを読み取るステップと、前記E
DIFACTデータの構造を写像したオブジェクト階層
構造を生成するステップと、前記オブジェクト階層構造
を第3の記憶装置に格納するステップと、前記オブジェ
クト階層構造に含まれる一以上のオブジェクトからデー
タを取り出し、前記マッピング・パラメータに従ってユ
ーザデータを生成するステップであって、前記データが
取り出される前記オブジェクトは、インタフェースとし
て公開されたメソッドを含んでいるステップと、生成さ
れた前記ユーザデータを第4の記憶装置に格納するステ
ップと、を前記コンピュータに実行させ、 第5の記憶装置に記憶されたユーザデータをEDIFA
CTデータに変換する場合に、前記第5記憶装置からユ
ーザデータを読み取るステップと、EDIFACTデー
タ構造を写像したオブジェクト階層構造であって前記ユ
ーザデータが登録されたオブジェクトを含むものを、前
記マッピング・パラメータに従って生成するステップ
と、前記オブジェクト階層構造を第6の記憶装置に格納
するステップと、前記オブジェクト階層構造に含まれる
一以上のオブジェクトからデータを取り出してEDIF
ACTデータを生成するステップであって、前記データ
が取り出される前記オブジェクトは、インタフェースと
して公開されたメソッドを含んでいるステップと、生成
された前記EDIFACTデータを第7の記憶装置に格
納するステップと、を前記コンピュータに実行させる、
コンピュータ読取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP26710599A JP2001092711A (ja) | 1999-09-21 | 1999-09-21 | Edifactデータ及びユーザデータ間の変換方法およびこの方法をコンピュータに実行させるためのプログラムを記録した記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP26710599A JP2001092711A (ja) | 1999-09-21 | 1999-09-21 | Edifactデータ及びユーザデータ間の変換方法およびこの方法をコンピュータに実行させるためのプログラムを記録した記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001092711A true JP2001092711A (ja) | 2001-04-06 |
Family
ID=17440144
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP26710599A Pending JP2001092711A (ja) | 1999-09-21 | 1999-09-21 | Edifactデータ及びユーザデータ間の変換方法およびこの方法をコンピュータに実行させるためのプログラムを記録した記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2001092711A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002342593A (ja) * | 2001-05-16 | 2002-11-29 | Nippon Yunishisu Kk | データ交換装置、データ交換方法及びデータ交換プログラム |
JP2002349865A (ja) * | 2001-05-30 | 2002-12-04 | Matsushita Electric Ind Co Ltd | 加熱方法処理システムおよびプログラム |
-
1999
- 1999-09-21 JP JP26710599A patent/JP2001092711A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002342593A (ja) * | 2001-05-16 | 2002-11-29 | Nippon Yunishisu Kk | データ交換装置、データ交換方法及びデータ交換プログラム |
JP2002349865A (ja) * | 2001-05-30 | 2002-12-04 | Matsushita Electric Ind Co Ltd | 加熱方法処理システムおよびプログラム |
JP4655413B2 (ja) * | 2001-05-30 | 2011-03-23 | パナソニック株式会社 | 加熱方法処理システムおよびプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7953766B2 (en) | Generation of attribute listings for unique identification of data subsets | |
US6947947B2 (en) | Method for adding metadata to data | |
US7970944B2 (en) | System and method for platform and language-independent development and delivery of page-based content | |
US7844642B2 (en) | Method and structure for storing data of an XML-document in a relational database | |
US5632031A (en) | Method and means for encoding storing and retrieving hierarchical data processing information for a computer system | |
US5664181A (en) | Computer program product and program storage device for a data transmission dictionary for encoding, storing, and retrieving hierarchical data processing information for a computer system | |
US7559052B2 (en) | Meta-model for associating multiple physical representations of logically equivalent entities in messaging and other applications | |
US9032002B2 (en) | Single file serialization for physical and logical meta-model information | |
US20080109250A1 (en) | System and method for creating and rendering DICOM structured clinical reporting via the internet | |
JPH10326255A (ja) | 言語から独立したメッセージの操作方法 | |
US20110314456A1 (en) | System and Method for Mapping Structured Document to Structured Data of Program Language and Program for Executing Its Method | |
JP5745932B2 (ja) | グラフデータに写像の像であるオブジェクトに対する操作を反映する方法、プログラム、および、システム | |
US6590674B1 (en) | Method and apparatus for creating and maintaining graphic representations of documents under a universal format | |
US6691309B1 (en) | Long term archiving of digital information | |
WO2006103777A1 (ja) | 構造化データ変換方式 | |
CN115562642A (zh) | 基于数据库和Mustache模板引擎的生成代码方法 | |
US6785682B2 (en) | Data processing system, method and computer program product | |
JP2001092711A (ja) | Edifactデータ及びユーザデータ間の変換方法およびこの方法をコンピュータに実行させるためのプログラムを記録した記録媒体 | |
US20030131071A1 (en) | Electronic document interchange document object model | |
US20020165879A1 (en) | TD/TDX universal data presentation system and method | |
JP2001034513A (ja) | データ変換方法および装置並びにデータ変換プログラムを格納した記憶媒体 | |
AU2001216013B2 (en) | Method and system for translating data associated with a relational database | |
JP3544607B2 (ja) | データ構造−ハイパーテキスト変換装置 | |
JP4261373B2 (ja) | 階層型データベース管理システム、階層型データベース管理方法及び階層型データベース管理プログラム | |
JPH022456A (ja) | データ編集方法とその装置 |