[このトピックはプレリリース ドキュメントであり、変更されることがあります。]
関数は、キャンバス アプリから、モデル駆動型アプリのカスタム ページ、フロー、コード、または別の関数から Dataverse で呼び出すことができます。
重要
- これはプレビュー機能です。
- プレビュー機能は運用環境での使用を想定しておらず、機能が制限されている可能性があります。 これらの機能を公式リリースの前に使用できるようにすることで、顧客が事前にアクセスし、そこからフィードバックを得ることができます。
キャンバス アプリ またはカスタム ページから関数を呼び出す
- Power Apps の 関数 領域 (make.powerapps.com) から、キャンバス アプリまたはカスタムページから呼び出す関数を選択します。
- コマンド バーで コード スニペットのコピー を選択します。
- コピーした数式をテキスト エディターやメモ帳など、簡単に参照できる場所に貼り付けて保存します。
- Power Apps Studio の場合
- Power Apps Studio でキャンバス アプリまたはカスタム ページを作成または編集します。
- 左側のナビゲーション ウィンドウの データ ソース タブで データの追加を選択し、Dataverse コネクタから 環境 オプションを検索して選択します。
- 次のコンポーネントを キャンバス に挿入します。
- 数値入力など、各パラメーターのデータ型に対応する入力コントロールを追加します。
- 関数を呼び出すボタンを追加します。
- 数値入力など、パラメーターのデータ型に対応する出力コントロールを追加します。
- 作成したボタンを選択し、OnSelect プロパティに Environment.new_calculatesum などの関数を入力します。
- 各入力パラメーター
Valueをマップして、対応する入力コントロールを参照します:- 関数が
Environment.new_CalculateSum({ X: Value, Y: Value });の場合は、次のように書き換えることができます:Environment.new_CalculateSum({ X: NumberInput1.value, Y: NumberInput2.value });。 - 関数の 'result' 出力を設定するには、数式を 'Set(result, Environment.new_CalculateSum({ X: NumberInput1.value, Y: NumberInput2.value }))' に更新します。
- 関数が
- 出力コントロールを選択し、'result.z' の数式で 'Value' プロパティを設定します。
アプリをプレビューし、入力 1 と 2 の値を入力して、ボタンを選択します。 結果が出力フィールドに表示されます。
Power Automate クラウド フローから関数を呼び出す
- クラウド フローで、Microsoft Dataverse コネクタから新しいアクションを追加します。
- バインドされていないアクションを実行する というアクションを選択します
- 関数を選択します。 関数には、プレフィックス付きの一意の名前が付けられます。
- 入力パラメーターの値をすべて指定します (ある場合)。
Dataverse Web API から関数を呼び出す
Web API からのカスタム API の呼び出し の記事のバインドされていないアクション セクションの手順に従います (プラグインの適切なスコープによって異なります)。
新しい関数内から既存の関数を呼び出す
新しい関数内で既存の関数を呼び出すには、次の構文を使用します: Environment.ExistingFunction({inputParam1: value1, inputParam2: value2, ... inputParamN: valueN})
出力は常にレコードであるため、ドット表記を使用して出力パラメーターにアクセスします。 たとえば、関数 "ExistingFunction" に out1 と out2 として定義された 2 つの出力パラメーターがある場合、次の 2 つの方法のいずれかでアクセスできます。
Environment.ExistingFunction({inputParam1: value1, inputParam2: value2, ... inputParamN: valueN}).out1Environment.ExistingFunction({inputParam1: value1, inputParam2: value2, ... inputParamN: valueN}).out2
Dataverse での関数の制限
- 既存のキャンバス アプリ内の新しい関数にアクセスするためには、環境言語オブジェクトを再追加する必要があります。 既存のキャンバス アプリに環境テーブル データ ソースを追加した後に作成した関数の場合、Power Fx 環境言語オブジェクトを削除して再追加する必要があります。 次に、更新された関数のリストがアクションとして表示されます。
- ネスト化されたサポート。 関数は、Power Fx 式から Microsoft によって Microsoft アクションのみを呼び出すことができます。
-
CollectのシナリオにはPatchが必要なものもあります。 一部、Collect()が機能しないシナリオがあります。 回避策は、ここに示されている関連列の設定例のようにPatch()を使用することです。
Patch(Faxes,
Collect(Faxes, { Subject : "Sub1" } ),
{ Regarding : First(Accounts) }
)
関数をデバッグしてサポートを受ける
関数の作成または実行で問題が発生した場合は、trace() 関数を使用してデバッグするか、Dataverse の関数の制限 に進んで発生する可能性のある一般的な問題を確認してください。
trace() 関数を使用したデバッグ
- トレース関数を使用してデバッグするには、プラグインとカスタム ワークフロー活動の追跡を有効にしてください。
- Power Apps (make.powerapps.com) に移動して、右上にある 設定 ギアアイコンを選択して、詳細設定 を選択します。
- 設定 > 監査 > グローバル監査設定を選択します。
- カスタム設定 タブで、プラグイン トレース ログへのログ記録を有効にする を すべて 有効に設定します。
追跡を有効にすると、trace() 関数を使用して Power Fx 数式をデバッグできるようになります。 Power Fx 関数内の trace() 関数を使う方法については、関数 Power Platform のトレース を参照してください。
ヘルプ + サポートに問い合わせる
Microsoft Dataverse ローコード プラグイン ヒントに記載されていない関数の問題や、文書化されていないエラーが表示されるなどの既知の問題については、ヘルプ + サポート エクスペリエンスを使用し、次の情報を含めてください。
- 問題の種類 - Dataverse Web API および SDK。
- 問題のサブタイプ。