Skip to main content
Announcements
Global Transformation Awards! Applications are now open. Submit Entry
cancel
Showing results for 
Search instead for 
Did you mean: 
jorcan46
Contributor II
Contributor II

Invalid expression

Hola a todos,

Estoy tratando de realizar un resident load de un tabla donde tengo todos los sales.orders . Este modelo incluye tanto presupuestos como pedidos, para lo cual se ha añadido un contador de pedidos (EsPedido) y un contador de presupuestos (EsPresupuesto).

Cada Sale.Order tiene tanto la fecha de presupuesto, como la fecha de confirmacion de pedido. Mi objetivo es sacar la tasa de conversion de presupuesto a pedido (TCL) y para ello trato de crear una tabla de TCL con la siguiente sentencia:

Invalid expression

TCL:

LOAD [%Id Pedido],

If(EsPedido=1, MesNamePedido,MesNombrePresupuesto)  as MesNameTCL,

Sum(EsPresupuesto) + sum(EsPedido)as #Presupuestos,

Sum(EsPedido) as #Pedidos,

ComercialPedido,

Resident Pedidos

El problema es que me dice que es una expresión invalida, pero no tengo más información y he comprobado la sintaxis y yo no detecto el error. ¿Alguna sugerencia para identificar el error? Muchas gracias a todos.

1 Solution

Accepted Solutions
hector_munoz
Specialist
Specialist

Hola Jorge,

Creo que te faltaría el GROUP BY después del Resident. Estás usando una función de agregación (Sum()) y sería necesario. Algo así como:

TCL:

LOAD [%Id Pedido],

If(EsPedido=1, MesNamePedido,MesNombrePresupuesto)  as MesNameTCL,

Sum(EsPresupuesto) + sum(EsPedido)as #Presupuestos,

Sum(EsPedido) as #Pedidos,

ComercialPedido

Resident Pedidos

GROUP BY [%Id Pedido],

                    If(EsPedido=1, MesNamePedido,MesNombrePresupuesto) ,

                    ComercialPedido;

Además creo que tendrías que quitar la coma después de ComercialPedido en el LOAD.

Gracias y un saludo,
Héctor

View solution in original post

7 Replies
jorcan46
Contributor II
Contributor II
Author

El ; al final de la sentencia esta puesto, pero no se copio.

hector_munoz
Specialist
Specialist

Hola Jorge,

Creo que te faltaría el GROUP BY después del Resident. Estás usando una función de agregación (Sum()) y sería necesario. Algo así como:

TCL:

LOAD [%Id Pedido],

If(EsPedido=1, MesNamePedido,MesNombrePresupuesto)  as MesNameTCL,

Sum(EsPresupuesto) + sum(EsPedido)as #Presupuestos,

Sum(EsPedido) as #Pedidos,

ComercialPedido

Resident Pedidos

GROUP BY [%Id Pedido],

                    If(EsPedido=1, MesNamePedido,MesNombrePresupuesto) ,

                    ComercialPedido;

Además creo que tendrías que quitar la coma después de ComercialPedido en el LOAD.

Gracias y un saludo,
Héctor

jorcan46
Contributor II
Contributor II
Author

Gracias, voy a ver y te cuento.

jorcan46
Contributor II
Contributor II
Author

Ha funcionado, no exactamente como pensaba que lo iba a hacer pero consigo el dato agregando luego en la expresión del gráfico. Muchísimas gracias Muñoz Héctor!!!!!!

hector_munoz
Specialist
Specialist

De nada, Jorge, me alegro!

rubenmarin

Hola Jorge, si la pregunta está resulta por favor marca las respuestas útiles/correcta para marcarla como solucionada.

Gracias.

jorcan46
Contributor II
Contributor II
Author

Ok. Gracias Ruben.