グリッドのマスター詳細テンプレート

    マスター詳細テンプレートとは?

    マスター詳細テンプレートを使用すると、行を展開してレコードに関する追加情報を表示することで、データ グリッドを充実させることができます。この機能により、ユーザーがクリックして関連する集計や特定の行コンテキスト データに関連付けられたその他のコンポーネントを表示できるインタラクティブなビューを構築できます。

    何ができるのか?

    App Builder のマスター詳細テンプレートのサポートにより、以下のことが可能です:

    • 追加の行データを表示できる展開可能な行を利用
    • コンポーネント バインディングのサポートを活用し、カード、テキスト ブロック、その他のコンポーネントを追加して、行ごとのデータを利用

    App Builder における仕組み

    • App Builder では、行の詳細領域にコンポーネントを挿入するデザイン時エクスペリエンスが提供されます。
    • この領域内のコンポーネントは以下にバインドできます:
      • 現在の行のデータ コンテキスト
      • その他のデータ ソースと変数のコンテキスト
    • テンプレートが App Builder キャンバスと App プレビュー内でどのように表示されるかを簡単にプレビューできます。

    試してみましょう

    マスター詳細テンプレートの使用を開始するには:

    1. キャンバスに Grid を追加します。
    2. グリッド プロパティ パネル -> カスタム テンプレートの下で、グリッド詳細スイッチをクリックします。
    3. 詳細領域内で、使用したいコンポーネントをドラッグ アンド ドロップします。
    4. グリッド行コンテキストのフィールドにバインドします。
    5. アプリをプレビューし、コードをエクスポートして機能をさらに拡張します。

    既知の制限

    コンテキスト バインディングと行 ID パラメーターの非対応

    マスター詳細テンプレート内でコンポーネントを使用する場合、現在の行の ID をパラメーターとして使用するようなコンテキスト バインディングには対応していません。コンポーネントのデータ ソースにパラメーターが必要な場合は、それらをマスター詳細 (行) コンテキストにバインドしないでください。代わりに、手動の値または定義済みの変数を使用してください。この制限は、行ごとのパラメーター バインディングを含むサポートされていないコード生成シナリオを回避するのに役立ちます。

    Note

    この制限が適用されるのは、データ ソースのパラメーターおよび繰り返し要素のデータ バインディングのみです。コンポーネント間の操作で使用される Set Data アクションのパラメーター ピッカーなど、その他のパラメーター指定コンポーネントには影響せず、引き続き完全にサポートされています。

    この制限が役立つ理由:

    • 動的なサブスクリプションに関する曖昧さの回避
    • キャッシュがない場合のパフォーマンス低下の防止

    現在、コンテキスト バインディングを使用してデータ コレクションを繰り返す処理は CodeGen では実装されていません

    現在、コンテキスト バインディングを使用してデータ コレクションを繰り返す処理は CodeGen では実装されていません。このようなシナリオは、コードの自動生成に失敗します。

    オーバーレイ コンポーネント (例: Dialog、Banner)

    マスター詳細テンプレート内に配置された DialogBanner などのオーバーレイ要素は、現在のところ生成されたコードでは正しく動作しません。

    これらのコンポーネントは App Builder プレビューでは機能しているように見えますが、生成されたアプリケーションでは行データのコンテキストを保持しません。たとえば、EmployeeId などの詳細を表示するダイアログは、ローカル実行時にはその値にアクセスできません。

    リソース