Compartir por


pac power- fx

(Vista previa) Comandos para traballar con Power Fx

Use estes comandos para interactuar cos datos en Dataverse usando unha liña de comandos ou un script. Reduce o tempo e a complexidade das túas operacións de Dataverse usando Power Fx.

Pode usar as fórmulas listadas na referencia de fórmulas - CLI de Power Platform.

Comandos

Comando Descripción
PAC Power-FX REPL (Vista previa) Lanzamento interactivo de Power Fx Read-Eval-Print Loop
pac power-fx run (Vista previa) Executar un ficheiro de instrucións de Power Fx

PAC Power-FX REPL

(Vista previa) Lanzamento interactivo de Power Fx Read-Eval-Print Loop

Nota

Se instalou a CLI de Power Platform usando Windows MSI, hai un problema coñecido no pac power-fx repl que a shell pode deixar de responder ao usar este comando.

Parámetros opcionais para power-fx repl

--environment -env

Especifica o Dataverse de destino. O valor pode ser un Guid ou un URL https absoluto. Cando non se especifique, utilizarase a organización activa seleccionada para o perfil de autenticación actual.

Comentarios

Este comando proporciona unha shell para usar as fórmulas listadas en Referencia de fórmulas - CLI de Power Platform.

Inicia o repl de Power Fx executando o seguinte comando:

pac power-fx repl

Despois diso, podes executar comandos de Power Fx.

Exemplos

Os seguintes exemplos mostran o uso do pac power-fx repl comando.

Engadir filas
Collect(Contacts, { firstname: "Patti", lastname: "Fernandez" })

A resposta de Power Fx responde co seguinte:

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

Execute o seguinte comando para obter axuda sobre todos os comandos dispoñibles en Power Fx repl:

Help()

O repl de Power Fx responde coa seguinte saída:

  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
>>

Nota

Estes comandos cambiarán co paso do tempo para incluír máis comandos. Debe estar sincronizado cos comandos documentados actualmente dispoñibles.

Saír

Utiliza Exit() para saír do repl comando.

pac power-fx run

(Vista previa) Executar un ficheiro de instrucións de Power Fx

Exemplos

Os seguintes exemplos mostran o uso do pac power-fx run comando.

Nota

En cada un destes exemplos debes:

  1. Crea un ficheiro nomeado test-pfx.txt con expresións de Power Fx nun cartafol do computador, como c:\test.

  2. Abra unha xanela de Windows PowerShell, navegue ao test cartafol e use o run comando especificando o ficheiro que contén os comandos: pac power-fx run --file test-pfx.txt.

Para usar táboas de Dataverse, ten que crear e seleccionar un perfil de autenticación. Vexa pac auth create e pac auth select.

Se obtén un erro, comprobe Resolución de problemas.

Crear rexistros de Dataverse

  1. Engade o seguinte texto e garda test-pfx.txt o ficheiro.

    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. Executa este comando:

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

    Podes esperar resultados como os seguintes:

    {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", ...}
    

Consultar unha táboa de Dataverse

  1. Engade este texto e garda test-pfx.txt o ficheiro.

    FirstN(Contacts, 5)
    

    Este comando recupera os cinco primeiros contactos de Dataverse.

  2. Executa este comando:

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

    Podes esperar resultados como os seguintes:

    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>
    

Usar as funcións de PowerFx

  1. Engade o seguinte texto e garda test-pfx.txt o ficheiro.

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

    Este exemplo usa as funcións Mid, If e Set Power Fx.

  2. Execute o seguinte comando:

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

    Podes esperar resultados como os seguintes:

    PS C:\test> pac power-fx run --file test-pfx.txt
    x: 1
    true
    Result: "X"
    PS C:\test>
    
  3. Engade o --echo parámetro e podes esperar esta saída:

    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>
    

Parámetros necesarios para a execución de power-fx

--file -f

Ruta do ficheiro a executar

Parámetros opcionais para a execución de power-fx

--echo -e

Verdadeiro se os comandos de entrada deben repetirse de novo á saída

Este parámetro non precisa de valor. É un cambio.

--environment -env

Especifica o Dataverse de destino. O valor pode ser un Guid ou un URL https absoluto. Cando non se especifique, utilizarase a organización activa seleccionada para o perfil de autenticación actual.

Resolución de problemas

Os seguintes son os pasos para solucionar os erros que pode atopar ao usar pac power-fx comandos.

Aconteceu un erro cando non existe ningún perfil de autenticación de Dataverse

Pode obter un erro como este cando non ten un perfil de autenticación universal asociado a un ambiente de 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.

Para resolver erros como estes, crea un perfil de autenticación universal asociado a un entorno de Dataverse.

  1. Executa o comando pac auth list.

    Pode ver un resultado como o seguinte que inclúe un UNIVERSAL perfil de autenticación sen URL que indique que está asociado a un ambiente de Dataverse.

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

    Isto non é suficiente porque non se especifica ningún ambiente de Dataverse.

  2. Use pac auth create para crear un UNIVERSAL perfil de autenticación conectado a un entorno de Dataverse.

    Nota

    Utiliza o --environment parámetro usando o valor environmentid. Atopa o teu ID de entorno.

    Non empregue o --url parámetro porque isto creará un DATAVERSE perfil en lugar dun UNIVERSAL perfil.

    Por exemplo:

    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. Executar de novo a lista de autenticación de pac . Debería ver un resultado co UNIVERSAL perfil de conexión cun URL para o seu entorno de Dataverse.

    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. Seleccione o UNIVERSAL ambiente para convertelo no perfil predeterminado usando o comando 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>
    

Véxase tamén

Grupos de comandos da CLI de Microsoft Power Platform
Visión xeral da CLI de Microsoft Power Platform