ノート
コミュニティの関心グループが Yammer から Microsoft Viva Engage に移行されました。 Viva Engageコミュニティに参加し、最新のディスカッションに参加するには、 Finance and Operations Viva Engage Community へのアクセス権フォームに入力し、参加するコミュニティを選択します。
電子ドキュメントを生成するための電子レポート (ER) 構成を設計するプロセスの一環として、アプリケーションからデータを取得し、生成された出力に格納する方法を定義します。 ER パフォーマンス トレース機能を使用すると、ER 形式の実行の詳細を収集し、それらを使用してパフォーマンスの問題のトラブルシューティングを行うために必要な時間とコストを大幅に削減できます。 このチュートリアルでは、実行される ER 形式のパフォーマン追跡を実行する方法、およびこれらの追跡情報を使用してパフォーマンスを向上する方法についてのガイドラインを示します。
必要条件
このチュートリアルの例を完了するには、次のアクセス権が必要です。
次のいずれかのロールににアクセスします。
- 電子申告開発者
- 電子申告機能コンサルタント
- システム管理者
アプリケーションと同じテナントに対してプロビジョニングされている規制構成サービス (RCS) のインスタンスに、次のいずれかのロールにアクセスします。
- 電子申告開発者
- 電子申告機能コンサルタント
- システム管理者
また、次のファイルをダウンロードしてローカルに保存します。
| ファイル | コンテンツ |
|---|---|
| model.version.1 のパフォーマンス追跡 | ER データ モデル構成のサンプル |
| metadata.version.1 のパフォーマンス追跡 | ER メタデータ構成のサンプル |
| mapping.version.1.1 のパフォーマンス追跡 | ER モデル マッピング構成のサンプル |
| format.version.1.1 のパフォーマンス追跡 | ER フォーマット構成のサンプル |
ER パラメーターのコンフィギュレーション
アプリケーションによって生成される各 ER パフォーマンス トレースは、実行ログ レコードの添付ファイルとして格納されます。 ドキュメント管理 (DM) フレームワークは、これらの添付ファイルを管理します。 パフォーマンス トレースのアタッチに使用する DM ドキュメントの種類を指定するには、事前に ER パラメーターを構成する必要があります。 電子申告ワークスペースで、電子申告パラメーターを選択します。 次に、電子申告パラメーター ページの添付ファイル タブのその他フィールドで、パフォーマンス追跡に使用する DM ドキュメント タイプを選択します。
その他ルックアップ フィールドで使用可能にするには、DM ドキュメント タイプをドキュメント タイプ ページ (組織管理 > ドキュメント管理 > ドキュメント タイプ): で次のようにコンフィギュレーションする必要があります。
- クラス: 添付ファイル
- グループ: ファイル
ノート
DM 添付ファイルは会社固有であるため、選択したドキュメント タイプは、現在のインスタンスのすべての会社で使用可能である必要があります。
RCS パラメーターのコンフィギュレーション
ER 形式デザイナーと ER マッピング デザイナーを使用して、分析のために ER パフォーマンス トレースを RCS にインポートします。 ER パフォーマンス トレースは ER 形式に関連する実行ログ レコードの添付ファイルとして格納されるため、パフォーマンス トレースのアタッチに使用する DM ドキュメントの種類を指定するには、RCS パラメーターを事前に構成する必要があります。 会社用にプロビジョニングした RCS のインスタンスの [電子レポート ] ワークスペースで、[ 電子レポート パラメーター] を選択します。 次に、電子申告パラメーター ページの添付ファイル タブのその他フィールドで、パフォーマンス追跡に使用する DM ドキュメント タイプを選択します。
その他ルックアップ フィールドで使用可能にするには、DM ドキュメント タイプをドキュメント タイプ ページ (組織管理 > ドキュメント管理 > ドキュメント タイプ): で次のようにコンフィギュレーションする必要があります。
- クラス: 添付ファイル
- グループ: ファイル
ER ソリューションのデザイン
ベンダー トランザクションを示す新しいレポートを生成する新しい ER ソリューションの設計を開始するとします。 現時点では、選択した仕入先のトランザクションは仕入先トランザクション ページ (買掛金勘定 > 仕入先 > すべての仕入先に移動し、仕入先を選択してから、アクション ウィンドウの仕入先タブのトランザクション グループで、トランザクションを選択します) で検索できます。 ただし、すべての仕入先トランザクションを 1 つの電子ドキュメントに XML 形式で同時に含める必要があります。 このソリューションは、必要なデータ モデル、メタデータ、モデル マッピング、およびフォーマット コンポーネントを含む複数の ER 構成で構成されています。
会社用にプロビジョニングされた RCS のインスタンスにサインインします。
このチュートリアルでは、 Litware, Inc. サンプル会社の構成を作成および変更します。 そのため、この構成プロバイダーを RCS に追加し、アクティブとして選択してください。 手順については、コンフィギュレーション プロバイダーを作成し、有効としてマークする を参照してください。
電子申告ワークスペースで、レポート コンフィギュレーションタイルを選択します。
構成ページで、前提条件としてダウンロードした ER コンフィギュレーションを RCS に次の順序でインポートします: データ モデル、メタデータ、モデル マッピング、フォーマット。 各コンフィギュレーションについて、次の手順を実行します。
- アクション ウィンドウで、Exchange > XML ファイルから読み込むを選択します。
- 参照を選択して、必要な ER コンフィギュレーションに適したファイルを XML 形式で選択します。
- OK を選択します。
ER ソリューションを実行して追跡実行する
ER ソリューションの最初のバージョンの設計が完了したとします。 これにより、インスタンスでテストを行い、実行パフォーマンスを分析できます。
ER コンフィギュレーションを RCS から財務と運用にインポートする
アプリケーション インスタンスにサインインします。
このチュートリアルでは、RCS インスタンス (ER コンポーネントを設計する場所) からインスタンス (テストして最後に使用する場所) に構成をインポートします。 そのため、必要なすべての成果物を必ず準備してください。 手順については、 Regulatory Configuration Services (RCS) からの電子申告 (ER) 構成のインポート を参照してください。
これらの手順に従って、コンフィギュレーションを RCS からアプリケーションにインポートします。
- 電子申告ワークスペースの、Litware, inc. コンフィギュレーション プロバイダーのタイルで、リポジトリを選択します。
- コンフィギュレーション リポジトリ ページで、RCS タイプのリポジトリを選択し、開くを選択します。
- コンフィギュレーション クイック タブで、パフォーマンス追跡形式コンフィギュレーションを選択します。
- バージョン クイック タブで、選択したコンフィギュレーションのバージョン 1.1 を選択し、インポートを選択します。
データ モデルとモデル マッピングコン フィギュレーションの対応するバージョンは、インポートされた ER 形式コンフィギュレーションの前提条件として自動的にインポートされます。
ER パフォーマンス追跡を有効にする
組織管理>電子申告>構成 に移動します。
[構成] の [アクション ウィンドウ] の [構成] タブの [詳細設定] グループで、[ユーザー パラメーター] を選択します。
ユーザー パラメーターの [実行トレース] セクションで、次の手順に従います。
[ 実行トレースの形式 ] フィールドで、ER 形式とマッピング要素の実行の詳細を格納する、生成されたパフォーマンス トレースの形式を指定します。
デバッグ トレース形式 – 実行時間が短い ER 形式を対話的に実行する場合は、この値を選択します。 ER 形式の実行に関する詳細のコレクションが開始されます。 この値を選択すると、パフォーマンス トレースは、次のアクションに費やされた時間に関する情報を収集します。
- プロセスがデータを取得するために呼び出すモデル マッピングで各データ ソースを実行する
- 生成される出力にデータを入力するため各項目の形式を処理する
デバッグ トレース形式値を選択すると、ER 操作デザイナーで追跡の内容を分析できます。 そこで、追跡に示されている ER 形式またはマッピング要素を表示できます。
集計済デバッグ トレース形式 – バッチ モードで実行時間が長い ER 形式を実行する場合は、この値を選択します。 ER 形式の実行に関する集計された詳細のコレクションが開始されます。 この値を選択すると、パフォーマンス トレースは、次のアクションに費やされた時間に関する情報を収集します。
- プロセスがデータを取得するために呼び出すモデル マッピングで各データ ソースを実行する
- プロセスがデータ取得のために呼び出す形式マッピングにおいて各データ ソースを実行する
- 生成される出力にデータを入力するため各項目の形式を処理する
Aggregated トレース形式 の値は、Microsoft Dynamics 365 Finance のバージョン 10.0.20 以降で使用できます。
ER 形式デザイナーおよび ER モデル マッピング デザイナーでは、単一のコンポーネントの合計実行時間を表示できます。 さらに、追跡には実行回数、1 回の実行の最小時間と最大時間など、実行に関する詳細が含まれます。
ノート
この追跡は、追跡されたコンポーネント パスに基づいて収集されます。 したがって、単一の親コンポーネントに名前のない複数の子コンポーネントが含まれる場合、または複数の子コンポーネントの名前が同じ場合、統計が正しく表示されません。
次のオプションをはいに設定して、ER モデル マッピングおよび ER フォーマット コンポーネントの実行に関する具体的な詳細を収集します。
クエリ統計の収集 – このオプションを有効にすると、パフォーマンス トレースによって次の情報が収集されます。
- データ ソースが行うデータベース呼び出しの数
- データベースに対する複製呼び出し数
- データベース呼び出しを行うために使用された SQL ステートメントの詳細
キャッシュのトレース アクセス – このオプションをオンにすると、パフォーマンス トレースによって ER モデル マッピングのキャッシュ使用状況に関する情報が収集されます。
トレース データ アクセス – このオプションをオンにすると、パフォーマンス トレースは、レコード リストの種類の実行されたデータ ソースに対するデータベースへの呼び出しの数に関する情報を収集します。
トレース リスト列挙 – このオプションをオンにすると、パフォーマンス トレースは、レコード リストの種類のデータ ソースから要求されたレコードの数に関する情報を収集します。
ノート
ユーザー パラメーター ダイアログ ボックスのパラメーターは、ユーザーと現在の会社に固有です。
ER 形式を実行する
- DEMF 会社を選択します。
- 組織管理>電子申告>構成 に移動します。
- [構成] の構成ツリーで、[パフォーマンス トレース形式] 項目を選択します。
- アクション ウィンドウで、実行を選択します。
生成されたファイルには、6 つのベンダーの 265 トランザクションに関する情報が表示されます。
実行追跡の確認
アプリケーションから生成された追跡のエクスポート
パフォーマンス追跡は、ソースの ER 形式から切り離され、外部の zip ファイルにシリアル化されます。
組織管理 > 電子申告 > 構成デバッグ ログの順に移動します。
電子レポート実行ログの左側のウィンドウの [構成名] フィールドで、[パフォーマンス トレース形式] を選択して、パフォーマンス トレース形式の構成の実行で生成されるログ レコードを検索します。
ページの右上隅にある添付ファイルボタン (紙クリップ記号) を選択するか、Ctrl + Shift + A を押します。
電子レポート実行ログの添付ファイルで、アクション ウィンドウで [開く] を選択して、パフォーマンス トレースを zip ファイルとして取得し、ローカルに保存します。
ノート
生成されたトレースには、 GUID 形式でのみ一意のレポート識別子を使用して、ソース ER レポートへの参照があります。 形式のバージョン番号付けは考慮されません。
実行された ER 形式に対してアプリケーションによって生成されるパフォーマンス トレースと ER モデル マッピングの関連付けは、アプリケーションが使用するルート記述子と共通データ モデルに基づきます。 形式のバージョン番号付けおよびモデル マッピングは考慮されません。 モデル マッピングに対するモデル マッピングの既定値フラグの設定も考慮されません。
生成された追跡を RCS にインポートします
RCS の、電子申告 ワークスペースで、レポート コンフィギュレーション タイルを選択します。
構成ページのコンフィギュレーション ツリーで、パフォーマンス追跡モデル項目を展開し、パフォーマンス追跡形式項目を選択します。
アクション ウィンドウで、デザイナーを選択します。
形式デザイナーの、アクション ウィンドウで、パフォーマンス追跡を選択します。
パフォーマンス追跡結果の設定ダイアログ ボックスで、パフォーマンス追跡のインポートを選択します。
参照を選択し、先ほどインポートした zip ファイルを選択します。
OK を選択します。
RCS での分析に対するパフォーマンス追跡の使用 – 形式実行
RCS の、形式デザイナー ページで、展開/折りたたみを選択してすべての形式項目の内容を展開します。
トレースには、現在の形式の一部の項目に関する追加情報が表示されていることに注意してください。
- 形式項目を使用して生成された出力にデータを入力するのに費やした実際の時間
- 出力全体の生成に費やされた合計時間の割合で表される同じ時間
形式デザイナー ページを閉じます。
RCS での分析に対するパフォーマンス追跡の使用 – モデル マッピング
- RCS、コンフィギュレーション ページのコンフィギュレーション ツリーで、パフォーマンス追跡マッピング項目を選択します。
- アクション ウィンドウで、デザイナーを選択します。
- デザイナー をクリックします。
- モデル マッピング デザイナー ページの、アクション ウィンドウで、パフォーマンス追跡を選択します。
- 事前にインポートした追跡を選択します。
- OK を選択します。
現在のモデル マッピングの一部のデータ ソース項目に関する新しい情報が表示されます。
- データ ソースがデータの取得に費やした実際の時間
- モデル マッピング全体の実行に費やされた合計時間の割合で表される同じ時間
ER は、VendTable/<Relations/VendTrans.VendTable_AccountNum データ ソースの実行中に、現在のモデル マッピングがデータベース要求を複製することを通知します。 この重複が発生するのは、仕入先トランザクションの一覧が、反復する仕入先レコードごとに 2 回呼び出されるためです。
- 1 回の呼び出しでは、構成されたバインディングに基づいて、データ モデル内の各トランザクションの詳細を入力します。
- 1 回の呼び出しで、データ モデルのベンダーごとのトランザクションの計算数が入力されます。
[Q:530] の値は、テーブルから VendTable/<Relations/VendTrans.VendTable_AccountNum データ ソースにレコードを返すため、VendTrans テーブルが 530 回呼び出されたことを示します。 530 の値は、VendTable/<Relations/VendTrans.VendTable_AccountNum データ ソースが、そのデータ ソースからレコードを返し、データ モデルで詳細を入力するために 530 回呼び出されたことを示します。
VendTable/<Relations/VendTrans.VendTable_AccountNum データ ソースのキャッシュを使用して、265 トランザクションの詳細を取得するために行われる呼び出しの数を減らし、モデル マッピングのパフォーマンスを向上させます。
それは LedgerTransTypeList データ ソースに対して行われる呼び出し数を減らすのにも役立ちます。 このデータ ソースは、 LedgerTransType 列挙の各値をラベルに関連付けます。 このデータ ソースを使用すると、適切なラベルを検索して、各仕入先トランザクションのデータ モデルに入力できます。 このデータ ソースへの現在の呼び出し数 (9,027) は、265 トランザクションに対して非常に高くなっています。
実行追跡からの情報に基づいてモデル マッピングを改善する
モデル マッピングのロジックを変更する
キャッシュを使用し、データベースへの呼び出しが重複しないようにするには、次の手順に従います。
- RCS、モデル マッピング デザイナー ページの、データ ソース ウィンドウで、VendTable 項目を選択します。
- キャッシュを選択します。
- VendTable 項目を展開し、VendTable データ ソース (<Relations項目) の一対多の関係の一覧を展開してから、VendTrans.VendTable_AccountNum 項目を選択します。
- キャッシュを選択します。
LedgerTransTypeList データ ソースを VendTable データ ソースのスコープに取り込むには、次の手順に従います。
- データ ソース タイプ ウィンドウで、関数項目を展開し、計算済フィールド項目を選択します。
- データ ソース ウィンドウで、VendTable 項目を選択します。
- 追加を選択します。
- 名前フィールドで、$TransType を入力します。
- 式の編集を選択します。
- 式フィールドに、LedgerTransTypeList を入力します。
- 保存 を選択します。
- 式の編集ページを閉じます。
- OK を選択します。
$TransType フィールドをキャッシュするには、次の手順に従います。
- LedgerTransTypeList 項目を選択します。
- キャッシュを選択します。
- VendTable.$TransType 項目を選択します。
- キャッシュを選択します。
キャッシュされた$TransType フィールドの使用を開始するように $TransTypeRecord フィールドを変更するには、次の手順に従います。
Data sources ウィンドウで、VendTable 項目を展開し、<関係 項目を展開し、VendTrans.VendTable_AccountNum 項目を展開してから、VendTable. VendTrans.VendTable_AccountNum.$TransTypeRecord 項目を選択します。
編集を選択します。
式の編集を選択します。
式フィールドで、次の式を検索します。
FIRSTORNULL (WHERE (LedgerTransTypeList, LedgerTransTypeList.Enum = @.TransType))
式フィールドで、次の式を入力します。
FIRSTORNULL (WHERE (VendTable.'$TransType', VendTable.'$TransType'.Enum = @.TransType))。
保存 を選択します。
式の編集ページを閉じます。
OK を選択します。
保存 を選択します。
モデル マッピング デザイナー ページを閉じます。
モデル マッピング ページを閉じます。
ER モデル マッピングの変更されたバージョンを完了する
- RCS、コンフィギュレーション ページの、バージョン クイック タブで、パフォーマンス追跡マッピング コンフィギュレーションのバージョン 1.2 を選択します。
- ステータスの変更を選択します。
- 完了を選択します。
変更された ER モデル マッピング コンフィギュレーションを RCS からアプリケーションにインポートする
パフォーマンス トレース マッピング構成のバージョン 1.2 をインポートするには、「RCS から財務および運用への ER 構成のインポート」を参照してください。
変更された ER ソリューションを実行して追跡実行する
ER 形式を実行する
新しいパフォーマンス トレースを生成するには、「 ER 形式の実行」を参照してください。
実行トレースを使って作業する
アプリケーションから生成された追跡のエクスポート
新しいパフォーマンス トレースをローカルに保存するには、「 生成されたトレースをアプリケーションからエクスポートする」を参照してください。
生成された追跡を RCS にインポートする
新しいパフォーマンス トレースを RCS にインポートするには、「 生成されたトレースを RCS にインポートする」を参照してください。
RCS での分析に対するパフォーマンス追跡の使用 – モデル マッピング
最新のパフォーマンス トレースを分析するには、この記事で前述した「 RCS – モデル マッピング」セクションの「パフォーマンス トレースを使用して分析する 」の手順を繰り返します。
モデル マッピングに対して行った調整により、データベースに対するクエリの重複が解消されます。 このモデル マッピングのデータベース テーブルとデータ ソースへの呼び出しの数も減ります。 したがって、ER ソリューション全体のパフォーマンスが向上します。
追跡情報で、VendTable データ ソースの 12 の値は、このデータソースが 12 回呼び出されたことを示します。 [Q:6] の値は、6 つの呼び出しが VendTable テーブルへのデータベース呼び出しに変換されたことを示します。 値 [C:6] は 、データベースからフェッチされたレコードがキャッシュされ、他の 6 つの呼び出しがキャッシュを使用して処理されたことを示します。
LedgerTransTypeList データ ソースへの呼び出しの数が 9,027 から 240 に減りました。
アプリケーションで実行追跡を確認する
RCS に加えて、一部のバージョンでは ER フレームワーク デザイナー経験に対する機能が提供される場合があります。 これらのバージョンには、有効にできる [デザイン モードを有効にする] オプションがあります。 このオプションは電子申告パラメーターページの一般タブで検索できます。このページは電子申告ワークスペースから開くことができます。
これらのいずれかのバージョンを使用する場合は、生成されたパフォーマンス追跡の詳細をアプリケーションで直接分析できます。 アプリケーションからエクスポートして RCS にインポートする必要はありません。
外部ツールを使用した実行追跡の確認
ユーザー パラメーターのコンフィギュレーション
- 組織管理>電子申告>構成 に移動します。
- [構成] の [アクション ウィンドウ] の [構成] タブの [詳細設定] グループで、[ユーザー パラメーター] を選択します。
- ユーザー パラメーター ダイアログ ボックス、実行トレース セクションの、実行トレース形式フィールドで、PerfView XML を選択します。
ER 形式を実行する
新しいパフォーマンス トレースを生成するには、「 ER 形式の実行」を参照してください。
Web ブラウザーには、ダウンロード用の zip ファイルが用意されています。 このファイルには、PerfView 形式のパフォーマンス追跡が含まれています。 PerfView パフォーマンス分析ツールを使用して、ER 形式の実行の詳細を分析できます。
外部ツールを使用してデータベース クエリを含む実行トレースを確認する
ER フレームワークの改善により、PerfView 形式で生成されたパフォーマンス トレースによって、ER 形式の実行に関する詳細が提供されるようになりました。 Microsoft Dynamics 365 Finance バージョン 10.0.4 (2019 年 7 月) では、このトレースには、アプリケーション データベースに対して実行された SQL クエリの詳細を含めることもできます。
ユーザー パラメーターのコンフィギュレーション
組織管理> 電子申告>コンフィギュレーションに移動します。
[構成] の [アクション ウィンドウ] の [構成] タブの [詳細設定] グループで、[ユーザー パラメーター] を選択します。
ユーザー パラメーター ダイアログ ボックスの実行トレース セクションで、次のパラメーターを設定します。
- 実行トレース形式フィールドで、PerfView XML を選択します。
- クエリ統計情報の収集 オプションをはいに設定します。
- クエリの追跡オプションをはいに設定します。
ER 形式を実行する
新しいパフォーマンス トレースを生成するには、「 ER 形式の実行」を参照してください。
完了すると、Web ブラウザーでダウンロード用の ZIP ファイルが提供されます。 このファイルには、PerfView 形式のパフォーマンス追跡が含まれています。 PerfView パフォーマンス分析ツールを使用して、ER 形式の実行の詳細を分析できます。 この追跡に、ER 形式の実行中における SQL データベース アクセスに関する詳細が含まれるようになりました。