次の方法で共有


電子申告形式の実行をトレースしてパフォーマンスの問題をトラブルシューティング

電子ドキュメントを生成するために電子申告 (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) フレームワークを使用します。 ER パラメーターを事前にコンフィギュレーションして、パフォーマンス追跡を添付するのに使用する DM ドキュメント タイプを指定する必要があります。 電子申告ワークスペースで、電子申告パラメーターを選択します。 次に、電子申告パラメーター ページの添付ファイル タブのその他フィールドで、パフォーマンス追跡に使用する DM ドキュメント タイプを選択します。

電子申告のパラメーター ページ。

その他ルックアップ フィールドで使用可能にするには、DM ドキュメント タイプをドキュメント タイプ ページ (組織管理 > ドキュメント管理 > ドキュメント タイプ): で次のようにコンフィギュレーションする必要があります。

  • クラス : 、12月1日
  • グループ : ファイル

ドキュメント タイプ ページ。

メモ

DM 添付ファイルは会社固有であるため、選択したドキュメント タイプは、現在のインスタンスのすべての会社で使用可能である必要があります。

RCS パラメーターのコンフィギュレーション

生成される ER パフォーマンス追跡は、ER 形式デザイナーと ER マッピング デザイナーを使用して、分析用に RCS にインポートされます。 ER パフォーマンス追跡は ER 形式に関連する実行ログ レコードの添付ファイルとして格納されるため、RCS パラメーターを事前にコンフィギュレーションして、パフォーマンス追跡の添付に使用する DM ドキュメント タイプを指定する必要があります。 会社用にプロビジョニングされた RCS のインスタンスの、電子申告ワークスペースで、電子申告パラメーターを選択します。 次に、電子申告パラメーター ページの添付ファイル タブのその他フィールドで、パフォーマンス追跡に使用する DM ドキュメント タイプを選択します。

RCS の電子申告パラメーター ページ。

その他ルックアップ フィールドで使用可能にするには、DM ドキュメント タイプをドキュメント タイプ ページ (組織管理 > ドキュメント管理 > ドキュメント タイプ): で次のようにコンフィギュレーションする必要があります。

  • クラス : 、12月1日
  • グループ : ファイル

ER ソリューションのデザイン

仕入先トランザクションを表示する新しいレポートを生成するため、新しい ER ソリューションのデザインを開始したとします。 現時点では、選択した仕入先のトランザクションは仕入先トランザクション ページ (買掛金勘定 > 仕入先 > すべての仕入先に移動し、仕入先を選択してから、アクション ウィンドウの仕入先タブのトランザクション グループで、トランザクションを選択します) で検索できます。 ただし、XML 形式の 1 つの電子ドキュメントで、すべての仕入先トランザクションを同時に処理する必要があります。 このソリューションは、必要なデータ モデル、メタデータ、モデル マッピング、および形式コンポーネントを含むいくつかの ER コンフィギュレーションで構成されます。

  1. 会社用にプロビジョニングされた RCS のインスタンスにサインインします。

  2. このチュートリアルでは、サンプル会社 Litware, Inc. のコンフィギュレーションを作成または変更します。 そのため、このコンフィギュレーション プロバイダーが RCS に追加され、有効として選択されていることを確認してください。 手順については、コンフィギュレーション プロバイダーを作成し、有効としてマークする を参照してください。

  3. 電子レポートワークスペースで、レポート コンフィギュレーションタイルを選択します。

  4. 構成ページで、前提条件としてダウンロードした ER コンフィギュレーションを RCS に次の順序でインポートします: データ モデル、メタデータ、モデル マッピング、フォーマット。 各コンフィギュレーションについて、次の手順を実行します。

    1. アクション ウィンドウで、交換 > XML ファイルからロードを選択します。
    2. 参照を選択して、必要な ER コンフィギュレーションに適したファイルを XML 形式で選択します。
    3. OK を選択します。

    RCS の構成ページ。

ER ソリューションを実行して追跡実行する

ER ソリューションの最初のバージョンのデザインが完了したとします。 これにより、インスタンスでテストを行い、実行パフォーマンスを分析できます。

ER コンフィギュレーションを RCS から財務と運用にインポートする

  1. アプリケーション インスタンスにサインインします。

  2. このチュートリアルでは、RCS インスタンス (ER コンポーネントを設計する場所) から、インスタンス (テストして最後に使用する場所) にコンフィギュレーションをインポートします。 したがって、必要なコンポーネントがすべて準備されたことを確認する必要があります。 手順については、規制コンフィギュレーション サービス (RCS) からの電子申告 (ER) 構成のインポート を参照してください。

  3. これらの手順に従って、コンフィギュレーションを RCS からアプリケーションにインポートします。

    1. 電子申告ワークスペースの、Litware, inc. コンフィギュレーション プロバイダーのタイルで、リポジトリを選択します。
    2. コンフィギュレーション リポジトリ ページで、RCS タイプのリポジトリを選択し、開くを選択します。
    3. コンフィギュレーション クイック タブで、パフォーマンス追跡形式コンフィギュレーションを選択します。
    4. バージョン クイック タブで、選択したコンフィギュレーションのバージョン 1.1 を選択し、インポートを選択します。

    コンフィギュレーション レポジトリ ページ。

データ モデルとモデル マッピングコン フィギュレーションの対応するバージョンは、インポートされた ER 形式コンフィギュレーションの前提条件として自動的にインポートされます。

ER パフォーマンス追跡を有効にする

  1. 組織管理 > 電子申告 > コンフィギュレーションの順に移動します。

  2. 構成ページ、アクション ウィンドウ、構成タブ、詳細設定グループで、ユーザー パラメーターを選択します。

  3. ユーザー パラメーター ダイアログ ボックスの実行トレース セクションで、次の手順を実行します。

    1. 実行トレース形式フィールドで、実行詳細が ER 形式およびマッピング要素で格納されるよう、生成済パフォーマンス追跡の形式を指定します。

      • [追跡の形式のデバッグ 選択: 短い実行時間を持つER形式を対話型で実行する場合は、この値を定義します。 次に、ER 形式の実行に関する詳細のコレクションが開始されます。 この値が選択されている場合、パフォーマンス追跡によって、次のアクションに費やされた時間に関する情報が収集されます。

        • データを取得するために呼び出されるモデル マッピングで各データ ソースを実行する
        • 生成される出力にデータを入力するため各項目の形式を処理する

        デバッグ トレース形式値を選択すると、ER 操作デザイナーで追跡の内容を分析できます。 そこで、追跡に示されている ER 形式またはマッピング要素を表示できます。

      • 集計された追跡形式 : 選択実行時間が長いER形式をバッチ モードで実行する場合は、この値が使用されます。 次に、ER 形式の実行に関する集計詳細のコレクションが開始されます。 この値が選択されている場合、パフォーマンス追跡によって、次のアクションに費やされた時間に関する情報が収集されます。

        • データを取得するために呼び出されるモデル マッピングで各データ ソースを実行する
        • データを取得するために呼び出される形式マッピングで各データ ソースを実行する
        • 生成される出力にデータを入力するため各項目の形式を処理する

        バージョン Ggregated追跡の形式 値は、 Microsoft Dynamics 365 Finance 10.0.20以降で使用できます。

        ER 形式デザイナーおよび ER モデル マッピング デザイナーでは、単一のコンポーネントの合計実行時間を表示できます。 さらに、追跡には実行回数、1 回の実行の最小時間と最大時間など、実行に関する詳細が含まれます。

        メモ

        この追跡は、追跡されたコンポーネント パスに基づいて収集されます。 したがって、単一の親コンポーネントに名前のない複数の子コンポーネントが含まれる場合、または複数の子コンポーネントの名前が同じ場合、統計が正しく表示されません。

    2. 次のオプションをはいに設定して、ER モデル マッピングおよび ER フォーマット コンポーネントの実行に関する具体的な詳細を収集します。

      • クエリ統計の収集 : このオプションが有効な場合、パフォーマンス追跡で次の情報が収集されます。

        • データ ソースによって作成されたデータベース呼び出し数
        • データベースに対する複製呼び出し数
        • データベース呼び出しを行うために使用された SQL ステートメントの詳細
      • キャッシュのトレース アクセス : このオプションが有効な場合、パフォーマンス追跡は、キャッシュの使用状況に関するERモデルマッピング情報を収集します。

      • データ アクセスの追跡 : このオプションが有効な場合、パフォーマンス追跡は、レコード リスト タイプの実行されたデータ ソースに対してデータベースへの呼び出しの数に関する情報を収集します。

      • 追跡リスト - : このオプションを有効にすると、パフォーマンス追跡で、レコード リスト タイプのデータ ソースから要求されたレコード数に関する情報が収集されます。

    メモ

    ユーザー パラメーター ダイアログ ボックスのパラメーターは、ユーザーと現在の会社に固有です。

    ユーザー パラメーター ダイアログ ボックス。

ER 形式を実行する

  1. DEMF 会社を選択します。
  2. 組織管理 > 電子申告 > コンフィギュレーションの順に移動します。
  3. コンフィギュレーション ページのコンフィギュレーション ツリーで、パフォーマンス追跡形式項目を選択します。
  4. アクション ウィンドウで、実行を選択します。

生成されるファイルによって、6 つの仕入先の 265 トランザクションに関する情報が表示されることに注意してください。

実行追跡の確認

アプリケーションから生成された追跡のエクスポート

パフォーマンス追跡は、ソースの ER 形式から切り離され、外部の zip ファイルにシリアル化されます。

  1. 組織管理 > 電子申告 > 構成デバッグ ログの順に移動します。

  2. 電子申告実行ログページ、左ウィンドウの、コンフィギュレーション名フィールドで、パフォーマンス追跡形式を選択し、パフォーマンス追跡形式コンフィギュレーションの実行によって生成されたログ レコードを検索します。

  3. ページの右上隅にある添付ファイルボタン (紙クリップ記号) を選択するか、Ctrl + Shift + A を押します。

    電子申告実行ログ ページの添付ファイル ボタン。

  4. 電子申告実行ログの添付ファイル ページの、アクション ウィンドウで、開くを選択してパフォーマンス追跡を zip ファイルとして取得し、ローカルに保管します。

    電子申告実行ログの添付ファイル。

メモ

生成されるトレースは、GUID 形式のみの固有のレポート ID を通じて、ソース ER レポートを参照しています。 形式のバージョン番号付けは考慮されません。

実行される ER 形式と ER モデル マッピングに対して生成されたパフォーマンス追跡間の関連付けは、使用されたルート記述子と共通データ モデルに基づいていることに注意してください。 形式のバージョン番号付けおよびモデル マッピングは考慮されません。 モデル マッピングに対するモデル マッピングの既定値フラグの設定も考慮されません。

生成された追跡を RCS にインポートします

  1. RCS の、電子レポート ワークスペースで、レポート コンフィギュレーション タイルを選択します。

  2. 構成ページのコンフィギュレーション ツリーで、パフォーマンス追跡モデル項目を展開し、パフォーマンス追跡形式項目を選択します。

  3. アクション ウィンドウで、デザイナーを選択します。

  4. 形式デザイナーの、アクション ウィンドウで、パフォーマンス追跡を選択します。

  5. パフォーマンス追跡結果の設定ダイアログ ボックスで、パフォーマンス追跡のインポートを選択します。

  6. 参照を選択し、先ほどインポートした zip ファイルを選択します。

  7. OK を選択します。

    RCS のパフォーマンス追跡結果の設定ダイアログ ボックス。

RCS での分析に対するパフォーマンス追跡の使用 – 形式実行

  1. RCS の、形式デザイナー ページで、展開/折りたたみを選択してすべての形式項目の内容を展開します。

    現在の形式の一部の項目に関して、追加情報が表示されることに注意してください。

    • 形式項目を使用して生成された出力にデータを入力するのに費やした実際の時間
    • 出力全体の生成に費やされた合計時間の割合で表される同じ時間

    RCS の形式デザイナー ページ。

  2. 形式デザイナー ページを閉じます。

RCS での分析に対するパフォーマンス追跡の使用 – モデル マッピング

  1. RCS、コンフィギュレーション ページのコンフィギュレーション ツリーで、パフォーマンス追跡マッピング項目を選択します。
  2. アクション ウィンドウで、デザイナーを選択します。
  3. デザイナー をクリックします。
  4. モデル マッピング デザイナー ページの、アクション ウィンドウで、パフォーマンス追跡を選択します。
  5. 事前にインポートした追跡を選択します。
  6. OK を選択します。

現在のモデル マッピングの一部のデータ ソース項目に関する、新しい情報が利用可能になることに注意してください。

  • データ ソースを使用してデータの取得に費やした実際の時間
  • モデル マッピング全体の実行に費やされた合計時間の割合で表される同じ時間

VendTable/<Relations/VendTrans.VendTable_AccountNum データ ソースの実行中は、現在のモデル マッピングがデータベース要求を重複することを ER から通知されることに注意してください。 この重複が発生するのは、仕入先トランザクションの一覧が、反復する仕入先レコードごとに 2 回呼び出されるためです。

  • 1 回の呼び出しでは、構成されたバインディングに基づいて、データ モデルの各トランザクションの詳細を入力します。
  • もう 1 回の呼び出しで、データ モデルの仕入先ごとに計算されたトランザクション数を入力します。

RCS のモデル マッピング デザイナー ページで重複したデータベース要求に関するメッセージ。

[Q:530] の値は、テーブルから VendTable/<Relations/VendTrans.VendTable_AccountNum データ ソースにレコードを返すため、VendTrans テーブルが 530 回呼び出されたことを示します。 [530] の値は、VendTable/<Relations/VendTrans.VendTable_AccountNum データ ソースが、そのデータ ソースからレコードを返し、データ モデルで詳細を入力するために 530 回呼び出されたことを示します。

265 トランザクションの詳細を取得するための呼び出し数を減らし、モデルマッピングのパフォーマンスを向上させるため、VendTable/<Relations/VendTrans.VendTable_AccountNum データ ソースに対してキャッシュを使用することをお勧めします。

それは LedgerTransTypeList データ ソースに対して行われる呼び出し数を減らすのにも役立ちます。 このデータ ソースは、LedgerTransType 列挙の各値をラベルに関連付けるために使用されます。 このデータ ソースを使用すると、適切なラベルを検索して、各仕入先トランザクションのデータ モデルに入力できます。 このデータ ソースへの現在の呼び出し数 (9,027) は、265 トランザクションに対して非常に高くなっています。

データ ソースへの 9,027 の呼び出しを示す、RCS のモデル マッピング デザイナー ページ。

実行追跡からの情報に基づいてモデル マッピングを改善する

モデル マッピングのロジックを変更する

  1. 次の手順に従ってキャッシュを使用すると、データベースへの重複呼び出しを防ぐことができます。

    1. RCS、モデル マッピング デザイナー ページの、データ ソース ウィンドウで、VendTable 項目を選択します。
    2. キャッシュを選択します。
    3. VendTable 項目を展開し、VendTable データ ソース (<関係項目) の一対多の関係の一覧を展開してから、VendTrans.VendTable_AccountNum 項目を選択します。
    4. キャッシュを選択します。

    重複呼び出しを防ぐためのキャッシュ設定。

  2. LedgerTransTypeList データ ソースを VendTable データ ソースのスコープに移動するには、次の手順に従います。

    1. データ ソース タイプ ウィンドウで、関数項目を展開し、計算済フィールド項目を選択します。
    2. データ ソース ウィンドウで、VendTable 項目を選択します。
    3. 追加を選択します。
    4. 名前フィールドで、$TransType を入力します。
    5. 式の編集を選択します。
    6. フィールドに、LedgerTransTypeList を入力します。
    7. 保存 を選択します。
    8. 式の編集ページを閉じます。
    9. OK をクリックします。
  3. 次の手順に従って、$TransType フィールドをキャッシュします。

    1. LedgerTransTypeList 項目を選択します。
    2. キャッシュを選択します。
    3. VendTable.$TransType 項目を選択します。
    4. キャッシュを選択します。

    $TransType フィールドのキャッシュ設定。

  4. 次の手順に従って $TransTypeRecord フィールドを変更し、キャッシュされた $TransType フィールドを使用開始できるようにします。

    1. データ ソース ウィンドウで、VendTable 項目を展開し、<関係項目を展開し、VendTrans.VendTable_AccountNum 項目を展開してから、VendTable. VendTrans.VendTable_AccountNum.$TransTypeRecord 項目を選択します。

    2. 編集を選択します。

    3. 式の編集を選択します。

    4. フィールドで、次の式を検索します。

      FIRSTORNULL (WHERE (LedgerTransTypeList, LedgerTransTypeList.Enum = @.TransType))

    5. フィールドで、次の式を入力します。

      FIRSTORNULL (WHERE (VendTable.'$TransType', VendTable.'$TransType'.Enum = @.TransType)).

    6. 保存を選択します。

    7. 式の編集ページを閉じます。

    8. OK を選択します。

  5. 保存 を選択します。

  6. モデル マッピング デザイナー ページを閉じます。

  7. モデル マッピング ページを閉じます。

ER モデル マッピングの変更されたバージョンを完了する

  1. RCS、コンフィギュレーション ページの、バージョン クイック タブで、パフォーマンス追跡マッピング コンフィギュレーションのバージョン 1.2 を選択します。
  2. ステータスの変更を選択します。
  3. 完了を選択します。

変更された ER モデル マッピング コンフィギュレーションを RCS からアプリケーションにインポートする

この記事の先のセクション ER コンフィギュレーションを RCS から財務と運用アプリにインポートする の手順を繰り返して、パフォーマンス追跡マッピング コンフィギュレーションのバージョン 1.2 をインポートします。

変更された ER ソリューションを実行して追跡実行する

ER 形式を実行する

この記事の先のセクション ER 形式を実行する の手順を繰り返して、新しいパフォーマンス追跡を生成します。

実行トレースを使って作業する

アプリケーションから生成された追跡のエクスポート

この記事の先のセクション 生成された追跡をアプリケーションからエクスポートする の手順を繰り返して、新しいパフォーマンス追跡をローカルに保存します。

生成された追跡を RCS にインポートする

この記事の先のセクション 生成された追跡を RCS にインポートする の手順を繰り返して、新しいパフォーマンス追跡を RCS にインポートします。

RCS での分析に対するパフォーマンス追跡の使用 – モデル マッピング

この記事の先のセクション RCS での分析に対するパフォーマンス追跡の使用 – モデル マッピング の手順を繰り返して、最新のパフォーマンス追跡を分析します。

モデル マッピングに対して行った調整によって、データベースへの重複するクエリが消去されたことに注意してください。 このモデル マッピングのデータベース テーブルおよびデータ ソースへの呼び出し数も減少しました。 したがって、ER ソリューション全体のパフォーマンスが向上しました。

RCS の、モデル マッピング デザイナー ページで、VendTable データ ソースに関する情報を追跡します。

追跡情報で、VendTable データ ソースの [12] の値は、このデータソースが 12 回呼び出されたことを示します。 [Q:6] の値は、6 つの呼び出しが VendTable テーブルへのデータベース呼び出しに変換されたことを示します。 [C:6] の値は、データベースからフェッチされたレコードがキャッシュされ、その他の 6 つの呼び出しがキャッシュを使用して処理されたことを示します。

LedgerTransTypeList データソースへの呼び出し数が 9,027 から 240 に減少したことに注意してください。

RCS の モデル マッピング デザイナー ページで、LedgerTransTypeList データ ソースに関する情報を追跡します。

アプリケーションで実行追跡を確認する

RCS に加えて、一部のバージョンでは ER フレームワーク デザイナー経験に対する機能が提供される場合があります。 これらのバージョンにはデザイン モードを有効にするオプションがあり、有効にすることができます。 このオプションは電子申告パラメーターページの一般タブで検索できます。このページは電子申告ワークスペースから開くことができます。

電子申告パラメーター ページでデザイン モード オプションを有効にする。

これらのいずれかのバージョンを使用する場合は、生成されたパフォーマンス追跡の詳細をアプリケーションで直接分析できます。 アプリケーションからエクスポートして RCS にインポートする必要はありません。

外部ツールを使用した実行追跡の確認

ユーザー パラメーターのコンフィギュレーション

  1. 組織管理 > 電子申告 > コンフィギュレーションの順に移動します。
  2. 構成ページ、アクション ウィンドウ、構成タブ、詳細設定グループで、ユーザー パラメーターを選択します。
  3. ユーザー パラメーター ダイアログ ボックス、実行トレース セクションの、実行トレース形式フィールドで、PerfView XML を選択します。

ER 形式を実行する

この記事の先のセクション ER 形式を実行する の手順を繰り返して、新しいパフォーマンス追跡を生成します。

Web ブラウザーによって、ダウンロード用の zip ファイルが提供されていることに注意してください。 このファイルには、PerfView 形式のパフォーマンス追跡が含まれています。 次に、PerfView パフォーマンス分析ツールを使用して ER 形式実行の詳細を分析できます。

PerfView 形式のパフォーマンス トレース情報。

外部ツールを使用してデータベース クエリを含む実行トレースを確認する

ER フレームワークに行われた改善のため、PerfView 形式で生成されたパフォーマンスの追跡により、ER 形式の実行に関する詳細情報が提供されるようになりました。 また Microsoft Dynamics 365 Finance 10.0.4 (2019年7月) に、この追跡に、アプリケーション データベースに対して実行されたSQLクエリの詳細も含まれます。

ユーザー パラメーターのコンフィギュレーション

  1. 組織管理> 電子申告> コンフィギュレーションに移動します。

  2. 構成ページ、アクション ウィンドウ、構成タブ、詳細設定グループで、ユーザー パラメーターを選択します。

  3. ユーザー パラメーター ダイアログ ボックスの実行トレース セクションで、次のパラメーターを設定します。

    • 実行トレース形式フィールドで、PerfView XML を選択します。
    • クエリ統計情報の収集 オプションをはいに設定します。
    • クエリの追跡オプションをはいに設定します。

    トレースの実行セクション、ユーザー パラメータ ダイアログ ボックス。

ER 形式を実行する

この記事の先のセクション ER 形式を実行する の手順を繰り返して、新しいパフォーマンス追跡を生成します。

Web ブラウザーによって、ダウンロード用の zip ファイルが提供されていることに注意してください。 このファイルには、PerfView 形式のパフォーマンス追跡が含まれています。 次に、PerfView パフォーマンス分析ツールを使用して ER 形式実行の詳細を分析できます。 この追跡に、ER 形式の実行中における SQL データベース アクセスに関する詳細が含まれるようになりました。

PerfView で実行された ER 形式のトレース情報。

追加リソース