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

Next up in the FabCon + SQLCon recap series: The roadmap for Microsoft SQL and Maximizing Developer experiences in Fabric. All sessions are available on-demand after the live show. Register now

Reply
Syndicate_Admin
Administrator
Administrator

Necesita poder vincular dos conjuntos de datos diferentes, pero no está seguro de cómo

Tengo los dos conjuntos de datos adjuntos para el mes de abril. Tienen campos comunes en la tarea de servicio y las órdenes de trabajo, pero estos van a tener duplicados en ambas tablas, y ese es el problema que tengo. En última instancia, quiero poder agregar un segmentador/filtro en mi panel de control para poder mostrar la cantidad de trabajo que realiza la tarea de servicio para el campo "Motivo de la reparación". ¿Alguna idea?

https://drive.google.com/file/d/1yAdyhhglkfUPXtYypQctelhC7xtEfkow/view?usp=drive_link

https://drive.google.com/file/d/1rBjuKsqeHL_eg7uI7mnakEJiqGzEwnqb/view?usp=drive_link

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Hola @ChrisAZ ,

Gracias por la información detallada y la captura de pantalla, realmente ayuda a aclarar el problema. Para abordar completamente las entradas duplicadas en los datos de "Tarea de servicio" y "Órdenes de trabajo" y habilitar una segmentación confiable para "Motivo de reparación", recomiendo crear una tabla de dimensiones en Power Query. Cargue ambas tablas de origen, seleccione los campos relevantes ("Tarea de servicio" y "Motivo de la reparación"), elimine los duplicados, añada los resultados y vuelva a eliminar los duplicados para asegurarse de que tiene una lista única de combinaciones. Asigne a esta tabla el nombre DimServiceTask. En la vista de modelo, cree relaciones unidireccionales desde DimServiceTask[Service Task] hasta el campo "Service Task" correspondiente en cada tabla de hechos (por ejemplo, las tablas de mano de obra del taller). Esto evita problemas de filtrado bidireccional. A continuación, defina una medida DAX como:

Trabajo total por tarea de servicio =
CALCULAR(
SUMX(
VALUES(DimServiceTask[Tarea de servicio]),
CALCULAR(SUMA('Mano de obra de taller - Plásticos' [Costo de mano de obra]) + SUM('Mano de obra - Contabilidad'[Costo de mano de obra]))
),
CROSSFILTER('Mano de obra de taller - Plásticos'[Tarea de servicio], DimServiceTask[Tarea de servicio], AMBOS),
CROSSFILTER('Mano de obra de taller - Contabilidad'[Tarea de servicio], DimServiceTask[Tarea de servicio], AMBOS)
)
Esto garantiza que está agregando el trabajo en todas las tablas sin doble recuento. Use DimServiceTask[Reason for Repair] en la segmentación de datos y coloque DimServiceTask[Service Task] con la nueva medida en el objeto visual. Esto le permitirá filtrar el tablero con precisión por motivo de reparación y mostrar los valores de mano de obra correctos por tarea de servicio. Por último, verifique los resultados con los datos de origen originales mediante un objeto visual de tabla para validar la precisión. Hágame saber cómo va o si desea ayuda para adaptar la solución a su modelo.

Si mi respuesta resuelve su consulta, considere aceptarla como solución.

Saludos
Pallavi.

View solution in original post

7 REPLIES 7
Syndicate_Admin
Administrator
Administrator

Hola @ChrisAZ ,

Gracias por la información detallada y la captura de pantalla, realmente ayuda a aclarar el problema. Para abordar completamente las entradas duplicadas en los datos de "Tarea de servicio" y "Órdenes de trabajo" y habilitar una segmentación confiable para "Motivo de reparación", recomiendo crear una tabla de dimensiones en Power Query. Cargue ambas tablas de origen, seleccione los campos relevantes ("Tarea de servicio" y "Motivo de la reparación"), elimine los duplicados, añada los resultados y vuelva a eliminar los duplicados para asegurarse de que tiene una lista única de combinaciones. Asigne a esta tabla el nombre DimServiceTask. En la vista de modelo, cree relaciones unidireccionales desde DimServiceTask[Service Task] hasta el campo "Service Task" correspondiente en cada tabla de hechos (por ejemplo, las tablas de mano de obra del taller). Esto evita problemas de filtrado bidireccional. A continuación, defina una medida DAX como:

Trabajo total por tarea de servicio =
CALCULAR(
SUMX(
VALUES(DimServiceTask[Tarea de servicio]),
CALCULAR(SUMA('Mano de obra de taller - Plásticos' [Costo de mano de obra]) + SUM('Mano de obra - Contabilidad'[Costo de mano de obra]))
),
CROSSFILTER('Mano de obra de taller - Plásticos'[Tarea de servicio], DimServiceTask[Tarea de servicio], AMBOS),
CROSSFILTER('Mano de obra de taller - Contabilidad'[Tarea de servicio], DimServiceTask[Tarea de servicio], AMBOS)
)
Esto garantiza que está agregando el trabajo en todas las tablas sin doble recuento. Use DimServiceTask[Reason for Repair] en la segmentación de datos y coloque DimServiceTask[Service Task] con la nueva medida en el objeto visual. Esto le permitirá filtrar el tablero con precisión por motivo de reparación y mostrar los valores de mano de obra correctos por tarea de servicio. Por último, verifique los resultados con los datos de origen originales mediante un objeto visual de tabla para validar la precisión. Hágame saber cómo va o si desea ayuda para adaptar la solución a su modelo.

Si mi respuesta resuelve su consulta, considere aceptarla como solución.

Saludos
Pallavi.

Syndicate_Admin
Administrator
Administrator

https://drive.google.com/file/d/1IH5dXc52ndj-7Gs4BH_tkZ4EoOb6Q1AZ/view?usp=drive_link

Así que he añadido esta lógica al modelo, pero los números no cuadran y algo sigue sin estar alineado correctamente. Puedo decir esto cuando miro los totales, así como cuando selecciono una categoría individual y luego la comparo con lo que está en la fuente de datos. Aquí está ese enlace nuevamente como referencia para la comparación.

https://drive.google.com/file/d/1yAdyhhglkfUPXtYypQctelhC7xtEfkow/view?usp=drive_link

Syndicate_Admin
Administrator
Administrator

¿De alguna manera puedas explicarlo?

Así

lbendlin_0-1746483271050.png

adjunto el archivo, pero deberá modificar la ruta del archivo.

He añadido mi PBIX. Creé la tabla WorkOrder y creo que tengo mis relaciones configuradas como usted indicó. Cuando intento usar la segmentación para el motivo de la reparación, todavía no muestra los datos.

https://drive.google.com/file/d/1IH5dXc52ndj-7Gs4BH_tkZ4EoOb6Q1AZ/view?usp=drive_link

ChrisAZ_0-1746545034156.png

ChrisAZ_1-1746545159542.png

Así que veo el modelo, pero ¿cuál sería el proceso para crear la tabla WO separada?

Syndicate_Admin
Administrator
Administrator

Más información sobre la normalización. Busque los atributos de filtro comunes y normalícelos en tablas de dimensiones sin duplicados. A continuación, cree un modelo de datos en el que controle las dos tablas originales de las mismas tablas de dimensiones.

Helpful resources

Announcements
New to Fabric survey Carousel

New to Fabric Survey

If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.

Join our Fabric User Panel

Join our Fabric User Panel

Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.

March Power BI Update Carousel

Power BI Community Update - March 2026

Check out the March 2026 Power BI update to learn about new features.

Top Kudoed Authors