> ## Documentation Index
> Fetch the complete documentation index at: https://docs.arc.cdata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Excel ですぐにEDI を始める

> CData Arc の組み込みテンプレートを使用して、EDI ドキュメントをスタイル付きのExcel スプレッドシートに変換し、Excel からEDI を生成します。

export const siteNameShort = "Arc";

export const siteName = "CData Arc";

EDI 連携を始める最も手軽な方法の1つは、EDI ドキュメントをExcel スプレッドシートで視覚化することです。このEDI からExcel へのフローは、より複雑なEDI 連携の前段階となる場合もあれば、使い慣れた環境でEDI ドキュメントを扱うための長期的なソリューションとなる場合もあります。

{siteName} のExcel コネクタには、EDI ドキュメントをスタイル付きのExcel シートとしてレンダリングするための、およびこれらのExcel シートをEDI ドキュメントに変換するための組み込みテンプレートが付属しています。本ガイドでは、これらのテンプレートを使用し、カスタムマッピングやカスタムロジックを必要としないEDI フローを素早く始める方法について説明します。

{siteNameShort} には、EDI データをさまざまな形式に変換するための強力なマッピングツールも含まれています。より複雑なEDI マッピングプロジェクトの参考として、次の2つの *ハウツー* ガイドをご利用ください：

* [EDI をCSV にマッピングする](./edi850-csv)
* [MySQL のアウトプットをEDI にマッピングする](./mysql-edi810)

## 概要

本ガイドでは、次の内容を扱います：

* 受信したEDI ファイルをスタイル付きのExcel スプレッドシートに変換する
* Excel のセルにデータを挿入して新しいEDI ドキュメントを生成する

このセクションでは、関連するコンセプトの簡単な概要を説明し、以降のセクションでは、双方向のEDI からExcel への変換を実現する{siteNameShort} フローを作成するプロセスを順を追って説明します。

### ビデオリソース

{siteNameShort} を使用してExcel でEDI データを視覚化する方法の入門として、こちらの短い動画をご覧ください。

<iframe width="560" height="315" src="https://www.youtube.com/embed/pQYQ5gH1fC4" frameborder="0" allowfullscreen />

### EDI からExcel へ

[Excel コネクタ](../connectors/excel)には、EDI XML からスタイル付きで書式設定されたExcel シートを生成するテンプレートExcel ファイルがあらかじめ設定されています。このテンプレートファイルにより、カスタム設定やマッピングなしでEDI ドキュメントをExcel でレンダリングできます。

Excel コネクタは、すぐにスタイル付きのExcel シートに変換するためのテスト用EDI XML ファイルの生成もサポートしています。Excel でEDI を視覚化する作業を最も手軽に始める方法は、これら2つの機能を使用してテスト用Excel シートを作成することです：

* コネクタの**設定**タブで、**Translation Type** を**Template** に設定し、**Template File** としてEDI\_XML\_to\_XLSX\_styled\_template.xlsx を選択します
* **トランザクション**タブで、**More > Create Test Files** を使用して2つのテストファイルを作成します
* **トランザクション**タブで、コネクタによって生成された.xlsx ファイルへのリンクをクリックします

<Note>{siteNameShort} ではバイナリのメッセージ内容をプレビューできないため、表示されたメッセージのダウンロードボタンをクリックしてから、ファイルをExcel で開いてください。アウトプットは次のようになります：</Note>

<img src="https://mintcdn.com/cdata-arc/-adMVRA2NGLWRgFp/public/images/edi-excel_excel_output.png?fit=max&auto=format&n=-adMVRA2NGLWRgFp&q=85&s=5597a7254496386f703404a9c9464bab" alt="EDI からExcel へのアウトプットのサンプル" width="700" data-path="public/images/edi-excel_excel_output.png" />

**Create Test Files** オプションは、素早く始めるのに役立ちます。ただし、コネクタに付属するテストファイルよりも、実際の本番EDI データからスタイル付きのExcel シートを生成する方が有用な場合がよくあります。これを実現するには、**Template File** をEDI\_XML\_to\_XLSX\_styled\_template.xlsx ファイルに設定したまま、より関連性の高いインプットファイルを生成するために次の追加手順に従ってください。

まず、サンプルのEDI データをXML に変換する必要があります。これは、{siteNameShort} がデータを操作および変換するための中間形式としてXML を使用するためです。サンプルのEDI ドキュメントをXML に変換するには、変換するEDI ドキュメントの種類に一致するEDI コネクタが必要です（例えば、[X12](../connectors/x12) コネクタはX12 ドキュメント用、[EDIFACT](../connectors/edifact) コネクタはEDIFACT ドキュメント用です）。これらのコネクタは、EDI とXML を相互に変換するだけでなく、EDI ドキュメントの構造を検証し、オプションでEDI インターチェンジヘッダーを検証することもできます。

EDI ドキュメントがXML に変換されたら、それをExcel コネクタの**トランザクション**タブにアップロードします。テンプレートファイルは、XML をスタイル付きのExcel シートに変換するEDI\_XML\_to\_XLSX\_styled\_template.xlsx に設定したままにしておくことを忘れないでください。変換されたファイルは、**トランザクション**タブからダウンロードして確認できます。

カスタムEDI データからExcel シートを生成する{siteNameShort} フローを作成する方法の詳細については、[EDI からExcel へのフローを作成する](#edi-からexcel-へのフローを作成する)を参照してください。

### Excel からEDI へ

上述のとおり、Excel コネクタには、EDI XML をスタイル付きのExcel スプレッドシートに変換するテンプレートファイルが含まれています。コネクタには、このスタイルのExcel スプレッドシートをXML に戻すテンプレートファイルも含まれています。つまり、カスタムEDI データをスタイル付きのスプレッドシートに入力し、XML に変換してから、EDI ドキュメントに変換できます。

これは、データをEDI に変換する手軽な方法となります。関連するデータを適切なExcel シートに挿入すると、{siteNameShort} がこれを使用してEDI ドキュメントを生成します。

データはExcel コネクタのテンプレートに一致するスタイル付きのExcel シートに入力する必要があるため、最初のステップは適切な形式のExcel シートを生成することです。Excel シートからEDI ドキュメントを生成するプロセスの全体は次のとおりです：

1. サンプルのEDI ドキュメントから始めます
2. サンプルのEDI ドキュメントをXML に変換します（X12 やEDIFACT などのコネクタを使用）
3. Excel コネクタに含まれるテンプレートファイル（EDI\_XML\_to\_XLSX\_styled\_template.xlsx）を使用して、結果のXML をExcel シートに変換します
4. サンプルデータが入った生成されたExcel シートを保存します（例：sample\_excel.xlsx）
5. sample\_excel.xlsx のデータを本番データに置き換えます
6. Excel コネクタのEDI\_XLSX\_to\_XML\_template.xml テンプレートファイルを使用して、本番スプレッドシートをXML に戻します
7. 結果のXML をEDI ドキュメントに変換します（再びX12 やEDIFACT などのコネクタを使用）
8. 今後のEDI ドキュメントについては、sample\_excel.xlsx ファイルを再読み込みし、手順5〜7 を繰り返します

以降のセクションでは、EDI をExcel に、またその逆に変換する{siteNameShort} フローを作成する方法について詳しく説明します。

## EDI からExcel へのフローを作成する

[EDI からExcel へ](#edi-からexcel-へ)で述べたように、EDI をExcel に変換する最初のステップは、EDI をXML に変換することです。

### ステップ1：EDI コネクタ

EDI ドキュメントをXML に変換するには、特定のEDI ドキュメントタイプ（[X12](../connectors/x12)、[EDIFACT](../connectors/edifact)、[EANCOM](../connectors/eancom) など）用のコネクタが必要です。本ガイドでは、EDI ドキュメントとしてX12 810（インボイス）を使用します。X12 コネクタの前にはトリガーコネクタ（次の例では[AS2](../connectors/as2)）があり、これがX12 810 ドキュメントを受信してX12 コネクタに直接渡します。ただし、ユースケースによっては[SFTP](../connectors/sftp) など、別のトリガーコネクタが必要になる場合があります。ユースケースに合うコネクタの種類の詳細については、[コネクタのカテゴリ](../connectors/connectors#categories)を参照してください。

<img src="https://mintcdn.com/cdata-arc/6KwLqCromZpN96Gn/public/images/edi_excel_1.png?fit=max&auto=format&n=6KwLqCromZpN96Gn&q=85&s=8d91cdf3a29c396eeed92b55d2ce3cd3" alt="AS2 およびX12 コネクタを使用したEDI からExcel へのフロー" width="800" data-path="public/images/edi_excel_1.png" />

X12 コネクタの**設定**タブの[インターチェンジ設定](../connectors/x12#interchange-settings)セクションで、**Usage Indicator** を**T-Test Data** に設定します。これにより、インターチェンジ検証が無効になり、サンプルドキュメントを生成するプロセスが容易になります（EDIFACT ベースのコネクタで対応するフィールドは**Test Indicator** で、この動作を再現するには有効にする必要があります）。

X12 コネクタの**高度な設定**タブで、**Generate Description As** 設定を使用して、各EDI 要素の説明を結果のスプレッドシートに生成するかどうかを決定します。この設定のデフォルト値は**XML Comment** であり、XML コメントはExcel テンプレートによって読み取られ *ない* ため、説明はスタイル付きのExcel シートに表示されません。テンプレートに説明値を解析させて結果のExcel シートに含めるには、この設定を**Element Attribute** に変更します。

### ステップ2：Excel コネクタ

次に、XML ファイルがExcel コネクタに渡されるように、X12 コネクタをExcel コネクタに接続します。

<img src="https://mintcdn.com/cdata-arc/6KwLqCromZpN96Gn/public/images/edi_excel_2.png?fit=max&auto=format&n=6KwLqCromZpN96Gn&q=85&s=fc6f05392c47682cb767c173d7e67a75" alt="X12 コネクタに接続されたExcel コネクタ" width="700" data-path="public/images/edi_excel_2.png" />

**設定**タブでExcel の**Template File** をEDI\_XML\_to\_XLSX\_styled\_template.xlsx に設定します。

フローの最後のコネクタとして機能するターミナルコネクタのインスタンスを追加します（前の画像には表示されていません）。このユースケースで一般的なターミナルコネクタは[File](../connectors/file) コネクタで、これにより完成したファイルをディスク上のパスに配置できます。ユースケースに合うコネクタの種類の詳細については、[コネクタのカテゴリ](../connectors/connectors#categories)を参照してください。

### ステップ3：EDI からExcel へのフローのテスト

これでサンプルのEDI ファイルをフローに通すことができます。X12 コネクタの**トランザクション**タブで**More > Create Test Files** をクリックして、サンプルの810 ドキュメントを生成します。

<Tip>X12 コネクタでは、サンプルの810、850、855、856 ドキュメントを生成できます。他のドキュメントタイプが必要な場合は、別の場所からアップロードする必要があります。</Tip>

サンプルドキュメントをフローに通すと、Excel コネクタのアウトプットは次のようになります：

<img src="https://mintcdn.com/cdata-arc/-adMVRA2NGLWRgFp/public/images/edi-excel_excel_810_output.png?fit=max&auto=format&n=-adMVRA2NGLWRgFp&q=85&s=5da6d660ddd4765d5ef62d810e9b6a8c" alt="スタイル付きのX12 810 インボイスを表示するExcel のアウトプット" width="700" data-path="public/images/edi-excel_excel_810_output.png" />

これで、このフローの先頭にドキュメントを入力することで、任意の標準X12 ドキュメントを上の画像のようにスタイル付けされたExcel シートに変換できます。

## Excel からEDI へのフローを作成する

[Excel からEDI へ](#excel-からedi-へ)で説明したように、Excel からEDI へのフローを作成する最初のステップは、サンプルのExcel シートを生成することです。このシートを生成するには、[EDI からExcel へのフローを作成する](#edi-からexcel-へのフローを作成する)の手順に従ってください。このフローから得られるスタイル付きのExcel シートが、サンプルのExcel シートとして機能します。次の手順では、Excel シートからX12 810 インボイスファイルを作成する方法を示します。

<Note>複数の種類のEDI ドキュメントが必要な場合（例えば、810 インボイス *と* 850 発注書）、ドキュメントタイプごとにサンプルのExcel シートを作成する必要があります。</Note>

サンプルのExcel シートを生成したら、Excel からEDI へのフローを設定できます。このフローは、上述のフローとは別のものですが類似しています。

### ステップ1：Excel コネクタ

まず、フローにExcel コネクタを追加します。Excel コネクタの前にはトリガーコネクタ（次の例ではFile）があります。ユースケースによってはSFTP など、別のトリガーコネクタが必要になる場合があります。コネクタの種類の詳細については、[コネクタのカテゴリ](../connectors/connectors#categories)を参照してください。

<img src="https://mintcdn.com/cdata-arc/6KwLqCromZpN96Gn/public/images/edi_excel_3.png?fit=max&auto=format&n=6KwLqCromZpN96Gn&q=85&s=cf2d7d718bdb632d7736ddb7f1e31fbe" alt="File およびExcel コネクタを使用したExcel からEDI へのフロー" width="800" data-path="public/images/edi_excel_3.png" />

Excel コネクタの**設定**タブで、**Template File** をEDI\_XLSX\_to\_XML\_template.xml に設定します。

### ステップ2：EDI コネクタ

次に、Excel コネクタをX12 コネクタに接続します（他のEDI フローではEDIFACT またはEANCOM コネクタを使用する場合があります）：

<img src="https://mintcdn.com/cdata-arc/6KwLqCromZpN96Gn/public/images/edi_excel_4.png?fit=max&auto=format&n=6KwLqCromZpN96Gn&q=85&s=bf06114122570bfef69996985900e04a" alt="X12 コネクタに接続されたExcel コネクタ" width="800" data-path="public/images/edi_excel_4.png" />

**設定**タブで、**Translation Type** を**XML to X12** に設定します。詳細については、[X12 ドキュメント](../connectors/x12)を参照してください。この例のX12 コネクタは、ターミナルコネクタに直接接続するよう設計されています。[AS2](../connectors/as2) が一般的に使用されますが、他の[MFT コネクタ](../connectors/mft-connectors)を使用することもできます。

### ステップ3：Excel からEDI へのフローのテスト

このフローを設定すると、サンプルのExcel シートの形式に一致するExcel ドキュメントをフローに通してEDI ドキュメントを生成できます。サンプルのExcel シートをExcel コネクタにアップロードすることで、簡単なテストを実行できます。Excel コネクタの**トランザクション**タブで**More > Upload Files** を選択し、サンプルシートを参照します。

Excel コネクタは、EDI ドキュメントを表すXML を生成します。次は、XML 形式のX12 810 ドキュメントの一部です：

<img src="https://mintcdn.com/cdata-arc/6KwLqCromZpN96Gn/public/images/edi_excel_5.png?fit=max&auto=format&n=6KwLqCromZpN96Gn&q=85&s=c6665a6df166d2e4bbc05cec11acee4d" alt="Excel コネクタからのXML アウトプット" width="600" data-path="public/images/edi_excel_5.png" />

X12 コネクタは、このXML をEDI 形式に変換し、X12 コネクタの**インターチェンジ設定**に従ってインターチェンジヘッダーを適用します。最終的なアウトプットは次のようになります（デフォルトではPrint View で開きますが、**Raw View** トグルを使用して生データを確認できます）：

<img src="https://mintcdn.com/cdata-arc/6KwLqCromZpN96Gn/public/images/edi_excel_6.png?fit=max&auto=format&n=6KwLqCromZpN96Gn&q=85&s=5bb640bd9a906eab12fdc6d8463e03dc" alt="フローからの最終的なX12 810 アウトプット" width="800" data-path="public/images/edi_excel_6.png" />

フローがサンプルのExcel シートを目的のEDI 形式に変換することを確認したら、Excel シート内の特定の値を実際の本番データに置き換え、同じフローを使用して本番データをEDI に変換できます。

#### サンプルのExcel シートの調整

EDI ドキュメントによっては、サンプルのExcel シートから行を追加または削除する必要があります。例えば、EDI 発注書には、サンプルのExcel シートの明細項目（PO1 ループ）の数と必ずしも一致しない、可変数の明細項目（PO1 ループ）がある場合があります。

このような状況では、ループを増やす必要がある場合はExcel シートに行を挿入し、ループを減らす必要がある場合はExcel シートから行を削除します。これにより、スプレッドシートの構造がEDI ドキュメントの構造と一致するようになります。

一部のEDI ループは予測可能な形で追加または削除する必要がある場合があるため、ベストプラクティスは、可能なセグメントやループの繰り返しを *より多く* 含むサンプルのEDI ドキュメントから始めることです。これは、サンプルのExcel シートから行を削除する方が、通常は新しい行を追加するよりも簡単なためです。
