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!
Estoy trabajando con grandes conjuntos de datos del sistema ERP de nuestras empresas, así que estoy simplificando un poco el problema, pero básicamente tenemos una lista de trabajos y esos trabajos tienen una fecha de inicio y una fecha de finalización. Necesito filtrar los trabajos que se muestran en el panel eligiendo una fecha y solo mostrando los trabajos que aún están "abiertos", lo que significa que la fecha elegida está en o entre sus fechas de inicio y finalización. Trabajos sin fecha de finalización que estarán en blanco. Vinculados a esos empleos hay registros que deben crearse diariamente. Esos registros tienen un registro de encabezado con una fecha y registros de detalle. También me gustaría poder mostrar los trabajos que tienen un registro para esa fecha, incluso si el trabajo aún no ha comenzado o si ya ha terminado.
Lo que me gustaría poder hacer es para una sola fecha dada del registro de encabezado (o tabla de fechas relacionada), extraer los registros diarios para esos trabajos (que podría haber múltiples) y mostrar qué trabajos tenían un registro, luego mostrar todos los trabajos que no tienen registro pero deberían haber dado sus fechas de inicio y finalización.
El resultado esperado basado en los datos sería un panel que se encuentra predeterminado a la fecha de ayer utilizando un filtro marcado y que filtrará el número de trabajos para mostrar el número total de trabajos abiertos en esa fecha, el número total con un registro, el número total sin un registro, y luego agregará los datos de los registros de varias maneras, como el número total de trabajadores, total de trabajadores internos, total de trabajadores externos, número de registros cerrados y número de registros pendientes. También hay otras mesas como el personal de trabajo clave que también se atraería. Luego, otro botón borrará ese filtro y el usuario puede seleccionar cualquier fecha en el pasado. Básicamente, la fecha seleccionada debe filtrar la tabla de trabajos y luego la tabla de trabajos debe filtrar todo lo demás.
Tengo esto funcionando basado en estados de trabajo estáticos, pero tenemos que ser dinámicos para que si miro la fecha de ayer muestre los trabajos que estaban activos a partir de ayer y si miro hace 2 semanas o hace 2 meses mostrará diferentes trabajos porque algunos habrán terminado y otros habrán comenzado.
Los dos elementos con los que estoy luchando son cómo filtrar dinámicamente los trabajos que se muestran solo a los que se abren en función de la fecha seleccionada y sus fechas de inicio y finalización, al tiempo que muestran todos los trabajos que tienen un registro y todos los trabajos que deberían tener un registro pero no lo tienen. E idealmente mostrándolos todos en una tabla con información resumida en tarjetas a lo largo de la parte superior.
Los usuarios de esto luego filtrarán esa tabla (o será prefiltrada por RLS para ellos) para hacer un seguimiento de los registros de trabajos faltantes o con registros pendientes en una fecha determinada o ver datos agregados para una fecha específica para la fuerza laboral.
¡Cualquier idea sobre cómo hacer que esto se filtre así sería muy apreciada!
Usando los datos a continuación, si establecí una segmentación de datos para el 6/4/2021, debería ver una tabla como esta.
TABLA DE DETALLES
Trabajo | Número de registros | Número de registros cerrados | Número de registros pendientes | Número de trabajadores internos | Número de trabajadores externos | Gerente de Trabajo |
100 | Peter Cola de algodón | |||||
200 | 2 | 1 | 1 | 5 | Juan Smith | |
300 | Jane Ée |
Si lo configguro para el 6/9/2021:
TABLA DE DETALLES
Trabajo | Número de registros | Número de registros cerrados | Número de registros pendientes | Número de trabajadores internos | Número de trabajadores externos | Gerente de Trabajo |
100 | 1 | 1 | 5 | Peter Cola de algodón | ||
200 | Juan Smith | |||||
300 | 1 | 1 | 2 | 5 | Jane Ée | |
400 | 1 | 1 | 7 | 5 | Mike Jones |
DATOS DE MUESTRA
Tabla de trabajos
Código de trabajo | Nombre del puesto | Fecha de inicio | Fecha final |
100 | Trabajo 1 | 6/1/2021 | 6/5/2021 |
200 | Empleo 2 | 6/2/2021 | 6/10/2021 |
300 | Puesto 3 | 6/3/2021 | |
400 | Puesto 4 | 6/8/2021 |
Encabezado de registro
Código de trabajo | Código del sistema de encabezado de registro | Fecha de registro | Estado del registro |
100 | 68321 | 6/1/2021 | Cerrado |
100 | 68548 | 6/2/2021 | Cerrado |
100 | 69345 | 6/9/2021 | Pendiente |
200 | 68234 | 6/2/2021 | Cerrado |
200 | 69127 | 6/4/2021 | Cerrado |
200 | 69534 | 6/4/2021 | Pendiente |
200 | 69652 | 6/6/2021 | Cerrado |
200 | 69758 | 6/6/2021 | Pendiente |
200 | 69843 | 6/7/2021 | Cerrado |
200 | 69984 | 6/7/2021 | Pendiente |
300 | 69712 | 6/6/2021 | Cerrado |
300 | 69995 | 6/9/2021 | Pendiente |
400 | 72568 | 6/9/2021 | Cerrado |
400 | 73568 | 6/15/2021 | Pendiente |
Detalle del registro
Código de trabajo | Código del sistema de encabezado de registro | Código del sistema de detalle de registro | Nombre de la empresa | # de trabajadores |
100 | 68321 | 68321.1 | Interno 1 | 7 |
100 | 68321 | 68321.2 | Externo 2 | 8 |
100 | 68321 | 68321.3 | Externo 3 | 2 |
100 | 68321 | 68321.4 | Externo 4 | 5 |
100 | 68548 | 68548.1 | Interno 1 | 4 |
100 | 68548 | 68548.2 | Externo 2 | 6 |
100 | 68548 | 68548.3 | Externo 3 | 5 |
100 | 68548 | 68548.4 | Externo 4 | 8 |
100 | 69345 | 69345.1 | Interno 1 | 5 |
200 | 68234 | 68234.1 | Externo 1 | 2 |
200 | 69127 | 69127.1 | Externo 1 | 3 |
200 | 69534 | 69534.1 | Externo 1 | 2 |
200 | 69652 | 69652.1 | Externo 1 | 3 |
200 | 69758 | 69758.1 | Externo 1 | 5 |
200 | 69843 | 69843.1 | Externo 1 | 2 |
200 | 69984 | 69984.1 | Externo 1 | 1 |
300 | 69712 | 69712.1 | Interno 1 | 2 |
300 | 69712 | 69712.2 | Externo 3 | 5 |
300 | 69995 | 69995.1 | Interno 1 | 2 |
300 | 69995 | 69995.2 | Externo 3 | 5 |
400 | 72568 | 72568.1 | Interno 1 | 7 |
400 | 72568 | 72568.2 | Externo 4 | 5 |
400 | 73568 | 73568.1 | Interno 1 | 8 |
Personal clave
Trabajo | Nombre |
100 | Peter Cola de algodón |
200 | Juan Smith |
300 | Jane Ée |
400 | Mike Jones |
Solved! Go to Solution.
No parece estar funcionando como esperaba. Pude resolver esto por mi cuenta usando una respuesta a una de mis preguntas anteriores en este foro. Utilizando esta medida y tabla de fechas que va desde hace 5 años hasta hoy:
Hola CMDATA
Gracias a sus datos de ejemplo, pero no entiendo muy bien toda su explicación.
Por lo tanto, he construido el PBIX adjunto para que podamos intentar trabajar juntos para resolver su problema.
Nota He creado una tabla de Calandar y desnormalizado sus tablas en una tabla FACT.
Aprecio que es posible que no desee normalizar sus grandes datos de ERP en la solución final,
pero esta tabla denormalizada ayudará en gran medida a simplificar el problema y comprender mejor sus matemáticas.
Entonces podemos usar relaciones en la solución final.
es decir, ¡vamos a caminar antes de que podamos correr!
Por favor, ¿puede explicar con todo detalle sus matemáticas / lógica para el trabajo 400 para una fecha silcer = 6/9/2021?
¿Cómo se obtiene una respuesta de 1 por favor?
¡Muchas gracias por ayudarme con esto!
Esto sale como 1 porque solo hay 1 registro de encabezado para el 6/9/2021 para el trabajo 400. En su mesa plana sería un recuento distinto del registro de encabezado por trabajo.
Hola de nuevo CMDATA
Gracias por la información adicional, creo que ahora lo entiendo.
Haga clic aquí para obtener una solución actualizada
Está casi allí, pero no del todo. La pieza que falta es que la selección de fecha debe ser todos los días y la tabla de informe debe mostrar tanto los trabajos con registros como los trabajos sin registros, siempre que el trabajo sin registros estuviera activo en la fecha seleccionada.
Hola de nuevo CMSDATA
Haga clic aquí para ver la solución de demostración
He añadido una segmentación de datos de calendario con una relación a la tabla de hechos.
Echa un vistazo a las consultas de edición, las relaciones y las medidas dax.
Todavía no me has dado ningún pulgar hacia arriba. Por favor, hágalo.
Si esta solución soluciona su problema, acepte la solución.
Recuerde que no me pagan, somos voluntarios de la comunidad de BI, así que haga clic en el pulgar hacia arriba para que me tome la molestia de ayudarlo y luego acepte la solución si funciona. ¡¡¡Gracias!!!
Hola. Muchas gracias de nuevo por trabajar en esto. Ese enlace no está funcionando para mí. su enlace anterior funcionó bien.
Lo siento por ese CMDATA, por favor pruebe este enlace ...
No parece estar funcionando como esperaba. Pude resolver esto por mi cuenta usando una respuesta a una de mis preguntas anteriores en este foro. Utilizando esta medida y tabla de fechas que va desde hace 5 años hasta hoy:
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 |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
1 | |
1 | |
1 |