martes, agosto 01, 2006

Comandos nuevos en GeneXus 9.0

Ayer hablando con Enrique, me comentaba de un par de comandos nuevos que están la versión 9.0 de GeneXus, pero que aparentemente no están documentados.

El primero es el comando iif, que permite en una sola línea evaluar una expresión booleana y devolver el resultado. La función recibe tres parámetros: el primero es la expresión booleana, el segundo es el valor que devuelve si la expresión es verdadera, y el tercero es el valor que devuelve si la expresión es falsa.

Por ejemplo:

&msg = iif(&valor1=&valor2, 'iguales', 'distintos')
msg(&msg)
O mejor aún:
msg( iif(&valor1=&valor2, 'iguales', 'distintos') )

Lo otro, es un cambio en la sintaxis del comando new() para los SDTs. Hasta ahora lo que hacía para incializar un elemento de una colección, era usar el nombre completo del tipo de datos.

Algo así como:

&item = new SDTColeccion.Items()

Pero, en la versión 9.0 funciona también:

&item = new()

La segunda sintaxis tiene varias ventajas:

  • no me tengo que acordar del tipo de datos del SDT
  • es un código más limpio y más prolijo
  • si cambio el nombre del SDT, debería seguir funcionando sin cambiar el código.

No hay comentarios.: