pac power-fx

(プレビュー) Power Fx を使用するためのコマンド

コマンドラインやスクリプトを使用して Dataverse のデータを操作するには、これらのコマンドを使用します。 Power Fx を使用することで、Dataverse 操作の時間と複雑さを軽減します。

数式のリファレンス - Power Platform CLI にリストされている数式を使用できます。

コマンド

command Description
pac power-fx repl (プレビュー) インタラクティブな Power Fx 読み取り、評価、印刷ループを開始
pac power-fx run (プレビュー) Power Fx 説明書のファイルの実行

pac power-fx repl

(プレビュー) インタラクティブな Power Fx 読み取り、評価、印刷ループを開始

注意

Windows MSI を使用して Power Platform CLIをインストールした場合、このコマンドを使用すると、シェルが応答を停止する可能性があるという既知の問題がpac power-fx replにあります。

power-fx 返信のためのオプションのパラメーター

--environment -env

ターゲット Dataverse を指定します。 値は、Guid または絶対 https URL にすることができます。 指定しない場合、現在の認証プロファイルに選択されているアクティブな組織が使用されます。

注釈

このコマンドは、数式のリファレンス - Power Platform CLI にリストされている数式を使用するためのシェルを提供します。

次のコマンドを実行して、Power Fx repl を開始します。

pac power-fx repl

その後、Power Fx コマンドを実行できます。

使用例

次の例は、pac power-fx repl コマンドの使用を示します。

行を追加する
Collect(Contacts, { firstname: "Patti", lastname: "Fernandez" })

Power Fx repl は次のように応答します。

{contactid:GUID("118d7b47-8f80-ee11-8179-0022482a40c7"), fullname:"Patti Fernandez", ...}
ヘルプ​​

次のコマンドを実行して、Power Fx repl で使用できるすべてのコマンドに関するヘルプを表示します。

Help()

Power Fx repl は次の出力で応答します。

  Abs             Acos            Acot            AddColumns      And
  Asin            AsType          Atan            Atan2           Average
  Blank           Boolean         Char            Clear           ClearCollect
  Coalesce        Collect         ColorFade       ColorValue      Concat
  Concatenate     Cos             Cot             Count           CountA
  CountIf         CountRows       Date            DateAdd         DateDiff
  DateTime        DateTimeValue   DateValue       Day             Dec2Hex
  Decimal         Degrees         Distinct        DropColumns     EDate
  EncodeUrl       EndsWith        EOMonth         Error           Exp
  Filter          Find            First           FirstN          Float
  ForAll          GUID            Help            Hex2Dec         Hour
  If              IfError         Index           Int             IsBlank
  IsBlankOrError  IsEmpty         IsError         IsMatch         IsNumeric
  IsToday         Language        Last            LastN           Left
  Len             Ln              Log             LookUp          Lower
  Match           MatchAll        Max             Mid             Min
  Minute          Mod             Month           Not             Notify
  Now             OptionSetInfo   Or              ParseJSON       Patch
  Pi              PlainText       Power           Proper          Radians
  Rand            RandBetween     Refresh         Remove          Replace
  RGBA            Right           Round           RoundDown       RoundUp
  Second          Sequence        Set             Shuffle         Sin
  Sort            Split           Sqrt            StartsWith      StdevP
  Substitute      Sum             Switch          Table           Tan
  Text            Time            TimeValue       TimeZoneOffset  Today
  Trim            TrimEnds        Trunc           Upper           Value
  VarP            Weekday         With            Year
>>

注意

これらのコマンドは時間の経過とともに変更され、より多くのコマンドが含まれます。 これは、文書化された現在利用可能なコマンドと同期する必要があります。

Exit

Exit() を使用して repl コマンドを終了します。

pac power-fx run

(プレビュー) Power Fx 説明書のファイルの実行

使用例

次の例は、pac power-fx run コマンドの使用を示します。

注意

これらの各例では、次のことを行う必要があります。

  1. Power Fx 式を含む test-pfx.txt という名前のファイルを、コンピューター上のフォルダー、c:\test などに作成します。

  2. Windows PowerShell ウィンドウを開きtest に移動し、run コマンドを使用して、コマンドが含まれるファイルを指定します: pac power-fx run --file test-pfx.txt

Dataverse テーブルを使用するには、認証プロファイルを作成して選択する必要があります。 pac auth create および pac auth select を参照してください。

エラーが発生した場合は、トラブルシューティングを確認してください。

Dataverse レコードの作成

  1. 次のテキストを test-pfx.txt に追加し、ファイルを保存します。

    Collect(Contacts, { firstname: "Megan", lastname: "Bowen" })
    Collect(Contacts, { firstname: "Garth", lastname: "Forth" })
    Collect(Contacts, { firstname: "Adele", lastname: "Vance" })
    Collect(Contacts, { firstname: "Patti", lastname: "Fernandez" })
    
  2. このコマンドを実行します。

    PS C:\test> pac power-fx run --file test-pfx.txt
    

    次のような出力が期待できます。

    {contactid:GUID("80eb0c02-9180-ee11-8179-0022482a40c7"), fullname:"Megan Bowen", ...}
    {contactid:GUID("81eb0c02-9180-ee11-8179-0022482a40c7"), fullname:"Garth Forth", ...}
    {contactid:GUID("82eb0c02-9180-ee11-8179-0022482a40c7"), fullname:"Adele Vance", ...}
    {contactid:GUID("83eb0c02-9180-ee11-8179-0022482a40c7"), fullname:"Patti Fernandez", ...}
    

Dataverse テーブルをクエリする

  1. このテキストを test-pfx.txt に追加し、ファイルを保存します。

    FirstN(Contacts, 5)
    

    このコマンドは、Dataverse から最初の 5 つの連絡先を取得します。

  2. このコマンドを実行します。

    PS C:\test> pac power-fx run --file test-pfx.txt
    

    次のような出力が期待できます。

    Connected to... Your Organization
    Connected as you@yourorg.onmicrosoft.com
    
    contactid                                      fullname           ...
    ============================================== ================== =====
    GUID("eeb27495-d127-ed11-9db1-00224804f8e2")   Yvonne McKay (sample)
    GUID("cba0ed9e-d127-ed11-9db1-00224804f8e2")   Susanna Stubberod (sample)
    GUID("cea0ed9e-d127-ed11-9db1-00224804f8e2")   Nancy Anderson (sample)
    GUID("6cc7483c-7a77-ee11-8179-00224809f375")   Maria Campbell (sample)
    GUID("49b0be2e-d01c-ed11-b83e-000d3a572421")   Sidney Higa (sample)
    PS C:\test>
    

PowerFx 関数の使用

  1. 次のテキストを test-pfx.txt に追加し、ファイルを保存します。

    Set(x, 1)
    Result = If( Mid( "asdf",x,1 ) = "a", "X", "Y" )
    

    この例では、MidIf、および Set Power Fx 関数を使用します。

  2. 次のコマンドを実行します。

    PS C:\test> pac power-fx run --file test-pfx.txt
    

    次のような出力が期待できます。

    PS C:\test> pac power-fx run --file test-pfx.txt
    x: 1
    true
    Result: "X"
    PS C:\test>
    
  3. --echo パラメーターを追加すると、次の出力が期待できます。

    PS C:\test> pac power-fx run --file test-pfx.txt --echo
    Set(x, 1)
    
    x: 1
    true
    Result = If( Mid( "asdf",x,1 ) = "a", "X", "Y" )
    
    Result: "X"
    PS C:\test>
    

power-fx 実行のための必須パラメーター

--file -f

実行するファイルのパス

power-fx 実行のためのオプションのパラメーター

--echo -e

入力コマンドを出力にエコー バックする場合は True

このパラメーターには値が必要ありません。 それはスイッチです。

--environment -env

ターゲット Dataverse を指定します。 値は、Guid または絶対 https URL にすることができます。 指定しない場合、現在の認証プロファイルに選択されているアクティブな組織が使用されます。

トラブルシューティング​​

以下は、pac power-fx コマンドの使用時に発生する可能性のあるエラーをトラブルシューティングする手順です。

Dataverse 認証プロファイルが存在しない場合のエラー

Dataverse 環境に関連付けられたユニバーサル認証プロファイルがない場合、このようなエラーが発生することがあります。

PS C:\test> pac power-fx run --file test-pfx.txt
Error 8-16: Name isn't valid. 'Contacts' isn't recognized.
Error 18-59: The specified column 'firstname' does not exist.
Error 0-60: The function 'Collect' has some invalid arguments.
Error 8-16: Name isn't valid. 'Contacts' isn't recognized.
Error 18-59: The specified column 'firstname' does not exist.
Error 0-60: The function 'Collect' has some invalid arguments.
Error 8-16: Name isn't valid. 'Contacts' isn't recognized.
Error 18-59: The specified column 'firstname' does not exist.
Error 0-60: The function 'Collect' has some invalid arguments.
Error 8-16: Name isn't valid. 'Contacts' isn't recognized.
Error 18-63: The specified column 'firstname' does not exist.
Error 0-64: The function 'Collect' has some invalid arguments.

このようなエラーを解決するには、Dataverse 環境に関連付けられたユニバーサル認証プロファイルを作成します。

  1. コマンド pac auth list を実行します。

    UNIVERSAL 認証プロファイルが含まれ、Dataverse 環境に関連付けられていることを示す URL が含まれていない次のような結果が表示される場合があります。

    Index Active Kind      Name Friendly Name Url User                Cloud  Type
    [1]   *      UNIVERSAL                        you@yourcompany.com Public OperatingSystem
    

    Dataverse 環境が指定されていないため、これでは十分ではありません。

  2. pac auth create を使用して、Dataverse に接続された UNIVERSAL 認証プロファイルを作成します。

    注意

    環境値を使用して、--environment パラメーターを使用します。 自分の環境 ID を見つけます

    --url パラメーターは使用しないでください。これにより、UNIVERSAL プロファイルではなく DATAVERSE プロファイルが作成されます。

    例:

    PS C:\test> pac auth create --environment f2cef599-b112-4803-bb5d-090077017685 --name ConnectionName
    'you@yourcompany.onmicrosoft.com' authenticated successfully.
    Validating connection...
    Default organization: YourOrganization
    Connected to... YourOrganization
    Connected as you@yourcompany.onmicrosoft.com
    Authentication profile created
       * UNIVERSAL ConnectionName                 https://yourcompany.crm.dynamics.com/          : you@yourcompany.onmicrosoft.com              Public
    
    PS C:\test>
    
  3. pac auth list を再度実行します。 UNIVERSAL 接続プロファイルと Dataverse 環境の URL を使用した結果が表示されるはずです。

    PS C:\test> pac auth list
    Index Active Kind      Name           Friendly Name        Url                                   User                  Cloud  Type
    [1]   *      UNIVERSAL                                                                           you@yourcompany.com   Public OperatingSystem
    [2]   *      UNIVERSAL ConnectionName YourOrganization     https://yourcompany.crm.dynamics.com/ you@yourcompany.com   Public User
    
    PS C:\test>
    
  4. UNIVERSAL 環境を選択し、pac auth select コマンドを使用して既定のプロファイルにします。

    PS C:\test> pac auth select --index 2
    New default profile:
       * UNIVERSAL ConnectionName                 https://yourcompany.crm.dynamics.com/          : you@yourcompany.com              Public
    
    PS C:\test>
    

参照

Microsoft Power Platform CLI コマンド グループ
Microsoft Power Platform CLI の概要