この記事では、ER 式でアプリケーション クラスの必要なメソッドを呼び出すことによって、 電子レポート (ER) 構成で既存のアプリケーション ロジックを再利用する方法について説明します。 実行時にクラスを呼び出すための引数の値を動的に定義できます。 たとえば、解析ドキュメント内の情報に基づいて値を基にして、その正確性を確保できます。
この記事の例では、アプリケーション データ更新の受信銀行明細書を解析するプロセスを設計します。 国際銀行口座番号 (IBAN) コードを含むテキスト (.txt) ファイルとして、入ってくる銀行明細書を受け取ります。 銀行取引明細書をインポートするプロセスの一環として、既に使用可能なロジックを使用して、IBAN コードの正確性を検証する必要があります。
前提条件
この記事の手順は、 システム管理者 または 電子レポート開発者 ロールが割り当てられているユーザーを対象としています。
任意のデータ・セットを使用して、プロシージャーを完了することができます。
手順を完了するには、次のファイルをダウンロードして保存する必要があります: SampleIncomingMessage.txt.
この記事では、サンプル会社 Litware, Inc. に必要な ER 構成を作成します。 したがって、この記事の手順を完了する前に、次の手順に従う必要があります。
- 組織管理>ワークスペース>電子申告の順に移動します。
- ローカライズの構成ページで、Litware, Inc. サンプル会社の構成 プロバイダーが使用可能であり、アクティブとマークされていることを確認します。 この構成プロバイダーが表示されない場合は、構成プロバイダを作成し、アクティブとしてマークする に記載の手順を完了する必要があります。
新しい ER モデル コンフィギュレーションのインポート
Localization 構成で、Configuration providers セクションで、Microsoft 構成プロバイダーのタイルを選択します。
[リポジトリ] を選択します。
ローカリゼーション リポジトリで、[フィルターの表示] を選択します。
グローバル リポジトリ レコードを選択するには、名前フィルター フィールドを追加します。
名前フィールドに、グローバルと入力します。 次に、含むフィルター演算子を選択します。
を選択してを適用します。
開く を選択して、選択したリポジトリの ER コンフィギュレーションの一覧を確認します。
構成リポジトリの構成ツリーで、[支払いモデル] を選択します。
バージョン クイック タブで、インポート ボタンが利用可能な場合はそれを選択し、はいを選択します。
[インポート] ボタンを使用できない場合は、選択したバージョンの支払いモデル ER 構成が既にインポートされています。
構成リポジトリを閉じ、ローカライズ リポジトリを閉じます。
新しい ER 形式コンフィギュレーションを追加する
新しい ER 形式を追加して、受取口座取引明細書を TXT 形式で解析します。
ローカライズ構成で、[レポート構成] タイルを選択します。
[構成] の左側のウィンドウの構成ツリーで、[支払いモデル] を選択します。
構成の作成を選択します。
ドロップダウン ダイアログ ボックスで、次の手順に従います。
- 新規フィールドで、PaymentModel データ モデルに基づいた書式と入力します。
- 名前フィールドに口座取引明細書のインポート形式 (サンプル)と入力します。
- データのインポートのサポート フィールドではいを選択します。
- 構成を作成するを選択して、構成の作成を完了します。
ER 形式のコンフィギュレーションをデザイン- 形式
TXT 形式の外部ファイルの予想構造を表す ER 形式を設計します。
追加した口座取引明細書インポート形式 (サンプル) 形式コンフィギュレーションの場合、デザイナーを選択します。
フォーマット デザイナー ページの左ペインのフォーマット構成ツリーで、ルートを追加を選択します。
表示されるダイアログ ボックスで、次の手順に従います:
- ツリーで Text\Sequence を選択して、順序形式コンポーネントを追加します。
- 名前フィールドに、ルートと入力します。
- 特殊文字フィールドでは、改行 - Windows (CR LF) を選択します。 この設定に基づいて、解析ファイル内の各行は個別のレコードです。
- [OK] を選択.
[] を選択し、[] を追加します。
表示されるダイアログ ボックスで、次の手順に従います:
- ツリーで、Text\Sequence を選択します。
- 名前フィールドに、行と入力します。
- 多様性フィールドで、1 つ、多数を選択します。 この設定に基づいて、解析ファイルには少なくとも 1 行が含まれます。
- [OK] を選択.
ツリーで、Root\Rows を選択してから、シーケンスの追加を選択します。
表示されるダイアログ ボックスで、次の手順に従います:
- 名前フィールドに、フィールドと入力します。
- 多様性フィールドで、1 つのみを選択します。
- [OK] を選択.
ツリーで、Root\Rows\Fields を選択してから、追加を選択します。
表示されるダイアログ ボックスで、次の手順に従います:
- ツリーで、Text\String を選択します。
- 名前フィールドに、IBAN と入力します。
- [OK] を選択.
保存を選びます。
解析ファイルの各明細行に IBAN コードのみが含まれるように構成が設定されました。
ER 形式のコンフィギュレーションをデザイン- データ モデルへのマッピング
解析ファイルの情報を使用してデータ モデルに入力する ER 形式のマッピングを設計します。
形式デザイナーの、アクション ウィンドウで、形式をモデルにマッピングを選択します。
モデルからデータ ソースへのマッピング ページのアクション ペインで、新規を選択します。
定義フィールドで、BankToCustomerDebitCreditNotificationInitiation を選択します。
名前フィールドに、データ モデルにマッピングと入力します。
保存を選びます。
デザイナー をクリックします。
Model マッピング デザイナー ページのData ソースの種類 ツリーで、Dynamics 365 for Operations\Class を選択します。データ ソース セクションで、ルートの追加を選択して IBAN コード検証用の既存のアプリケーション ロジックを呼び出すデータ ソースを追加します。
表示されるダイアログ ボックスで、次の手順に従います:
- 名前フィールドに、Check_codes と入力します。
- クラス フィールドで ISO7064 を入力または選択します。
- [OK] を選択.
データ ソース タイプ ツリーで、次の手順に従います。
- 形式データ ソースを展開します。
- 形式\ルート: 順番 (ルート) を展開します。
- 形式\ルート: 順番 (ルート)\行: 順番 1..* (行) を展開します。
- 形式\ルート: 順番 (ルート)\行: 順番 1..* (行)\フィールド: 順番 1..1 (フィールド) を展開します。
データ モデル ツリーで、次の手順に従います。
- データ モデルの支払フィールドを展開します。
- Payments\Creditor Account(CreditorAccount) を展開します。
- Payments\Creditor Account(CreditorAccount)\Identification を展開します。
- Payments\Creditor Account(CreditorAccount)\Identification\IBAN を展開します。
次の手順に従って、構成済み形式のコンポーネントをデータ モデルのフィールドにバインドします。
- 形式\ルート: 順番 (ルート)\行: 順番 1..* (行) を選択します。
- 支払を選択します。
- バインドを選択します。 この設定に基づいて、解析ファイル内の各行は 1 回の支払いになります。
- 形式\ルート: 順番 (ルート)\行: 順番 1..* (行)\フィールド: 順番 1..1 (フィールド)\IBAN: 文字列 (IBAN) を選択します。
- Payments\Creditor Account(CreditorAccount)\Identification\IBAN を選択します。
- バインドを選択します。 この設定に基づいて、データ モデルの IBAN フィールドに解析ファイルの値が入力されます。
検証タブで、無効な IBAN コードを含む解析ファイルの任意の行に対してエラー メッセージを表示する検証ルールを追加するには、次の手順に従います。
- 新規を選択し、条件の編集を選択します。
- フォーミュラ デザイナー ページのデータ ソース ツリーで、ISO7064 アプリケーション クラスを表す Check_codes データ ソースを展開して、このクラスの使用可能なメソッドを表示します。
- Check_codes\verifyMOD1271_36 を選択します。
- [ データ ソースの追加] を選択します。
- フォーミュラ フィールドに、式: Check_codes.verifyMOD1271_36(format.Root.Rows.Fields.IBAN) を入力します。
- 保存を選択し、ページを閉じます。
- メッセージの編集を選択します。
- フォーミュラ デザイナー ページのフォーミュラ フィールドに、CONCATENATE("無効な IBAN コードが検出されました:", format.Root.Rows.Fields.IBAN) と入力します。
- 保存を選択し、ページを閉じます。
これらの設定に基づいて、検証条件は、ISO7064 アプリケーション クラスの既存のverifyMOD1271_36 メソッドを呼び出すことによって、無効な IBAN コードに対して FALSE を返します。 IBAN コードの値は、解析テキスト ファイルの内容に基づいて、呼び出し元メソッドの引数として実行時に動的に定義されます。
保存を選びます。
モデル マッピング デザイナー ページを閉じ、モデルからデータ ソースへのマッピング ページを閉じます。
形式マッピングの実行
テストのために、前の手順でダウンロードした SampleIncomingMessage.txt ファイルを使用して形式マッピングを実行します。 生成された出力には、プロセスが選択したテキストファイルからデータを取り込み、実際のインポート中にカスタムデータモデルに移行するデータが含まれます。
モデルからデータソースへのマッピングで、[実行] を選択します。
電子レポート パラメーターで、[参照] を選択し、ダウンロードした SampleIncomingMessage.txt ファイルを参照して選択します。
[OK] を選択.
[モデルからデータソースへのマッピング] ページに、無効な IBAN コードに関するエラー メッセージが表示されます。
選択したファイルからインポートされ、データ モデルに移植されたデータを表す XML 形式の出力を確認します。 このプロセスでは、インポートされたテキスト ファイルの 3 行のみがエラーなしで処理されることに注意してください。 4 行目の IBAN コードは無効であり、スキップされます。