Paseo introductorio por el lenguaje de fórmulas M de Power Query

En este paseo introductorio se describe cómo crear consultas de lenguaje de fórmulas M de Power Query.

Nota

M es un lenguaje que distingue mayúsculas de minúsculas.

Creación de una consulta con el editor de Power Query

Para crear una consulta avanzada, use el Editor avanzado de Power Query. Una consulta de mashup se compone de variables, expresiones y valores encapsulados mediante una expresión let. Una variable puede contener espacios mediante el identificador # con el nombre entre comillas, como en #"Variable name".

Una expresión let sigue esta estructura:

let
   Variablename = expression,
   #"Variable name" = expression2
in
   Variablename

Para crear una consulta M en el editor avanzado, siga este proceso básico:

  1. Cree una serie de pasos de la fórmula de la consulta que empiecen por la instrucción let. Cada paso se define mediante un nombre de variable del paso. Una variable M puede incluir espacios mediante el uso del carácter #, como en #"Step Name". Un paso de fórmula puede ser una fórmula personalizada. Tenga en cuenta que el lenguaje de fórmulas de Power Query distingue mayúsculas de minúsculas.

  2. Cada paso de la fórmula de la consulta se compila en base a un paso anterior al hacer referencia a un paso por su nombre de variable.

  3. Genere un paso de la fórmula de la consulta mediante la instrucción in. Por lo general, el último paso de la consulta se usa como el resultado del conjunto de datos final.

Para obtener más información sobre las expresiones y los valores, vaya a Expresiones, valores y expresión let.

Pasos sencillos de la fórmula M de Power Query

Supongamos que ha creado la siguiente transformación en el editor de Power Query para convertir los nombres de los productos a las mayúsculas y minúsculas adecuadas, en este caso, a todas las letras iniciales en mayúscula.

Screenshot of the Power Query editor showing the results of converting the Item column entries to initial capitalization.

Para empezar, tiene una tabla similar a la siguiente:

OrderID CustomerID Item Price
1 1 fishing rod 100
2 1 1 lb. worms 5
3 2 fishing net 25

Y, quiere poner en mayúsculas la primera letra de cada palabra en la columna Elemento para producir la siguiente tabla:

OrderID CustomerID Item Price
1 1 Fishing Rod 100
2 1 1 Lb. Gusanos 5
3 2 Fishing Net 25

Los pasos de la fórmula M para proyectar la tabla original en la tabla de resultados se parecen a esto en el editor avanzado de Power Query:

Screenshot of the Power Query advanced editor with all of the M formula steps to produce the table and capitalize initial letters.

Este es el código que puede pegar en el editor avanzado de Power Query:

let Orders = Table.FromRecords({
    [OrderID = 1, CustomerID = 1, Item = "fishing rod", Price = 100.0],
    [OrderID = 2, CustomerID = 1, Item = "1 lb. worms", Price = 5.0],
    [OrderID = 3, CustomerID = 2, Item = "fishing net", Price = 25.0]}),
    #"Capitalized Each Word" = Table.TransformColumns(Orders, {"Item", Text.Proper})
in
    #"Capitalized Each Word"

Vamos a revisar cada paso de la fórmula.

  1. Pedidos: cree una tabla con los datos de Pedidos.

  2. #"Poner en mayúsculas cada palabra": para poner en mayúsculas cada palabra, use Table.TransformColumns.

  3. en #"Poner en mayúsculas cada palabra": se genera la tabla con la primera letra de cada palabra en mayúscula.