Desafío con relaciones de conjuntos de datos y multiplicación de valores de 2 conjuntos de datos

Un usuario Pregunto ✅

haferguson24

Estoy creando un panel de compras que totalizará los ahorros de costos en las piezas recibidas cada mes. Para hacer esto, tengo 2 fuentes:

1. Hoja de cálculo de Excel que es consulta directa (en unidad compartida), que se utiliza para agregar números de pieza con ahorro de costos

2. Conexión de SQL Server a la tabla de recibos de compra de ERP

Tengo el desafío de crear la relación adecuada entre las variables. Estoy tratando de vincular los números de pieza en la hoja de cálculo de ahorro de costos con el número de pieza PURC_ORDER_LINE. La única relación que permitirá en este momento es Many to Many, con la hoja de cálculo de filtrado de costos y ahorros PURC_ORDER_Line.

haferguson24_1-1631811200672.png

Mi primera pregunta es, ¿es esa la relación correcta? Parece que me está dando los datos correctos cuando combino y filtro los datos de las dos tablas.

Pero si es la relación correcta, ¿hay otra razón por la que tengo este problema?

Para los datos que coinciden, quiero multiplicar el valor de la columna «Diferencia» en la hoja de cálculo de ahorro de costos por la «Cantidad» de PURC_ORDER_LINE para calcular el ahorro de costos en cada recibo.

Esta es la fórmula que estoy ingresando:

Medida 2 = ‘HOJA DE CALCULO DE AHORRO DE COSTOS'[DIFFERENCE ] * ‘PURC_ORDER_LINE'[ORDER_QTY]
Pero recibo este error:
No se puede determinar un solo valor para la columna ‘DIFERENCIA’ en la tabla ‘HOJA DE CALCULO DE AHORRO DE COSTOS’.
Esto puede suceder cuando una fórmula de medida hace referencia a una columna que contiene muchos valores sin especificar una agregación como mínimo, máximo, recuento o suma para obtener un único resultado.

Entonces, ¿alguien puede ayudarme a evitar este error para crear una columna que dé el producto de los valores en las dos últimas columnas:

haferguson24_5-1631819085290.png

¡Muchas gracias de antemano por su tiempo para ayudar!

Amitchandak

@ haferguson24, debe crear una dimensión de número de pieza común

Parte = filtro (distinto (unión (distinto (‘HOJA DE CALCULO DE AHORRO DE COSTOS'[Part Number]), Distinto (‘PURC_ORDER_LINE'[Part ID]))), no (está en blanco ([Part Number])))

Luego únalas con el número de pieza y si es para ambas tablas.

medida 2 = sumx (valores (Parte[Partnumber]), calcule (Sum (‘HOJA DE CALCULO DE AHORRO DE COSTOS'[DIFFERENCE ]) * Suma (‘PURC_ORDER_LINE'[ORDER_QTY] ))

En lugar de la suma, puede usar max, min avg, etc.

o puede mover la columna a otra tabla y luego intentar

consulte 4 formas de copiar datos de una tabla a otra
https://www.youtube.com/watch?v=Wu1mWxR23jU
https://www.youtube.com/watch?v=czNHt7UXIe8

Ashish_Mathur

Hola,

Debe crear una tabla separada (por ejemplo, TableC) de ID de pieza única y luego crear una relación desde la columna ID de pieza de ambas tablas con la columna ID de pieza de TableC. Ahora, en cualquiera de las 2 tablas, escriba una fórmula de columna calculada usando la función LOOKUPVALUE () para traer la columna Diferencia o Order_Qty (según sea el caso). Ahora debería poder utilizar la función SUMX () como medida.

Hola @ haferguson24,

Para la relación de muchos a muchos en Power BI Desktop, no podía permitir valores de producto directamente, lo que recordaría el error al que se ha enfrentado.

Puede intentar crear una tabla puente basada en esta relación de varios a varios para dividir esta relación en dos relaciones de uno a varios basadas en la tabla de dos fuentes y luego crear medidas para calcular valores.

Atentamente,
Equipo de apoyo comunitario _ Yingjie Li
Si esta publicación ayuda, entonces por favor considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Amitchandak

@ haferguson24, debe crear una dimensión de número de pieza común

Parte = filtro (distinto (unión (distinto (‘HOJA DE CALCULO DE AHORRO DE COSTOS'[Part Number]), Distinto (‘PURC_ORDER_LINE'[Part ID]))), no (está en blanco ([Part Number])))

Luego únalas con el número de pieza y si es para ambas tablas.

medida 2 = sumx (valores (Parte[Partnumber]), calcule (Sum (‘HOJA DE CALCULO DE AHORRO DE COSTOS'[DIFFERENCE ]) * Suma (‘PURC_ORDER_LINE'[ORDER_QTY] ))

En lugar de la suma, puede usar max, min avg, etc.

o puede mover la columna a otra tabla y luego intentar

consulte 4 formas de copiar datos de una tabla a otra
https://www.youtube.com/watch?v=Wu1mWxR23jU
https://www.youtube.com/watch?v=czNHt7UXIe8

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *