cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Post Patron
Post Patron

¿Cómo establecer dinámicamente el formato de una medida en un informe de Power BI?

Tengo un informe de Power BI con una medida que devuelve el valor de otras medidas en función del valor seleccionado de una segmentación de datos, según el DAX siguiente:

Slicer Measure = 
    SWITCH(
        LASTNONBLANK('Available Measures'[MeasureName], "")
        , "Sales", [Sales]
        , "Orders", [Orders]
        , "Orders Completed %", [Orders Completed %]
    )

Esto permite a un usuario seleccionar qué medida desea ver en un gráfico de líneas visual.

Sin embargo, cuando el usuario selecciona Pedidos completados %, quiero que el formato [Medida de corte] tenga el formato de porcentaje. Pero no puedo encontrar una manera de especificar el formato de medida dinámicamente.

He intentado formatear la expresión Orders Completed % a un texto porcentual como este

Slicer Measure = 
    SWITCH(
        LASTNONBLANK('Available Measures'[MeasureName], "")
        , "Sales", [Sales]
        , "Orders", [Orders]
        , "Orders Completed %", FORMAT([Orders Completed %], "Percent")
    )

pero cuando se selecciona el % pedidos completados no muestra nada en absoluto.

¿Alguna sugerencia sobre cómo hacer esto?

1 ACCEPTED SOLUTION

Hola @EylesIT ,

Incluso en conexión en vivo puede utilizar grupos de cálculo y crear estos cambios, siga el paso siguiente:

  • Suponiendo que ya tiene Medida de Ventas
  • En herramientas externas, ejecute el editor tabular

MFelix_0-1602169947918.png

  • Rigth Click en tablas
  • Nuevo Grupo de Cálculo

MFelix_1-1602170020388.png

  • Cambie el nombre que necesite
  • Clic de Rigth
  • Nuevo elemento de cálculo

MFelix_2-1602170081096.png

  • Cámbiele el nombre a las ventas y escriba el código de folllowing:
SELECTEDMEASURE()
  • Agregue dos nuevos elementos de cálculo con las fórmulas que tiene en Power BI para las otras dos medidas, si la medida en Power BI es, por ejemplo: DIVIDE(SUM(Table[Column]), SUM(Table[Column2]) esta es la fórmula que debe colocar en el elemento de cálculo.
  • En la fórmula Porcentaje, haga que el formato sea %

MFelix_3-1602170461284.png

  • Guardar el modelo

MFelix_4-1602170491710.png

  • Vuelva a Power BI y actualice el modelo en el que debería ver la nueva tabla en el modelo
  • Ahora cree su gráfico de líneas con la siguiente configuración:.
    • Eje: Columna que necesita
    • Valores: Medir ventas
    • Leyenda: Columna de la tabla de grupo calculada
  • Slicer: columna de la tabla de grupo calculada

Compruebe el resultado a continuación:

Calculation_groups.gif

No puedo enviarle una copia de mi archivo ya que está en consulta directa. Pero cree que esto puede ayudarle a lograr los pasos necesarios.


Regards

Miguel Félix


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Check out my blog:

Power BI em Português





View solution in original post

13 REPLIES 13
Community Support
Community Support

Hola @EylesIT ,

¿Tienen sentido las sugerencias de los ingenieros? Si es así, marque amablemente la respuesta adecuada como una solución para ayudar a otros que tienen el problema similar y cerrar el caso. Si no, avísame y trataré de ayudarte más.

Saludos

Amy

Super User III
Super User III

Hola @EylesIT ,

Cuando se utiliza la opción de formato en una medida o columna calculada, el valor que se aplica al formato se convierte en un valor de texto, por lo que esto es lo que está sucediendo en el gráfico, es por eso que no se muestra en el gráfico de líneas ya que cuando lee los valores es un texto y no se puede representar en la visualización.

En este caso y puesto que no puede mostrar valores en porcentaje y valores utilizando la medida switch creo que tiene una de las dos opciones:

  • Haga su valor final multiplicado por 100 y luego coloque una tarjeta con los valores de texto en % o Moneda
  • Otra opción es crear marcadores y 3 gráficos diferentes

Registre ambos en el archivo PBIX adjunto.


Regards

Miguel Félix


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Check out my blog:

Power BI em Português





Para poder hacer esto LA MANERA DERECHO tienes que utilizar grupos de cálculo que se pueden crear sólo a través del Editor Tabular. No se puede hacer fácilmente a través de la interfaz PBI. Lo siento 😞

Todavía estamos en la versión SQL 2016 que no admite grupos de cálculo. ¿Hay alguna manera de lograr la misma funcionalidad en SSAS 2016?

Hola @EylesIT ,

¿Está utilizando el modo de consulta directa?


Regards

Miguel Félix


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Check out my blog:

Power BI em Português





El informe de Power BI se conecta a la base de datos SSAS en modo "Conectar en vivo".

Hola @EylesIT ,

Después de @daxer respuesta, compruebe el siguiente vídeo que se publicó hoy con esta situación exacta.


Regards

Miguel Félix


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Check out my blog:

Power BI em Português





Este video no logra lo que he pedido. El vídeo muestra las medidas que se muestran como valores de texto convirtiendo el número en una cadena de texto y agregando un poco más después del número.

Lo que quiero lograr es cambiar dinámicamente la forma en que Power BI da formato a una medida numérica en función de un valor de segmentación de datos.

@EylesIT

No entiendes de qué se trata realmente el video. Alberto muestra cómo formatear dinámicamente una medida y el hecho de que utilice cadenas para agregar la unidad al número no tiene nada que ver con esto. Los grupos de cálculo le permiten dar formato al valor de una medida DYNAMICALLY mediante la función SELECTEDMEASUREFORMATSTRING(). Trate de ver este video una vez más y piense en lo que hace Alberto y cómo se puede utilizar para formatear un número dinámicamente. Los elementos de cálculo tienen propiedades y estas propiedades se pueden establecer en tiempo de ejecución. Una de las propiedades es la cadena de formato.

https://docs.microsoft.com/en-us/dax/selectedmeasureformatstring-function-dax

Tal vez sí, pero la versión de SSAS que estoy utilizando es 2016, por lo que este método no está disponible para mí, por desgracia.

Hola @EylesIT ,

Incluso en conexión en vivo puede utilizar grupos de cálculo y crear estos cambios, siga el paso siguiente:

  • Suponiendo que ya tiene Medida de Ventas
  • En herramientas externas, ejecute el editor tabular

MFelix_0-1602169947918.png

  • Rigth Click en tablas
  • Nuevo Grupo de Cálculo

MFelix_1-1602170020388.png

  • Cambie el nombre que necesite
  • Clic de Rigth
  • Nuevo elemento de cálculo

MFelix_2-1602170081096.png

  • Cámbiele el nombre a las ventas y escriba el código de folllowing:
SELECTEDMEASURE()
  • Agregue dos nuevos elementos de cálculo con las fórmulas que tiene en Power BI para las otras dos medidas, si la medida en Power BI es, por ejemplo: DIVIDE(SUM(Table[Column]), SUM(Table[Column2]) esta es la fórmula que debe colocar en el elemento de cálculo.
  • En la fórmula Porcentaje, haga que el formato sea %

MFelix_3-1602170461284.png

  • Guardar el modelo

MFelix_4-1602170491710.png

  • Vuelva a Power BI y actualice el modelo en el que debería ver la nueva tabla en el modelo
  • Ahora cree su gráfico de líneas con la siguiente configuración:.
    • Eje: Columna que necesita
    • Valores: Medir ventas
    • Leyenda: Columna de la tabla de grupo calculada
  • Slicer: columna de la tabla de grupo calculada

Compruebe el resultado a continuación:

Calculation_groups.gif

No puedo enviarle una copia de mi archivo ya que está en consulta directa. Pero cree que esto puede ayudarle a lograr los pasos necesarios.


Regards

Miguel Félix


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Check out my blog:

Power BI em Português





View solution in original post

¿Es posible esta solución si los datos están en modo de importación?

Además, no veo la pestaña de herramientas externas en mi cinta de opciones. ¿Sabes cuál podría ser la razón de eso?

Hola @Quiny_Harl ,

Sí esta opción es posible también en el modo de importación, para que las herramientas externas funcionen es necesario instalarlas es

Kit de herramientas de ALM

DAX Studio

Tabular Editor


Regards

Miguel Félix


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Check out my blog:

Power BI em Português





Helpful resources

Announcements
secondImage

Congratulations!

We are excited to announce the Power BI Super Users!

Microsoft Ignite

Microsoft Ignite

Join digitally, March 2–4, 2021 to explore new tech that's ready to implement. Experience the keynote in mixed reality through AltspaceVR!

secondImage

The largest Power BI virtual conference

100+ sessions, 100+ speakers, Product managers, MVPs, and experts. All about Power BI. Attend online or watch the recordings.