Forum Discussion
Error nulo de tipo operando
Hola a todos, soy bastante nuevo en PowerBI y SQL, ¡pero aprendí mucho y lo disfruté! Tengo un problema con mi columna calculada a continuación.
Current_Period_Budget =
Periodo VAR = [SelectedMonth]
DEVOLUCIÓN
if(RELACIONADO(GLAMF[ACCTBAL]) = "2", -1,1) *
Interruptor (Punto,
9,GLAFS[NETPERD1],
10,GLAFS[NETPERD2],
11,GLAFS[NETPERD3],
12,GLAFS[NETPERD4],
1,GLAFS[NETPERD5],
2,GLAFS[NETPERD6],
3,GLAFS[NETPERD7],
4,GLAFS[NETPERD8],
5,GLAFS[NETPERD9],
6,GLAFS[NETPERD10],
7,GLAFS[NETPERD11],
8,GLAFS[NETPERD12])
Mi tabla de presupuesto (GLAFS) tiene un campo para cada mes, en otras palabras, cada mes de presupuesto tiene su propia columna. La despivotación no se ha hecho, ya que afectará a otras áreas del modelo.
Tengo una segmentación de datos donde el usuario puede seleccionar una fecha determinada. [Mes seleccionado] es una medida basada en el mes(selectedvalue(datetable[date])). Según el mes de esa fecha, estoy usando una función SWITCH para extraer el presupuesto del mes apropiado a mi columna calculada "presupuesto del período actual". El resultado deseado es que si el usuario selecciona 04/20/2022, que es el 4º mes, entonces la función de conmutación tirará de [NETPERD8]. Si selecciona una fecha en mayo, se extraería de [NETPERD9] y así sucesivamente.
La fórmula funciona sin el VAR y usando el mes(hoy()) donde actualmente uso "Periodo". Sin embargo, eso significa que el resultado no será dinámico en función de la fecha seleccionada por el usuario.
Puedo ver que la medida {selectedmonth] se calcula correctamente y es un entero. La fórmula parece calcular, pero luego recibo el siguiente error.
"El tipo de datos operando NULL no es válido para el operador sum.. La excepción fue planteada por la interfaz IDbCommand"
¿Alguna idea?
5 Replies
- Syndicate_AdminAdministrator
@WSMikey , ¿dónde está la suma aquí?
Pruebe como
Current_Period_Budget =
VAR Período = mes(maxx(allselected('Fecha'), 'Fecha'[fecha])
DEVOLUCIÓN
if(RELACIONADO(GLAMF[ACCTBAL]) = "2", -1,1) *
Interruptor (Punto,
9,GLAFS[NETPERD1],
10,GLAFS[NETPERD2],
11,GLAFS[NETPERD3],
12,GLAFS[NETPERD4],
1,GLAFS[NETPERD5],
2,GLAFS[NETPERD6],
3,GLAFS[NETPERD7],
4,GLAFS[NETPERD8],
5,GLAFS[NETPERD9],
6,GLAFS[NETPERD10],
7,GLAFS[NETPERD11],
8,GLAFS[NETPERD12])- Syndicate_AdminAdministrator
Hola @amitchandak , gracias por la rápida respuesta!
Me preguntaba lo mismo sobre la Suma: no está en la fórmula. Lo único que se me ocurrió es que de alguna manera, ya que estoy usando Direct Query a la base de datos SQL, estaba surgiendo de allí.
Probé la solución anterior, y las variaciones de la misma, sin embargo, MAXX no se entiende en la barra de fórmulas. Nota: estoy creando la columna directamente en la interfaz de PowerBI en lugar del editor de Power Query, si eso importa.
- Syndicate_AdminAdministrator
Otra alternativa es crear una medida que devuelva la columna que quiero sin usar el interruptor anterior. He hecho esto y he modificado la fórmula de la siguiente manera:
Current_Period_Budget =if(RELATED(GLAMF[ACCTBAL]) = "2", -1,1) * [Columna presupuesto][Columna de presupuesto] = GLAFS[NETPERD7] en este caso.La fórmula anterior no funciona. Sin embargo, se escribe en GLAFS[NETPERD7] en lugar de usar la medida [Columna de presupuesto] la fórmula funciona.Entonces, parece estar leyendo el resultado de la medida como si fuera texto vs. una referencia directa de columna.No estoy seguro de si estoy ladrando el árbol equivocado con esta solución alternativa- Syndicate_AdminAdministrator
Utilice una medida en lugar de una columna calculada. A continuación, reemplace estas columnas en la fórmula con el valor agregado de las columnas correspondientes, por ejemplo:
Current_Period_Budget = VAR Period = [SelectedMonth] RETURN SWITCH ( Period, 9, SUM ( GLAFS[NETPERD1] ), 10, SUM ( GLAFS[NETPERD2] ), 11, SUM ( GLAFS[NETPERD3] ), 12, SUM ( GLAFS[NETPERD4] ), 1, SUM ( GLAFS[NETPERD5] ), 2, SUM ( GLAFS[NETPERD6] ), 3, SUM ( GLAFS[NETPERD7] ), 4, SUM ( GLAFS[NETPERD8] ), 5, SUM ( GLAFS[NETPERD9] ), 6, SUM ( GLAFS[NETPERD10] ), 7, SUM ( GLAFS[NETPERD11] ), 8, SUM ( GLAFS[NETPERD12] ) )Si el problema aún no se resuelve, proporcione información detallada sobre el error o el resultado esperado que espera. Hágamelo saber de inmediato, esperando su respuesta.
Saludos
Winniz
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.- Syndicate_AdminAdministrator
Hola @v-kkf-msft , gracias por la respuesta! He probado y sigo recibiendo el mismo error. Como tal, he cambiado mi enfoque. En lugar de vincular la tabla tal cual, utilicé una consulta SQL personalizada para reconfigurar y despivotizar los datos antes de que PowerBI los leyera. Esto simplificó el proyecto y resolvió mi problema.