Don't miss your chance to take the Fabric Data Engineer (DP-600) exam for FREE! Find out how by attending the DP-600 session on April 23rd (pacific time), live or on-demand.
Learn moreNext up in the FabCon + SQLCon recap series: The roadmap for Microsoft SQL and Maximizing Developer experiences in Fabric. All sessions are available on-demand after the live show. Register now
Tengo un powerQuery que combina 2 tablas. La tabla resultante tiene algunas columnas que son nulas como resultado de la combinación. En un caso, puedo reemplazar el valor nulo con un valor de texto usando la siguiente instrucción:
Ahora, en otro caso, tengo que reemplazar la columna nula con una multiplicación en otras 2 columnas. Estoy tratando de usar la siguiente declaración que da como resultado un error:
= Table.TransformColumns(Source, {"Amount", each if (_ es null y [IndName] = "Costos de respuesta") then ([Horas] * [Tarifa por hora]) else _})
El error es
Expression.Error: No se puede aplicar el acceso de campo al tipo Null.
Detalles:
Valor=
Clave=Nombre de Ind
Hola @sjpaq
¿Puedes intentarlo, por favor?
= Table.TransformColumns(Source, {"Amount", each if [YourColumnName]=null and [IndName] = "Response Costs") then ([Hours] * [Hourly Rate]) else ""})
Or
Add new column
= Table.AddColumn(Source, "Amount", each if [YourColumnName]=null and [IndName] = "Response Costs" then ([Hours]*[Hourly Rate]) else ""}
Hazme saber si eso funciona para ti
Si su requerimiento está resuelto, marque ESTA RESPUESTA como SOLUCIÓN ✔️ y ayude a otros usuarios a encontrar la solución rápidamente. Por favor, pulsa el botón de pulgar hacia arriba 👍 si este comentario te ayuda.
Gracias
Piyush
Linkedin
Hola @sjpaq ,
por lo que entiendo, no es posible hacer referencia a otras columnas en la función Table.TransformColumns :
"Es importante tener en cuenta que una transformación solo puede tener lugar en una columna en sí"
Pero puede agregarlo como una nueva columna y luego eliminar la anterior:
= Table.AddColumn(#"Changed Type", "Custom", each if [Amount] is null and [IndName] = "Response Costs" then [Hours] * [Hourly Rate] else [Amount])
Si necesitas ayuda, por favor házmelo saber.
Si respondiera a tu pregunta, me encantaría que pudieras marcar mi publicación como una solución ✔️ y darle un pulgar hacia arriba 👍
Saludos
Denis
Blog: WhatTheFact.bi
Sígueme: twitter.com/DenSelimovic
Gracias Denis
Estoy muy cerca de tu sugerencia. La columna [Horas] está en la tabla original, la columna [Tarifa por hora] es un valor de búsqueda establecido en un paso anterior (= Table.ExpandTableColumn(#"Consultas combinadas", "RankHourlyRates", {"Tarifa por hora"}, {"Tarifa por hora"})) y no puedo hacer referencia a ella en mi multiplicación. Obtengo el siguiente error.
Expression.Error: No se encontró el campo "Tarifa por hora" del registro.
Detalles:
Breach=BR_Cyber Estrella 2024
Fecha=2/1/2024
Nombre del miembro del equipo=CTI0
Rango=Capt
Grupo o celda = CTI
Actividad=Detectar
Horas=8
¿Alguna idea?
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.
Experience the highlights from FabCon & SQLCon, available live and on-demand starting April 14th.