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.
Hola, espero puedan ayudarme con lo siguiente.
Tengo una tabla de mediciones semanales en componentes de autos clasificados cómo PDD, PDI,PTD,PTI,TT Y TD.
La estructura de la tabla es la siguiente:
No todos los componentes tienen registro de medición en todas las semanas, al intentar gráficar, me queda algo así, para la semana 45 sólo se tiene registro en dos componentes, y los otros no muestra valores. Lo que estoy tratando de realizar es que los componentes que no tienen valores en la semana en que se aplica el filtro, muestren los valores de la semana anterior, pero que si en la semana anterior tampoco tiene valores, entonces busque una antes y así sucesivamente, hasta encontrar una semana en la que si se tenga registro en dicho componente.
Utilizo dos medidas, la primera de ella es para realizar el cálculo de CP, con base a las columna de desviación:
La segunda medida es sólo para filtrar con base en criterios, es en esta médida que se utiliza para el gráfico.
Espero haya podido explicar mi problema de forma correcta. Saludos.
Solved! Go to Solution.
Ok, te sugiero que crees una tabla de fechas (Calendario) y configures el modelo que une el campo Fecha en la tabla de calendario a los campos de fecha en tus tablas tenues de la siguiente manera:
Nueva tabla con:
Calendario =
VAR _Ddate =
CALCULATETABLE (
DISTINCT ( Dim[Fecha] ),
FILTER ( Dim, NOT ISBLANK ( Dim[Fecha] ) )
)
VAR _DPercDate =
CALCULATETABLE (
DISTINCT ( 'Dim Perc'[Date] ),
FILTER ( 'Dim Perc', NOT ISBLANK ( 'Dim Perc'[Date] ) )
)
VAR _List =
DISTINCT ( UNION ( _Ddate, _DPercDate ) )
VAR _MinDate =
MINX ( _List, [Fecha] )
VAR _MaxDate =
MAXX ( _List, [Fecha] )
RETURN
ADDCOLUMNS (
CALENDAR ( _MinDate, _MaxDate ),
"MesNume", MONTH ( [Date] ),
"Mes", FORMAT ( [Date], "MMM", "ES" ),
"Semana", WEEKNUM ( [Date], 2 ),
"YYYYWW",
YEAR ( [Date] ) * 100
+ WEEKNUM ( [Date], 2 ),
"Semana Año",
"W" & WEEKNUM ( [Date], 2 ) & " "
& YEAR ( [Date] ),
"Año", YEAR ( [Date] )
)
Ahora puede usar los campos de la tabla Calendario en imágenes, medidas, filtros y segmentaciones.
Cree una medida para cada CP siguiendo este patrón:
Último CP rojo =
VAR _MXW =
CALCULATE (
MAX ( Calendario[YYYYWW] ),
FILTER (
ALL ( Calendario ),
Calendario[YYYYWW] <= MAX ( Calendario[YYYYWW] )
&& NOT ISBLANK ( [Cp Rojo] )
)
)
RETURN
CALCULATE (
[Cp Rojo],
FILTER ( ALL ( Calendario ), Calendario[YYYYWW] = _MXW )
)
y obtendrás
Archivo PBIX de muestra adjunto
Comparta datos de muestra o un enlace a un archivo PBIX de muestra
Hola, he subido el Proyecto a Drive.
El ejecutable se encuentra en la carpeta denominada "Proyecto".
Espero pueya ayudarme, saludos.
https://drive.google.com/drive/folders/1_a5QaIQIS-IC1Vb_NhqrPAGd6BHE0TZP?usp=share_link
¿Puede publicar el enlace al archivo, por favor?
Este es el enlace al archivo, que está dentro de la carpeta del proyecto:
https://drive.google.com/file/d/1-fFzjuizbDl4pHqIaTvATW142y0AvgNu/view?usp=share_link
¿La semana comienza el lunes o el domingo?
La semana empieza el lunes y termina el día viernes.
Ok, te sugiero que crees una tabla de fechas (Calendario) y configures el modelo que une el campo Fecha en la tabla de calendario a los campos de fecha en tus tablas tenues de la siguiente manera:
Nueva tabla con:
Calendario =
VAR _Ddate =
CALCULATETABLE (
DISTINCT ( Dim[Fecha] ),
FILTER ( Dim, NOT ISBLANK ( Dim[Fecha] ) )
)
VAR _DPercDate =
CALCULATETABLE (
DISTINCT ( 'Dim Perc'[Date] ),
FILTER ( 'Dim Perc', NOT ISBLANK ( 'Dim Perc'[Date] ) )
)
VAR _List =
DISTINCT ( UNION ( _Ddate, _DPercDate ) )
VAR _MinDate =
MINX ( _List, [Fecha] )
VAR _MaxDate =
MAXX ( _List, [Fecha] )
RETURN
ADDCOLUMNS (
CALENDAR ( _MinDate, _MaxDate ),
"MesNume", MONTH ( [Date] ),
"Mes", FORMAT ( [Date], "MMM", "ES" ),
"Semana", WEEKNUM ( [Date], 2 ),
"YYYYWW",
YEAR ( [Date] ) * 100
+ WEEKNUM ( [Date], 2 ),
"Semana Año",
"W" & WEEKNUM ( [Date], 2 ) & " "
& YEAR ( [Date] ),
"Año", YEAR ( [Date] )
)
Ahora puede usar los campos de la tabla Calendario en imágenes, medidas, filtros y segmentaciones.
Cree una medida para cada CP siguiendo este patrón:
Último CP rojo =
VAR _MXW =
CALCULATE (
MAX ( Calendario[YYYYWW] ),
FILTER (
ALL ( Calendario ),
Calendario[YYYYWW] <= MAX ( Calendario[YYYYWW] )
&& NOT ISBLANK ( [Cp Rojo] )
)
)
RETURN
CALCULATE (
[Cp Rojo],
FILTER ( ALL ( Calendario ), Calendario[YYYYWW] = _MXW )
)
y obtendrás
Archivo PBIX de muestra adjunto
Ha sido de mucha ayuda, muchas gracias!
¡Feliz de haber ayudado! Si la sugerencia ha resuelto su solicitud, marque la publicación relevante como la solución para cerrar el hilo y ayudar a otros que buscan soluciones similares
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |