Microsoft Fabric Community Conference 2025, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount.
Register nowThe Power BI DataViz World Championships are on! With four chances to enter, you could win a spot in the LIVE Grand Finale in Las Vegas. Show off your skills.
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?
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
If you love stickers, then you will definitely want to check out our Community Sticker Challenge!