柔軟性とスケーラビリティを高めるために、既存の基本変数型と共に高度な変数を導入します。 これらの高度な変数は、外部接続と内部接続 (Snowflake、AWS、OneLake など) のパラメーター化などの主要な要件を満たすように設計されています。
項目参照変数は、ワークスペース ID と項目 ID を格納することによって、既存の Fabric 項目 (Lakehouse、ノートブック、データ パイプラインなど) への参照を保持するために Fabric 変数ライブラリ内で使用される高度な変数型です。 この種類の変数を使用すると、内部接続のパラメーター化が可能になり、開発者はデプロイ ステージまたはワークスペース コンテキストに基づいて項目を特定の Fabric 項目に動的にリンクできます。
使用方法
項目参照変数は、変数ライブラリ内の他の変数と同様に使用できます。
- Microsoft Fabric にサインインする
- ワークスペースと変数ライブラリに移動する
- 上部にある [+ 新しい変数] を選択します。
- 変数の名前を指定し、型の 項目参照 を選択し、 ... をクリックして値を選択します。
- これにより、目的の項目を選択するダイアログが開きます。 アクセス許可を持っているすべての項目が表示され、選択できます。 左側のエクスプローラーを使用して、ワークスペースで一覧をフィルター処理します。 右上隅のフィルターを使用して、種類でフィルター処理します。
6. 選択すると、varlib ページに次のように表示されます。項目の名前を示す読み取り専用コンポーネントとして表示されます。
項目参照を編集する必要がある場合、または値を再確認する必要がある場合:
- 追加の詳細を表示するには、値をクリックします
- この値または他の値セットの値を編集するには、値の横にあるボタンをクリックします。
動作方法
項目参照変数の値は、基本的には 、ワークスペース ID + 項目 ID で識別されるファブリック項目への静的ポインターです。 この値は、ターゲット 項目のワークスペースと項目自体に対応する GUID のペアとして格納されます。 たとえば、参照は内部的に次のように格納される場合があります。
- WorkspaceID = aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
- ItemID = 00aa00aa-bb11-cc22-dd33-44ee44ee44ee
これら 2 つの ID は、参照される項目を一意に識別します。
項目参照を操作する場合は、次の点に注意してください。
- 項目参照を使用すると、内部接続のパラメーター化が可能になり、開発者はデプロイ ステージまたはワークスペース コンテキストに基づいて特定の Fabric リソースに項目を動的にリンクできます。
- 参照は静的であり、特定の項目を指しており、環境間で自動的に調整されるわけではありません。
- ステージ固有のバリエーションの場合は、値セットを使用します。各セットは、異なる静的項目 (ステージごとに異なるレイクハウスなど) を指すことができます。
- 互換性を確保し、実行時エラーを防ぐために、値セット全体のすべての値が同じ項目の種類である 必要があります 。 ただし、値セット間で同じ項目の種類を持つことは強制されません。
サポートされているアイテム
項目参照を使用して現在サポートされている項目の一覧を次に示します。
- レイクハウスのショートカット
- ユーザー データ関数
- ノートブックはNotebookUtilsを通じて利用します。
注
%%configure経由のノートブックはサポートされていません。
制限事項
現時点では、ファブリック項目とセマンティック モデルのみを参照できます。 Datamarts、Dataflow Gen1 などの他の Power BI 項目は現在サポートされていません。
アイテム参照の作成/使用に必要なアクセス許可
アイテム参照変数の使用には、次の 2 つのアクセス許可レイヤーが含まれます。
- 作成/編集 - ワークスペースの共同作成者は変数の値を変更できますが、Item 参照変数では、ユーザーが読み取りアクセス許可を持つ値項目として設定することのみが許可されます。 これは、任意の値、既定のアクティブな値セット、またはその他の値セットに適用されます。 変数ライブラリ項目を保存するときに、項目を保存するユーザーの項目参照変数のアクティブな値に対してアクセス許可チェックが実行されます。それらの値が変更されていない場合でも注意してください。
- 項目参照変数を使用 する - コンシューマーアイテム内の変数への参照を作成/更新する場合、ユーザーは、アクティブな値セット内の項目に対して少なくとも READ 権限を持っていない限り、項目参照変数への参照を設定できません。
アクセス許可の検証
アクセス許可の検証は、次のユース ケースでトリガーされます。
アイテム参照変数を持つ変数ライブラリ アイテムを編集する 編集時に、次のシナリオでは、アクティブな値セット内のすべての項目参照値に対して、参照先アイテムが存在すること、およびユーザーに対する読み取りアクセス許可が少なくとも付与されていることを検証します。
UI - 変数ライブラリ項目の 保存 中に、項目を保存しているユーザーの項目参照変数のアクティブな値に対してアクセス許可チェックが実行されます。それらの値は変更されません。
API/Git Update - アクセス許可の検証は更新中に行われ、更新されたワークスペースの Item ref のアクティブな値に対する読み取りアクセス許可がない場合は失敗します。
デプロイ - ターゲット ワークスペースの Item ref のアクティブな値に対する読み取りアクセス許可がない場合、変数ライブラリ 項目のデプロイは失敗します。
[変数ライブラリ] ページ (UI のみ) で項目参照の追加の詳細を表示します。参照されている項目変数の項目に対するアクセス許可がない変数ライブラリ (WS ビューアー以上) へのアクセス権を持つユーザーは、その詳細を UI に表示しません。 代わりに、詳細コンポーネントではなく、ホバー メッセージを伴う項目 ID が表示されます。
アイテム参照変数の作成/編集
- UI - 任意の値セットの値 (既定値など) を更新する場合、ユーザーは、少なくとも読み取りアクセス許可を持つ項目のみを表示する項目を一覧から選択できます。
- API/Git Update またはデプロイ - 上記の変数ライブラリ項目の編集を参照してください。
コンシューマー項目での項目参照変数の使用
- UI - 変数への参照の作成 - '変数の選択' UI ダイアログを使用して項目参照変数への参照を作成する場合 (Lakehouse と Data パイプラインのショートカットなど)、参照を作成するユーザーが 'item reference' 変数内のアイテムに対する読み取りアクセス許可を少なくとも持っているという検証があります (検証はアクティブな値に対してのみ行われます)。 そうでない場合、ユーザーにはアイテムの ID だけが表示されます。
CI/CD パイプラインとデプロイ ステージ間の動作
変数ライブラリを使用すると、ステージ固有の構成に項目参照変数を使用して、環境 (開発、テスト、Prod) 全体のファブリック コンテンツに対して CI/CD を有効にします。 次の点に注意してください。
静的参照
- アイテム参照は、特定のワークスペースとアイテム ID に関連付けられます。
- 新しいステージにデプロイする場合、手動で更新しない限り、これらの参照は引き続き元のワークスペースを指します。
- ステージごとに複数の Value-Sets を使用し、適切なセットを手動で、または API スクリプトを使用してアクティブ化します。
詳細については、 変数ライブラリの値セットを参照してください。
Git と API での表現
変数ライブラリはコードとして管理されます。 Git または REST API を使用すると、項目参照変数の JSON 形式が明確になります。 すべての変数は、変数ライブラリの定義ファイル (Git に格納され、通常は .json)、名前、型、値などのプロパティの一覧に表示されます。
項目参照 (静的) 変数の場合、値はワークスペース ID と項目 ID の構造化データです。 例:
{
"name": "MyDataLake",
"note": "",
"type": "ItemReference",
"value": {
"itemId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
"workspaceId": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb"
}
}
API を使用する場合は、次の点に注意してください。
- ID のみが格納されます。名とメタデータは、実行時に取得されるか、Fabric にキャッシュされます。
- API を使用した作成/更新では、ワークスペース ID と項目 ID を指定します。 無効な ID を指定するとエラーが発生します。
関連コンテンツ
- 変数ライブラリの概要
- 変数型
- 値セット
- 変数ライブラリのアクセス許可](./variable-library-permissions.md)