INSTITUCIONAL
COMUNIDAD
BLOG
AYUDA
MI CUENTA
EN PT ES

Imagen6940S

Inclusión automática de código basado en Ajax

Siguiendo con la línea de funcionalidades basadas en Ajax que introduce GeneXus 9.0, presentaremos como implementar "Dynamic combo boxes with filters" en un caso práctico.

En la edición pasada de las Noticias GeneXus, vimos dos propiedades que se pueden configurar para simplificar la entrada de datos y ayudar el diseño de interfaces más atractivas y amigables con la inclusión automática de código basado en Ajax: InputType y Suggest. En esta edición que veremos un ejemplo de uso de otras de las propiedades basadas en Ajax que introduce GeneXus 9.0: Filtros con combos dinámicos.

Consideremos un ejemplo simple como el de Countries & Cities. La idea principal es que en un formulario (como por ejemplo los formularios para dar de alta una casilla que correo), el usuario debe ingresar el País y la Ciudad donde vive. Para facilitar el ingreso de esta información, tanto el campo País como Ciudad se presentan en forma de combo. Es de esperarse entonces que una vez seleccionado el País, el combo de ciudades deberá cargarse automáticamente con las ciudades del País previamente seleccionado.

Explicado ya el problema tenemos entonces:

Transacción Country con la siguiente estructura:

La transacción City, y por otro lado tenemos una transacciones de Customers donde se dará de alta a los distintos clientes. Entre la información a completar se encuentra el Country la City donde vive el cliente.

En cualquier lenguaje de programación convencional crear un form donde el combo de Ciudades se cargue automáticamente a partir del País seleccionado y sin refrescar el total de la página implicaría grandes esfuerzos de programación en javascript y obviamente lógica del lado del server. Sin embargo, resolver este problema en GeneXus 9.0 tiene costo 0 debido a que se generación de código basado en Ajax. El tiempo de desarrollo se reduce así sustancialmente incrementando la productividad.

Los pasos a seguir entonces son:

1- Definimos tanto CountryId como CityId como Dynamic Combo Boxes

 

2 Ejecute la aplicación y disfrute.

 

Cuando seleccionamos un país nos va a mostrar las ciudades de ese país como se puede observar en la imagen anterior y sin haber refrescado la página completamente (como antes se mencionaba). Bien es sabido que poco tiempo atrás, la carga combos dependientes implicaba siempre un "refresh" total, quitándole usabilidad y generando incertidumbre en el cliente. Todas estas limitaciones del modelo web tradicional (donde las idas al servidor siempre debían ser forzadas por el usuario) se ven hoy opacadas por las funcionalidades de GeneXus basadas en Ajax (donde las idas al servidor ahora puede ser hechas por la misma aplicación en forma asincrónica).

Finalizamos así la serie de noticias explicando las distintas funcionalidades basadas en Ajax. Lo invitamos a probar estas nuevas funcionalidad en
 
http://www.gxajax.com/sample/

Conozca todo sobre GeneXus y Ajax: 
http://www.gxajax.com

 

 

 

 

 

 

 

 

Relacionado
GXplorer, GeneXus .Net, Ajax y tarjetas inteligentes
GeneXus 9.0 y Ajax
Getting Started con GeneXus 9.0 y Ajax