サンプル:TRADACOMS 請求書をXML に変換する

www.altova.com このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  データソースとターゲット > MapForce と EDI > TRADACOMS >

サンプル:TRADACOMS 請求書をXML に変換する

このサンプルは、TRADACOMS 請求書ファイルのデータを XML フォーマットに変換するマッピングデザインの作成方法について説明します。 このサンプルで作成されたマッピングデザインファイルは、以下のパスで参照することができます: <マイ ドキュメント>\Altova\MapForce2019\MapForceExamples\TRADACOMS_Invoice.mfd

mfdTRADACOMS_Invoice

TRADACOMS_Invoice.mfd

マッピングを以下を目標とします:

 

1.ソース TRADACOMS ファイル (INVFIL.edi) を既存のスキーマ (Order.xsd) に対して有効な XML ファイルに変換します。MapForce Examples フォルダー (<マイ ドキュメント>\Altova\MapForce2019\MapForceExamples\) 内にソース TRADACOMS ファイルとスキーマファイル (Order.xsd) があります。
2.TRADACOMS ファイル内の 日付には、 decimal フォーマットがあり、ターゲット XML ファイル内の xs:dateTime フォーマットに変換される必要があります。
3.注文のオーダー内の各ラインアイテムに対して、税金は、3桁の小数点を持つ小数の値まで計算される必要があります。このサンプルのスコープのために、税金は以下の式に従い計算されると想定します:

 

Tax = round(LEXC * VATP * 10) * 0.001

 

round は最も近い整数で値を四捨五入します。

 

この目的を達成するには、以下の手順を踏みます:

 

1.ソースとターゲットコンポーネントをマッピングエリアに追加し、その間にマッピング接続を描きます。
2.日付関数を使用して、日付を必要とされるフォーマットに変換します。
3.数学関数を使用して、消費税を計算します。

 

ステップ 1: マッピングエリアにコンポーネントを追加する

ソース TRADACOMS コンポーネントを追加します:

 

1.「挿入」 メニューから 「EDI」 をクリックします。
2.TRADACOMS コレクションフォルダーをクリックして、メッセージの型の下から、「INVOICE FILE」 を選択します。

dlg_edi_tradacoms

3.サンプルファイルを提供するようにプロンプトされると、MapForce Examples フォルダー (<マイ ドキュメント>\Altova\MapForce2019\MapForceExamples\) 内の INVFIL.edi を参照します。
4.コンポーネント設定を入力するようにプロンプトされると、デフォルトの値をそのままにし、 「OK」 をクリックします。

 

ターゲット XML コンポーネントを追加する:

 

1.「挿入」 メニューから「XML スキーマ/ファイル」をクリックします。
2.サンプルファイルを提供するようにプロンプトされると、 「スキップ」をクリックします。(これはターゲットコンポーネントであるため、ファイルが生成されるため、既存のファイルを参照する必要はありません)。
3.ルート要素を選択するようにプロンプトされると、"Order" を選択します。

 

このサンプルでは、 ソースがソース TRADACOMS ファイルからターゲット XML ファイルに以下の通りマップされます:

 

ソース (TRADACOMS)

ターゲット (XML)

INVN

/Order/Header/Number

IVDT*

/Order/Header/Received

CIDN-2

/Order/Customer/Number

CADD-1

/Order/Customer/ContactName

CNAM

/Order/Customer/CompanyName

CADD-2

/Order/Customer/Address/Street

CADD-3

/Order/Customer/Address/City

CADD-5

/Order/Customer/Address/ZIP

CADD-4

/Order/Customer/Address/State

Group_IRF**

/Order/LineItems

Group_ILD**

/Order/LineItems/LineItem

SPRO-1

/Order/LineItems/LineItem/Article/Number

TDES-1

/Order/LineItems/LineItem/Article/Name

AUCT-1

/Order/LineItems/LineItem/Article/SinglePrice

QTYI-1

/Order/LineItems/LineItem/Article/Amount

LEXC

/Order/LineItems/LineItem/Article/Price

LEXC*, VATP*

/Order/LineItems/LineItem/Article/Tax

 

* ソースデータは、ターゲットに書き込まれる前に関数により処理されます。

** これらのフィールドにより同じ型のフィールドのグループを介して反復が有効になります。

 

上のテーブルを参照として使用して、ソースコンポーネント内の上のアイテム全てから、ターゲットコンポーネント内の接続先へ、マッピング接続を描きます。この時点では、計算される値が必要なフィールドを省略します(すなわち、テーブル内で * のマークを持つフィールド)。これらは次のステップで処理されます。 MapForce 内で接続を描くための一般的な情報に関しては、 接続との作業を参照してください。

 

ヒント:MapForce コンポーネント内で名前別にフィールドを検索するには、 「CTRL + F」 を押します。

 

ステップ 2: 変換 関数を追加する

IVDT アイテムの値を、小数点の値から xs:dateTime 型に変換するには、 マッピングは、core | conversion functions ライブラリから format-number 関数を使用します。成功した例としては、 変換中に先頭の 0 (ゼロ) を保持する を参照してください。

 

第2番目の関数 parse-date の役割は、format-number  により返された YYMMDD 文字列の値を xs:dateTime 型に変換することです。 2 つの入力引数が存在します: (a) フォーマットされる値 (b) フォーマットマスク。 フォーマットマスクは、基本的には、 MapForce に、年、月、日付は、それぞれ2つの文字から構成されているように処理するように命令します。

 

上の関数をマッピングに追加するには、関数をライブラリウィンドウからマッピングエリアにドラッグします。関数に引数を提供するには、 (メニューコマンド「挿入 | 定数」を使用して )定数を入力します。MapForce 内の関数との作業に関しての情報は、関数と作業を参照してください。

 

ステップ 3: 税率計算関数を追加する

式に従い税率を計算する関数は、 core | math functions ライブラリ内で使用することのできる multiplyround  です。また、関数は拡張可能です。 (すなわち、引数の変数を取ります)。 このサンプルでは、 LEXC、 VATP、 整数 10 を引数として取ります。最初の2 つの値は、ソース TRADACOMS コンポーネント、から接続されており、定数により整数が与えられています。 multiply 関数の結果は、 round 関数を使用して最も近い整数に四捨五入されます。最後に、 round 関数の結果は、 2番目の multiply 関数を使用して、 0.001 により掛けられます。この結果はアイテム XML コンポーネント (/Order/LineItems/LineItem/Article/Tax) の目的のアイテムに。に接続されます。

 

マッピングデザインの出力をプレビューするには、マッピング ウィンドウの下の部分にある 「出力」 タブ をクリックします。

 

ステップ 4 (オプション):StyleVision でのスタイルマッピング出力

オプションで、ターゲット XML コンポーネントを StyleVision Power StyleSheet (.sps) ファイルにリンクすることができます。( StyleVision, http://www.altova.com/stylevision を参照してください)。これにより、 HTML、RTF、PDF、 または 2007+ ファイルとして、マッピングの出力を生成することができます。 に関しての詳しい情報は、(StyleVision がインストールされている場合、各フォーマットの必要よう条件がそろっている場合、 StyleVision を使用してマッピングの出力のスタイルを指定するを参照してください)。 任意で、ステップこのステップを行う場合、  XML コンポーネントのヘッダーをダブルクリックし、"StyleVision Power スタイルシートファイル"の横の、  MapForce Examples フォルダー内の Order.sps ファイルを参照します。マッピングエリアでは、HTML、PDF、RTF、 および Word 2007+ タブをクリックし対応するフォーマットでマッピング出力を確認します。


(C) 2019 Altova GmbH