Compartir por


pac power-fx

(Versión preliminar) Comandos para trabajar con Power Fx

Utilice estos comandos para interactuar con datos en Dataverse mediante una línea de comando o script. Reduzca el tiempo y la complejidad de sus operaciones de Dataverse con Power Fx.

Puede utilizar las fórmulas enumeradas en Referencia de fórmulas - Power Platform CLI.

Comandos

Command Description
pac power-fx repl (Versión preliminar) Iniciar bucle de lectura-evaluación-impresión de Power Fx interactivo
pac power-fx run (Versión preliminar) Ejecutar un archivo de instrucciones de Power Fx

pac power-fx repl

(Versión preliminar) Iniciar bucle de lectura-evaluación-impresión de Power Fx interactivo

Nota

Si instaló Power Platform CLI usando Windows MSI, hay un problema conocido con pac power-fx repl donde el shell puede dejar de responder al utilizar este comando.

Parámetros opcionales para power-fx repl

--environment -env

Especifica el Dataverse de destino. El valor puede ser una URL de Guid o HTTPS absoluta. Si no se especifica, se utilizará la organización activa seleccionada para el perfil de autenticación actual.

Comentarios

Este comando proporciona un shell para usar fórmulas enumeradas en Referencia de fórmulas - Power Platform CLI.

Inicie Power Fx repl ejecutando el siguiente comando:

pac power-fx repl

Después de eso, puede ejecutar comandos de Power Fx.

Ejemplos

Los siguientes ejemplos muestran el uso del comando pac power-fx repl.

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

Power Fx repl responde con lo siguiente:

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

Ejecute el siguiente comando para obtener ayuda sobre todos los comandos que están disponibles en Power Fx repl:

Help()

Power Fx repl responde con la siguiente salida:

  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

Estos comandos cambiarán con el tiempo para incluir más comandos. Debe sincronizarse con los comandos documentados disponibles actualmente.

Exit

Use Exit() para salir del comando repl.

pac power-fx run

(Versión preliminar) Ejecutar un archivo de instrucciones de Power Fx

Ejemplos

Los siguientes ejemplos muestran el uso del comando pac power-fx run.

Nota

En cada uno de estos ejemplos, es necesario:

  1. Crear un archivo llamado test-pfx.txt con expresiones de Power Fx en una carpeta de su ordenador, como c:\test.

  2. Abra una ventana de Windows PowerShell, navegue hasta la carpeta test y use el comando run especificando el archivo que contiene los comandos: pac power-fx run --file test-pfx.txt.

Para utilizar tablas de Dataverse, debe crear y seleccionar un perfil de autenticación. Consulte pac auth create y pac auth select.

Si obtiene un error, compruebe Resolución de problemas.

Crear registros de Dataverse

  1. Agregue el siguiente texto a test-pfx.txt y guarde el archivo.

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

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

    Puede esperar salidas como las siguientes:

    {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 una tabla de Dataverse

  1. Agregue este texto a test-pfx.txt y guarde el archivo.

    FirstN(Contacts, 5)
    

    Este comando recupera los primeros cinco contactos de Dataverse.

  2. Ejecute este comando:

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

    Puede esperar salidas como las siguientes:

    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 funciones de PowerFx

  1. Agregue el siguiente texto a test-pfx.txt y guarde el archivo.

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

    Este ejemplo utiliza las funciones Mid, If y Set de Power Fx.

  2. Ejecute el siguiente comando:

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

    Puede esperar salidas como las siguientes:

    PS C:\test> pac power-fx run --file test-pfx.txt
    x: 1
    true
    Result: "X"
    PS C:\test>
    
  3. Agregue el parámetro --echo y podrá esperar este resultado:

    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 requeridos para ejecución de power-fx

--file -f

Ruta del archivo que se va a ejecutar

Parámetros opcionales para ejecución de power-fx

--echo -e

Es true si los comandos de entrada deben repetirse en la salida

Este parámetro no requiere ningún valor. Es un modificador.

--environment -env

Especifica el Dataverse de destino. El valor puede ser una URL de Guid o HTTPS absoluta. Si no se especifica, se utilizará la organización activa seleccionada para el perfil de autenticación actual.

Solución de problemas

Los siguientes son pasos para solucionar errores que puede encontrar al usar los comandos pac power-fx.

Error cuando no existe un perfil de autenticación de Dataverse

Puede recibir un error como este cuando no tiene un perfil de autenticación universal asociado con un entorno 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 errores como estos, cree un perfil de autenticación universal asociado con un entorno de Dataverse.

  1. Ejecute el comando pac auth list.

    Es posible que vea un resultado como el siguiente que incluye un perfil de autenticación de UNIVERSAL sin una URL que indique que está asociado con un entorno de Dataverse.

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

    Esto no es suficiente porque no se especifica ningún entorno de Dataverse.

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

    Nota

    Utilice el parámetro --environment utilizando el valor de id. de entorno. Buscar el id. del entorno

    No utilice el parámetro --url porque esto creará un perfil DATAVERSE en lugar de un perfil UNIVERSAL.

    Por ejemplo:

    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. Ejecute pac auth list nuevamente. Debería ver un resultado con el perfil de conexión UNIVERSAL con una URL para su 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 el entorno UNIVERSAL para convertirlo en el perfil predeterminado usando el 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>
    

Consulte también

Grupos de comandos de Microsoft Power Platform CLI
Microsoft Power PlatformVisión general del CLI