trabajo
155
Procedimientos
Definición
• Procesos no interactivos de consulta y actualización de la base
de datos.
Procedimientos:
Definen procesos no interactivos de consulta y actualización de la base de datos. Los procedimientos
pueden generar un archivo formato PDF, mediante el cual es posible listar información por pantalla o
impresora. Además, losprocedimientos pueden actualizar la base de datos1.
-------------------------------------------------------------------------------------------------------------------------------1 Como veremos más adelante, existe un tipo de datos especial, que no es estrictamente un tipo de datos, sino
algo un poco más complejo, el business component, por medio del cuál se podrán realizar actualizaciones a la
base dedatos en cualquier objeto GeneXus. Por tanto, utilizando variables de tipo de datos business component,
podrán realizarse actualizaciones incluso en los objetos que por naturaleza no ofrecen esta posibilidad, como los
web panels.
156
Características
• Definición procedural.
• Definición sobre la base de conocimiento.
• Independencia de la base de datos: definición a nivel de atributos.
Definición procedural
A diferencia de las reglas de las transacciones donde las especificaciones se realizan en forma
declarativa y GeneXus determina en el momento de generar el programa la secuencia de ejecución,
en los los procedimientos las especificaciones se realizan en forma procedural. De esta forma, la
secuencia de ejecución es determinada por el analista, utilizando para elloun lenguaje bastante
simple que contiene comandos de control, de impresión, de acceso a la base de datos, etc.
Definición sobre la base de conocimiento
La gran potencia del lenguaje de los procedimientos radica en que las definiciones se hacen sobre la
base de conocimiento y no directamente sobre el modelo físico (tablas, índices, etc.). Esto nos
permite utilizar automáticamente todo elconocimiento ya incorporado o generado por GeneXus a
partir de las especificaciones realizadas.
Por ejemplo, si deseamos desplegar el resultado de una fórmula alcanza con nombrar al atributo
fórmula en el lugar adecuado y GeneXus disparará su cálculo desplegando el resultado, sin
necesidad de que el analista tenga que brindar ninguna otra información. La información de cómo se
calcula unatributo fórmula está contenida en la base de conocimiento.
También podremos utilizar el concepto de tabla extendida, ya que GeneXus conoce las relaciones
entre las tablas de la base de datos, por lo que el analista no necesita explicitar estas relaciones a la
hora de recuperar datos.
Independencia de la base de datos: definición a nivel de atributos
La definición de los procedimientos se hace anivel de atributos: no es necesario indicar
explícitamente cuáles tablas serán recorridas ni mediante qué índices. Con solo mencionar los
atributos a los que se desea acceder es suficiente para que GeneXus determine esta información.
Esto es posible porque GeneXus tiene un completo conocimiento de la estructura de la base de
datos.
De esta manera logramos una real independencia de la base dedatos, ya que cualquier cambio en
las tablas será manejado automáticamente por GeneXus y de esta forma, para actualizar los
programas alcanzará, gran parte de las veces, con regenerar los objetos sin tener que modificar nada
de lo programado en ellos.
157
Elementos
• Como en las transacciones, pueden definirse variables que serán
locales al objeto.
Para cada procedimiento sepuede definir:
• Source: Aquí se escribe el código correspondiente a la lógica del procedimiento. También pueden
definirse al final del código subrutinas1 que podrán ser invocadas desde el propio código mediante el
comando adecuado.
• Layout: Así como las transacciones tienen una pantalla (form), los procedimientos tienen un
“layout” de la salida. En esta sección se define la presentación del...
Regístrate para leer el documento completo.