GeneXus - uso de Like con variables

   
Vista:

uso de Like con variables

Publicado por Asael Matadamas (7 intervenciones) el 09/04/2012 17:37:15
Hola estoy tratando de hacer un filtrado usando Like pero solo me esta filtrando por el comienzo de la cadena.

eh estado revisando y siempre utilizan un atributo y una variable, la cosa esque yo lo hago con dos variabes, me explico mejor.

en un sdt almaceno como 10 datos entre ellos el nombre de mi producto, en un workpanel tengo un grid donde los datos que traigo en el sdt los paso a variables que estan en dicho grid, el codigo de mi busqueda es algo parecido a:

Event gridcontrol1.load
Do Case
Case not &buscanombre.isempty()
For &producto in &productos
If &producto.nombre .Like. &buscanombre.trim()
.
.
.
Load
EndIf
EndFor
Case &buscanombre.isempty()
.
.
.
Load
EndCase
EndEvent

donde:

&producto.nombre = es la variable sdt donde traigo el nombre del producto (ej. 123-papel-blanco)
&buscanombre = es la variable que tengo en el workpanel para que el usuario escriba el criterio

como lo mensiono antes me filtra pero solo por el comienzo es decir si pongo 123 si filtra pero si pongo papel o blanco no me arroja resultados en la condicion y en el grid uso puras variables, el sdt lo lleno con datos de un webservice asi que en mi base de datos local no tengo esos datos almacenados por eso no lo hago con un for each como lo eh visto que usan el like,

cualquier comentario sera muy bien recivido. gracias y saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

uso de Like con variables

Publicado por Julio (301 intervenciones) el 09/04/2012 18:06:28
Prueba agregándole a la variable &buscanombre el signo % antes de hacer la búsqueda, así:
&buscanombre = concat('%' ,&buscanombre ,'')

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

uso de Like con variables

Publicado por Asael Matadamas (7 intervenciones) el 09/04/2012 20:58:38
Gracias Julio por tu sugerencia, hice lo que me dijiste y tambien me di cuenta que tenia otro error y que el nombre que traia en el sdt estaba en mayucuslas y minusculas, entonces a la hora de buscar no me traia resultados lo que hice fue pasar todo a mayusculas y con lo que me dijiste ya quedo muchas gracias.

Saludos...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar