最初のコネクタを作成する: Hello World
このサンプルは、Visual Studio Code で実行し、Power BI Desktop に読み込むことができる、シンプルなデータ ソース拡張機能を提供するものです。
Hello World サンプル
概要として、このサンプルでは以下を示します。
- オプションのテキスト パラメーターを受け取る関数 (
HelloWorld.Contents
) をエクスポートする。 - データ ソースの種類を定義し、次のことを指定する:
- 暗黙的 (匿名) 認証を使用することを宣言する。
- ローカライズに対応した文字列リソースを使用する。
- UI メタデータを宣言して、拡張機能が Power BI Desktop の [データの取得] ダイアログに表示されるようにする。
「PowerQuery SDK のインストール」の手順に従って、"HelloWorld" という名前の新しいコネクタを作成し、次の M コードでコピーして、コネクタ ワークスペースの HelloWorld. pqに貼り付けた後、残りの手順に従って、それを PowerBI で開けるようにしてください。
次のコネクタ定義では、以下のものが確認できます。
section
ステートメント。- メタデータを使ったデータ ソース関数。Kind
HelloWorld
と PublishHelloWorld.Publish
を指定したデータ ソース定義になっています。 - 暗黙的 (匿名) がこのソースの唯一の認証の種類であると宣言した
Authentication
レコード。 - この接続がベータ版であること、resx ファイルから読み込むテキスト、ソース画像、およびソースの種類の画像を宣言した発行レコード。
- アイコンのサイズをビルド フォルダー内の特定の PNG と関連付けているレコード。
section HelloWorld;
[DataSource.Kind="HelloWorld", Publish="HelloWorld.Publish"]
shared HelloWorld.Contents = (optional message as text) =>
let
message = if (message <> null) then message else "Hello world"
in
message;
HelloWorld = [
Authentication = [
Implicit = []
],
Label = Extension.LoadString("DataSourceLabel")
];
HelloWorld.Publish = [
Beta = true,
ButtonText = { Extension.LoadString("FormulaTitle"), Extension.LoadString("FormulaHelp") },
SourceImage = HelloWorld.Icons,
SourceTypeImage = HelloWorld.Icons
];
HelloWorld.Icons = [
Icon16 = { Extension.Contents("HelloWorld16.png"), Extension.Contents("HelloWorld20.png"), Extension.Contents("HelloWorld24.png"), Extension.Contents("HelloWorld32.png") },
Icon32 = { Extension.Contents("HelloWorld32.png"), Extension.Contents("HelloWorld40.png"), Extension.Contents("HelloWorld48.png"), Extension.Contents("HelloWorld64.png") }
];
ファイルをビルドし、正しいディレクトリにコピーしたら、「PowerQuery SDK のインストール」の手順に従って、Power BI を開きます。 "Hello" を検索すると、[データの取得] ダイアログでコネクタを見つけることができます。
この手順を実行すると、認証ダイアログが表示されます。 認証オプションはなく、関数に必要なパラメーターもないので、これらのダイアログには、それ以上の手順はありません。
[接続] をクリックすると、それが "プレビュー コネクタ" であることがダイアログによって知らされます (クエリで Beta
が true に設定されているため)。 認証は行われないため、認証画面には、フィールドのない匿名認証のタブが表示されます。 もう一度 [接続] を押して終了します。
最後に、クエリ エディターが表示され、"Hello world" というテキストを返す関数が表示されます。
完全に実装されたサンプルについては、データ コネクタ サンプル リポジトリの Hello World サンプルを参照してください。