PDA

View Full Version : clausula where xaction



pujol1986
10-20-2009, 11:34 AM
Hola a todos,
supongo que alguien se habrá encontrado antes con este problema, os explico...
tengo un parámetro llamado "meses" en mi xaction, este parámetro toma valores tales como '01', '01,02' etc...

tengo un get data from --> relational que contiene la siguiente linea en la clausula where:

to_char(fecha, 'MM') in ('{meses}')

cuando meses = '01' funciona perfectamente, sin embargo cuando le pongo mas de un mes como parámetro me da un error.
Estoy seguro que el fallo viene a la hora de concatenar los valores de la variable meses.

Alguien sabe como se deberían formatear para que la clausula IN de la where funcionara con mas de un valor?

P.D: en sql debería ser to_char(fecha, 'MM') in ('01','02') pero con la variable no se como hacerlo.

Un saludo y gracias de antemano.

tdidomenico
10-23-2009, 09:26 AM
Lo más sencillo sería tomar el listado con una variable de entrada en la Action Sequence, pasar esa variable a una lista de múltiple selección en un Secure Filter, y utilizar la salida de ese Secure Filter en la consulta. El código iría sin las comillas:



to_char(fecha, 'MM') in ({PREPARE:meses})


El "PREPARE" siempre es recomendable para evitar ataques de inyección SQL.

¡Saludos!

pujol1986
10-26-2009, 12:35 PM
Muchas gracias