Get certified in Microsoft Fabric—for free! For a limited time, the Microsoft Fabric Community team will be offering free DP-600 exam vouchers. Prepare now
Tratando de destilar mi problema tanto como sea posible:
Tengo una serie de registros, a partir de los cuales quiero crear una tabla con varias columnas, cada columna que llama a una función diferente con el registro como argumento.
let
Repos = Table.FromRecords({
[CustomerName = "Bob"],
[CustomerName = "Jim"],
[CustomerName = "Alice"],
[CustomerName = "Paula"]
}),
subItems = Table.ToList(Repos),
objects = List.Transform(subItems, each
Table.FromRecords({[Name = [CustomerName], Key = Text.Combine({"Key for ", [CustomerName]}), Data = Text.Combine({"Data for ",[CustomerName]}), ItemKind = "Table", ItemName = "Table", IsLeaf = true]} ))
in
objects
Esto me da lo que inicialmente parece ser correcto:
Sin embargo, al expansión me
Error de expansión da
Expression.Error: No podemos aplicar acceso de campo al tipo Texto.
Detalles:
Valor-Bob
Clave-Nombre_cliente
¿Algún puntero o idealmente una documentación con más ejemplos?
Gracias de antemano,
Solved! Go to Solution.
Al final era más fácil tomar la tabla inicial y agregar columnas (Table.AddColumn...) usando como columnGenerator un each (algo) que llamaba a las funciones relevantes.
En otras palabras, el siguiente código
let
Repos = Table.FromRecords({
[CustomerName = "Bob"],
[CustomerName = "Jim"],
[CustomerName = "Alice"],
[CustomerName = "Paula"]
}),
ReposWithKey = Table.AddColumn(Repos,"Key", each Text.Combine({"Key for ", [CustomerName]})),
ReposWithData = Table.AddColumn(ReposWithKey, "Data", each Text.Combine({"Data for ",[CustomerName]})),
ReposWithItemKind = Table.AddColumn(ReposWithData, "ItemKind", each "Table"),
ReposWithItemName = Table.AddColumn(ReposWithItemKind, "ItemName", each "Table"),
ReposWithLeaf = Table.AddColumn(ReposWithItemName, "isLeaf", each "true")
in
ReposWithLeaf
hizo el truco
Al final era más fácil tomar la tabla inicial y agregar columnas (Table.AddColumn...) usando como columnGenerator un each (algo) que llamaba a las funciones relevantes.
En otras palabras, el siguiente código
let
Repos = Table.FromRecords({
[CustomerName = "Bob"],
[CustomerName = "Jim"],
[CustomerName = "Alice"],
[CustomerName = "Paula"]
}),
ReposWithKey = Table.AddColumn(Repos,"Key", each Text.Combine({"Key for ", [CustomerName]})),
ReposWithData = Table.AddColumn(ReposWithKey, "Data", each Text.Combine({"Data for ",[CustomerName]})),
ReposWithItemKind = Table.AddColumn(ReposWithData, "ItemKind", each "Table"),
ReposWithItemName = Table.AddColumn(ReposWithItemKind, "ItemName", each "Table"),
ReposWithLeaf = Table.AddColumn(ReposWithItemName, "isLeaf", each "true")
in
ReposWithLeaf
hizo el truco
Hola @whiskas1983 ,
Puede consultar los enlaces:
https://community.powerbi.com/t5/Desktop/We-cannot-apply-field-access-to-the-type-List/td-p/851856
Saludos
Amy
Equipo de apoyo a la comunidad _ Amy
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
¿Cuál es tu razón para no empezar con una lista?
Check out the October 2024 Power BI update to learn about new features.
Learn from experts, get hands-on experience, and win awesome prizes.