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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Nueva columna calculada que depende de la fecha

En mi panel de PowerBI, tengo una tabla de modelo de datos, 'Informe 9', con muchas columnas.
En mi objeto visual de tabla, utilizo 4 columnas de esta tabla del modelo de datos, [HUB], [REU], [9. WBS] y [PROJ_CODE].
En la columna [9. WBS] Puedo tener valores en blanco o valores de texto. Cada [PROJ_CODE] puede tener 1 o más [9. WBS].

Como es habitual en powerbi, el objeto visual de mi tabla muestra, por ejemplo, 2 o filas diferentes para el mismo [PROJ_CODE] porque una línea en el [9. WBS] tiene un valor de texto y la otra tiene un valor en blanco. Pero este es el problema con el que estoy tratando de lidiar.
Cuando, en mi objeto visual de tabla, hay 2 o más líneas diferentes para el mismo [PROJ_CODE] y una de ellas tiene [9. WBS] = en blanco, no quiero que se muestre esa línea. Sin embargo, cuando solo tengo 1 línea para el [PROJ_CODE] asociado, quiero conservarlo, aunque el [9. WBS] es texto o está en blanco.

Otra condición que debemos tener en cuenta es que tengo una segmentación de datos que influye en los valores que se muestran en el objeto visual de la tabla, y esta segmentación de datos puede tener una o varias selecciones (normalmente tiene más de 1 selección).
Así, por ejemplo, si selecciono 2 meses puedo tener 3 valores de [9. WBS] para el mismo [PROJ_CODE], y si selecciono solo 1 mes, es posible que tenga solo 1 valor de [9. WBS] para esto [PROJ_CODE], y eso influirá en lo que quiero que se muestre en mi tabla o no.

Voy a poner un ejemplo más concreto:


En mi visual tengo estas columnas, [HUB], [REU], [9. WBS], [PROJ_CODE]. Imaginemos que tengo las siguientes 5 líneas en mi objeto visual de tabla, con los valores respectivos en el orden de las columnas mencionado ahora, para cuando mi selección de segmentación de datos sea [FECHA] = 2023-08 y [FECHA] = 2023-09:
línea 1: "HUB GER", "GER 12", "ABC", "123"
línea 2: "HUB GER", "GER 12", "DEF", "123"
línea 3: "HUB GER", "GER 12", blank(), "123"
línea 4: "HUB GER", "GER 13", "ZXY", "456"
línea 5: "HUB GER", "GER 15", blank(), "980"
Tenga en cuenta que no hay más líneas para los valores [PROJ_CODE] mencionados para [FECHA] = 2023-08 y [FECHA] = 2023-09 y siguiendo la lógica que acabo de explicar, me gustaría que mi visual de tabla solo mostrara las siguientes líneas:
línea 1: "HUB GER", "GER 12", "ABC", "123"
línea 2: "HUB GER", "GER 12", "DEF", "123"
línea 4: "HUB GER", "GER 13", "ZXY", "456"
línea 5: "HUB GER", "GER 15", blank(), "980"
Entonces, debido a que la línea 3 tiene el [9. WBS] = blank() y [PROJ_CODE] = "123" tienen otros valores de [9. WBS] diferente a en blanco, no quiero que se muestre esta línea.


Siguiendo con el ejemplo anterior, imaginemos que solo tenía una fecha seleccionada en mi segmentación de fechas, [DATE] = 2023-07, y tenía las siguientes líneas para el mismo [PROJ_CODE] presentado antes:
línea 1: "HUB GER", "GER 12", blank(), "123"
línea 2: "HUB GER", "GER 13", "ZXY", "456"
línea 3: "HUB GER", "GER 13", blank(), "456"
Tenga en cuenta que no hay más líneas para los valores [PROJ_CODE] mencionados para [DATE] = 2023-07 y, siguiendo la misma lógica, me gustaría que mi visual de tabla solo mostrara las siguientes líneas:
línea 1: "HUB GER", "GER 12", blank(), "123"
línea 2: "HUB GER", "GER 13", "ZXY", "456"
Entonces, debido a que la línea 3 tiene el [9. WBS] = blank() y [PROJ_CODE] = "456" tienen otro valor de [9. WBS] diferente a en blanco, no quiero que se muestre esta línea.

Quiero crear una columna calculada que me ayude a lograr esto, porque necesito que también influya en otros elementos visuales de mi tablero. ¿Puedes ayudarme?

1 REPLY 1
Syndicate_Admin
Administrator
Administrator

@inesgdpinto ,

De acuerdo con su descripción, aquí están mis pasos que puede seguir como solución.

(1) Estos son mis datos de prueba.

vtangjiemsft_0-1699411474450.png

(2) Desafortunadamente, las columnas calculadas no cambian dinámicamente, así que cree medidas.

Measure = 
IF(MAX('Table'[9. WBS]) = BLANK(),"blank",MAX('Table'[9. WBS]))
Flag = 
var _a = CONCATENATEX(FILTER(ALLSELECTED('Table'),'Table'[PROJ_CODE]=MAX('Table'[PROJ_CODE])),[Measure])
var _b=IF(CONTAINSSTRING(_a,"blank"),1,0)
var _c= COUNTROWS(FILTER(ALLSELECTED('Table'),'Table'[PROJ_CODE]=MAX('Table'[PROJ_CODE]) && _b=1))
return IF(ISFILTERED('Table'[Date])=TRUE() && _c>1 && [Measure]="blank",0,1)

(3) Utilice [Flag=1] como filtro para objetos visuales y el resultado será el siguiente.

vtangjiemsft_1-1699411781488.png

vtangjiemsft_2-1699411802366.png

Saludos

Neeko Tang

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

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel

Fabric Monthly Update - May 2024

Check out the May 2024 Fabric update to learn about new features.

LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.

Top Solution Authors