ScriptCase 9. Obtener valores de los campos de una búsqueda avanzada.

137 views
Skip to first unread message

Fausto

unread,
Aug 20, 2020, 1:07:21 AM8/20/20
to Comunidad ScriptCase Latino

En el evento onvalidate de la búsqueda avanzada es posible obtener el valores de los campos que estemos utilizando en ella, pongamos como ejemplo la siguiente búsqueda avanzada.




Como podemos notar tenemos el campo población, pero obtendremos dos valores (rango de valores) por lo que se muestran dos campos uno para el valor mínimo y otro para el máximo, queremos validar que el campo que debe de contener el valor mínimo no sea mayor al campo que contiene el valor máximo, por lo que haremos uso del evento onvalidate.



Como podemos notar el campo que utilizamos tiene el nombre de {population}, por lo que el valor mínimo debe de corresponder a este campo, para el valor máximo ScriptCase crea un campo especial adicionando el sufijo _2. Así el nombre del campo que contiene el valor máximo será {population_2}. Lo mismo pasaría con cualquier tipo de campo si se utiliza el criterio de búsqueda entre dos valores.



Espero que este pequeño truco sea de ayuda.


Fausto

unread,
Jan 23, 2025, 11:21:08 AMJan 23
to Comunidad ScriptCase Latino
Para complementar el post anterior y utilizando los mismos campos de este,  si en el onValidate de una búsqueda avanzada estamos requiriendo el tipo de condición seleccionado,  esto lo almacenará Scriptcase en una variable con el nombre $population_cond que estará disponible en el onValidate y puede contener el valor  'bw' en caso de haber seleccionado un filtro entre dos valores  y 'eq'  en caso de seleccionar igual que. Estas son las condiciones mas usadas:

"EQ" = Igual
"II" = Empezando con
"DF" = Diferente de
"GT" = Mayor que
"GE" = Mayor o Igual que
"LT" = Menor que
"LE" = Menor o Igual que
"NP" = Diferente de
"DF" = Diferente de

Un ejemplo de uso en el mismo onValidate sería el siguiente:



[glb_population] = (('bw'==$population_cond)?{population_2}:{population});



En este ejemplo asignamos a una variable global el valor del campo {population_2} cuando estamos aplicando un filtro entre dos valores, así que tomaríamos el segundo valor (hasta), de lo contrario utilizaríamos siempre el valor del campo {population}.
Reply all
Reply to author
Forward
0 new messages