cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Highlighted
Frequent Visitor

¿Función SWITCH o VAR para tipos de varios datos en una sola tabla para filas y columnas?

Hey there - Tengo una tabla de datos donde necesito consolidar varios tipos de datos, tanto números enteros en grandes cantidades en dólares y también porcentajes todos en la misma fila y / o columna. El tipo de datos se establece en decimal y estoy usando alguna lógica de modificador para cambiar el tipo de datos en función de la categoría de medida que creé. Por ejemplo, Ingresos , $, Margen , %, pero también necesito la medida Ingresos para cambiar al porcentaje si está asociado a una categoría específica... como se puede ver a continuación las dos categorías son 20205+7 frente a 20203+9 y 20205+7 frente a 2019A.

Por ejemplo, las categorías R, E y M son medidas en una función switch basadas en una tabla de datos que tiene encabezados de campo que se ven así:

región, subregión, categoría financiera, tipo financiero, escenario, importe

Por lo tanto, repartí los tipos financieros como columnas y luego creé una medida de conmutación basada en otras medidas creadas para los ingresos, ebitda y el margen, que casi funciona, excepto que todavía necesito lógica adicional en mi medida de ingresos para que sepa cambiar al porcentaje si un importe de ingresos está asociado con un tipo específico de categoría financiera por lo que se muestra como un porcentaje y no como un dólar en total como en la tabla siguiente.

williamadams12_0-1597177475295.png

Cualquier idea o orientación útil sería apreciado!

1 ACCEPTED SOLUTION

Accepted Solutions
Highlighted
Frequent Visitor

Re: SWITCH o FUNción VAR para tipos de varios datos en una sola tabla para filas y columnas?

Hey gracias, en realidad lo descubrí por mi cuenta después de un poco de prueba y error.... Te explicaré @Icey . Su solución propuesta estaba cerca, pero esencialmente ya había hecho exactamente lo mismo antes de publicar, pero no tiene en cuenta diferentes formatos de datos para Ingresos o EBITDA por tipo financiero, es decir, $ y % en la misma fila, así como la misma columna.

Pero aquí está la solución:

Inicialmente, había creado medidas simples y calculadas para Ingresos, EBITDA y % Margen. Luego creé alias o medidas con formato de datos usando cada una de esas tres medidas originales para cada ID de orden de ordenación de tipo financiero que representaba todos los tipos financieros (15 en total): con formato de ingresos, formato EBITDA y formato de margen. Por lo tanto, básicamente, el alias cambiaría el formato de datos a % o $ de la medida original en función del IDENTIFICADOR de orden de clasificación del tipo financiero, es decir, 1 , $, 2 , %, 3 , $, etc..

E.g.

Ingresos con formato ?
SWITCH(VALUES('Financial Types'[Financial Types Sort Order])
,1, FORMAT([Revenue], "0.00%") -- el primer encabezado de columna es un porcentaje de ingresos, por lo que esto cambia el tipo de datos decimales a texto con %
,2, FORMAT([Ingresos], "0.00%")
,3, FORMAT([Revenue], "$0,0") -- el encabezado de la tercera columna es una cantidad de dolalr total, por lo que esto cambia el tipo de datos decimales a texto con $
,4, FORMAT([Ingresos], "$0,0")
,5, FORMAT([Ingresos], "$0,0")
,6, FORMAT([Ingresos], "0.00%")
,7, FORMAT([Ingresos], "0.00%")
,8, FORMAT([Ingresos], "$0,0")
,9, FORMAT([Ingresos], "$0,0")
,10, FORMAT([Ingresos], "0.00%")
,11, FORMAT([Ingresos], "0.00%")
,12, FORMAT([Ingresos], "$0,0")
,13, FORMAT([Ingresos], "0.00%")
,14, FORMAT([Ingresos], "$0,0")
,15, FORMAT([Ingresos], "$0,0")
)

Luego, utilicé otra función SWITCH(VALUES)/FORMAT para combinar/consolidar las tres Medidas Formateadas en una sola Medida que usé como el "Valor" en mi matriz de tabla, y funcionó perfectamente, pero estoy seguro de que hay una manera más limpia de lograr todo esto.

Hice lo siguiente:

Medida seleccionada: MAX('Categorías financieras'[Ordenar ID de pedido])

Medición del interruptor (Switch Measure)
SWITCH([Medida seleccionada],
1,FORMAT([Ingresos con formato], [Con formato de ingreso]),
2,FORMAT([EBITDA Formatted], [EBITDA Formatted]),
3,FORMAT([Margen con formato], [Margen con formato]) )

Dejé caer la 'Medida de cambio' en la tabla Valores de la tabla Matrix y el boom, funcionó perfectamente... aquí hay una captura de pantalla de lo que parece ahora:

multi-data table v2.PNG

Una vez más, para un panel de control estático y mensual con segmentaciones de datos aplicadas mínimas y sencillas, esto funciona, simplemente no sé qué tan sostenible es para un trabajo de desarrollo de BI más complejo o ambicioso.

Cualquier consejo o crítica sería apreciado!

View solution in original post

4 REPLIES 4
Highlighted
Super User V
Super User V

Re: SWITCH o FUNción VAR para tipos de varios datos en una sola tabla para filas y columnas?

en el objeto visual de la matriz, coloque todas las medidas individuales en el receptor Valores y, a continuación, en la configuración visual, elija "Mostrar en filas".

Highlighted
Super User IX
Super User IX

Re: SWITCH o FUNción VAR para tipos de varios datos en una sola tabla para filas y columnas?

@williamadams12, no muy claro para mí.

Uno es:- mostrar en la fila en Matriz -

https://www.burningsuit.co.uk/blog/2019/04/7-secrets-of-the-matrix-visual/

la segunda misma medida tiene un formato diferente

Este es para un propósito diferente, pero puede ayudar a

https://www.youtube.com/watch?v=vlnx7QUVYME



Did I answer your question? Mark my post as a solution! Appreciate your Kudos!!
Dashboard of My Blogs !! YouTube Channel !! Connect on Linkedin

Proud to be a Super User!

Highlighted
Community Support
Community Support

Re: SWITCH o FUNción VAR para tipos de varios datos en una sola tabla para filas y columnas?

Hola @williamadams12 ,

Entiendo que desea mostrar un tipo de datos diferente en la misma columna. Si mi comprensión es correcta, por favor continúe mirando, si mi comprensión es incorrecta, por favor hágamelo saber y proporcione los datos de muestra relevantes, preferiblemente en forma de una captura de pantalla o gráfico.

1. Mis datos de muestra son los siguientes.

sample data.png

2. Puede escribir su medida así.

Revenue = 
SWITCH (
    MAX ( 'Table'[Financial categories] ),
    "Revenue", FORMAT ( MAX ( 'Table'[Values] ), "$00" ),
    "EBITDA", FORMAT ( MAX ( 'Table'[Values] ), "$00" ),
    "Margin", FORMAT ( MAX ( 'Table'[Values] ), "0.00%" )
)

3. Ponga la medida en matriz.

matrix visual.png

Puede consultar más detalles desde aquí.

Saludos

Icey

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Highlighted
Frequent Visitor

Re: SWITCH o FUNción VAR para tipos de varios datos en una sola tabla para filas y columnas?

Hey gracias, en realidad lo descubrí por mi cuenta después de un poco de prueba y error.... Te explicaré @Icey . Su solución propuesta estaba cerca, pero esencialmente ya había hecho exactamente lo mismo antes de publicar, pero no tiene en cuenta diferentes formatos de datos para Ingresos o EBITDA por tipo financiero, es decir, $ y % en la misma fila, así como la misma columna.

Pero aquí está la solución:

Inicialmente, había creado medidas simples y calculadas para Ingresos, EBITDA y % Margen. Luego creé alias o medidas con formato de datos usando cada una de esas tres medidas originales para cada ID de orden de ordenación de tipo financiero que representaba todos los tipos financieros (15 en total): con formato de ingresos, formato EBITDA y formato de margen. Por lo tanto, básicamente, el alias cambiaría el formato de datos a % o $ de la medida original en función del IDENTIFICADOR de orden de clasificación del tipo financiero, es decir, 1 , $, 2 , %, 3 , $, etc..

E.g.

Ingresos con formato ?
SWITCH(VALUES('Financial Types'[Financial Types Sort Order])
,1, FORMAT([Revenue], "0.00%") -- el primer encabezado de columna es un porcentaje de ingresos, por lo que esto cambia el tipo de datos decimales a texto con %
,2, FORMAT([Ingresos], "0.00%")
,3, FORMAT([Revenue], "$0,0") -- el encabezado de la tercera columna es una cantidad de dolalr total, por lo que esto cambia el tipo de datos decimales a texto con $
,4, FORMAT([Ingresos], "$0,0")
,5, FORMAT([Ingresos], "$0,0")
,6, FORMAT([Ingresos], "0.00%")
,7, FORMAT([Ingresos], "0.00%")
,8, FORMAT([Ingresos], "$0,0")
,9, FORMAT([Ingresos], "$0,0")
,10, FORMAT([Ingresos], "0.00%")
,11, FORMAT([Ingresos], "0.00%")
,12, FORMAT([Ingresos], "$0,0")
,13, FORMAT([Ingresos], "0.00%")
,14, FORMAT([Ingresos], "$0,0")
,15, FORMAT([Ingresos], "$0,0")
)

Luego, utilicé otra función SWITCH(VALUES)/FORMAT para combinar/consolidar las tres Medidas Formateadas en una sola Medida que usé como el "Valor" en mi matriz de tabla, y funcionó perfectamente, pero estoy seguro de que hay una manera más limpia de lograr todo esto.

Hice lo siguiente:

Medida seleccionada: MAX('Categorías financieras'[Ordenar ID de pedido])

Medición del interruptor (Switch Measure)
SWITCH([Medida seleccionada],
1,FORMAT([Ingresos con formato], [Con formato de ingreso]),
2,FORMAT([EBITDA Formatted], [EBITDA Formatted]),
3,FORMAT([Margen con formato], [Margen con formato]) )

Dejé caer la 'Medida de cambio' en la tabla Valores de la tabla Matrix y el boom, funcionó perfectamente... aquí hay una captura de pantalla de lo que parece ahora:

multi-data table v2.PNG

Una vez más, para un panel de control estático y mensual con segmentaciones de datos aplicadas mínimas y sencillas, esto funciona, simplemente no sé qué tan sostenible es para un trabajo de desarrollo de BI más complejo o ambicioso.

Cualquier consejo o crítica sería apreciado!

View solution in original post

Helpful resources

Announcements
Ignite

Microsoft Ignite

This will be a conference that you do not want to miss!

Get Ready for Power BI Dev Camp

Get Ready for Power BI Dev Camp

Don't miss the Power BI Dev Camp this week!

August Community Highlights

Check out a full recap of the month!

August 2020 CYST Challenge

Check out the winners of the recent 'Can You Solve These?' community challenge!

Experience what’s next for Power BI

Join us for an in-depth look at the new Power BI features and capabilities at the free Microsoft Business Applications Launch Event.