Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Syndicate_Admin
Administrator
Administrator

Agregar una columna condicional: ¿agregar Y restar un valor a otros en función de los criterios?

Muy nuevo en Power BI y han buscado en los foros sobre este tema, pero no pudieron encontrar una solución, así que gracias por su paciencia.

Tengo una fuente de datos simple que proporciona los siguientes tres elementos y sus valores (consulte la sección 'Antes'). Esencialmente quiero crear una tabla en PBI usando estos datos, pero agrega los tres elementos a dos elementos (consulte la sección 'Después'). . . . donde el tercer elemento o el elemento restante se agrega o se resta de los otros elementos, dependiendo de su elemento "nombre".

Power BI - Element.png

En el ejemplo anterior hay una columna denominada Element que tiene tres elementos de línea. Básicamente, quiero agregar estos tres valores de columna de elemento en dos elementos de línea donde . . .

ÉL = (07. ÉL) + (02. Indirecto - Torre) = ($300) + ($100) = $400

Adquisiciones = (03. Contratación (tarifa)) - (02. Indirecto - Torre) = ($150) - ($100) = $50

Nota: 02. Indirecto - La torre consigue agregada a 07. IT, pero restado de 03. Adquisición (tasa) al crear las nuevas columnas condicionales. ¿Es esto posible?

Usé el Editor de Power Query, la opción Agregar columna condicional para crear un nuevo nombre de columna, en este caso "cust_Element" y establecer la relación de los tres elementos originales (consulte a continuación), pero no estoy seguro de si aquí es donde se indicaría que '02. Indirecto - Torre' necesita restar de '03. Contratación pública (tarifa)»? La tabla resultante no parecía reflejar el '02. Indirecto - Torre' y '03. Adquisición (tasa)' relación y estoy pensando que es porque '02. Indirecto - Torre' ya tiene una relación establecida con '01. IT'?

Power BI - Add Conditional Column.png

Una petición algo sencilla, pero difícil de explicar. Esperemos que tenga sentido? Sólo me pregunto si esto se puede lograr y si es así, ¿cómo? ¡Muchas gracias!

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

@mskow es un buen candidato para una medida DAX en lugar de hacer esto en PQ y preparar los datos por adelantado:

Añádase estas medidas:

Base Sum = SUM ( Table[Value] )

Indirect - Tower = CALCULATE ( [Base Sum], Table[Element] = "02. Indirect - Tower" )

IT = CALCULATE ( [Base Sum], Table[Element] = "01.IT"  ) + [Indirect - Tower]

Procurement = 
CALCULATE ( [Base Sum], Table[Element] = "03. Procurement (Rate)" ) - [Indirect - Tower]

Ahora puede usar las medidas de TI y Procecuement en cualquier objeto visual, también funcionará si corta y corta los datos por cualquier columna de su modelo.

Consulte mi última entrada de blog comparando el cliente seleccionado con otros clientes N principales | PeryTUS Me gustaría ❤ Felicitaciones si mi solución ayudó. 👉 Si puede pasar tiempo publicando la pregunta, también puede hacer esfuerzos para dar Felicitaciones a quien ayudó a resolver su problema. ¡Es una muestra de agradecimiento!

Visítenos en https://perytus.com, su ventanilla única para proyectos, formación y consultoría relacionados con Power BI.

View solution in original post

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

@mskow es un buen candidato para una medida DAX en lugar de hacer esto en PQ y preparar los datos por adelantado:

Añádase estas medidas:

Base Sum = SUM ( Table[Value] )

Indirect - Tower = CALCULATE ( [Base Sum], Table[Element] = "02. Indirect - Tower" )

IT = CALCULATE ( [Base Sum], Table[Element] = "01.IT"  ) + [Indirect - Tower]

Procurement = 
CALCULATE ( [Base Sum], Table[Element] = "03. Procurement (Rate)" ) - [Indirect - Tower]

Ahora puede usar las medidas de TI y Procecuement en cualquier objeto visual, también funcionará si corta y corta los datos por cualquier columna de su modelo.

Consulte mi última entrada de blog comparando el cliente seleccionado con otros clientes N principales | PeryTUS Me gustaría ❤ Felicitaciones si mi solución ayudó. 👉 Si puede pasar tiempo publicando la pregunta, también puede hacer esfuerzos para dar Felicitaciones a quien ayudó a resolver su problema. ¡Es una muestra de agradecimiento!

Visítenos en https://perytus.com, su ventanilla única para proyectos, formación y consultoría relacionados con Power BI.

Syndicate_Admin
Administrator
Administrator

Intentaría crear dos columnas condicionales, TI y Adquisición, y luego deseser la dinamización y agrupar de la siguiente manera:

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSUTI2MFCK1YlWMgKyDaFsYxDbFMiOBQA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Element = _t, Value = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Element", Int64.Type}, {"Value", Int64.Type}}),
    #"Added Custom" = Table.AddColumn(#"Changed Type", "IT", each if [Element] = 1 then [Value] else if [Element] = 2 then [Value] else 0),
    #"Added Custom1" = Table.AddColumn(#"Added Custom", "Procurement", each if [Element] = 3 then [Value] else if [Element] = 2 then -[Value] else 0),
    #"Removed Columns" = Table.RemoveColumns(#"Added Custom1",{"Element", "Value"}),
    #"Unpivoted Columns" = Table.UnpivotOtherColumns(#"Removed Columns", {}, "Cust_Element", "Value"),
    #"Grouped Rows" = Table.Group(#"Unpivoted Columns", {"Cust_Element"}, {{"Value", each List.Sum([Value]), type number}})
in
    #"Grouped Rows"
Syndicate_Admin
Administrator
Administrator

@mskow son estas las únicas condiciones/lógica de negocios o hay elementos y tienen una lógica diferente? Ese tipo de detalle ayudará a determinar la solución.

Hay parry2k,

Gracias por su consulta. Para responder a su pregunta, esas son las únicas condiciones.

  • 02. Indirecto - La torre se agrega a 01. TI para crear un nuevo elemento de columna denominado "IT"
  • 02. Indirecto - Torre se resta de 03. Adquisición (tasa) para crear un nuevo elemento de columna denominado "Adquisición"

Gracias por su ayuda!

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.