Formularios, secciones y campos
En un sistema de información donde intervienen elementos de diferente naturaleza, resulta indispensable ofrecer un mecanismo para la entrada de información que identifique esos elementos. Para ello, ODL facilita al programador una serie de componentes que nos van a permitir diseñar estructuras para la entrada de datos según las necesidades del sistema de información. Estos componentes son formularios, secciones y campos. Veamos a continuación la especificación de cada componente:
Contenido
Formulario
Unformulario
es un componente donde podemos definir secciones y campos. En cuanto a su definición, podemos distinguir dos opciones. La definición de formulario como instancia, o una definición de tipo formulario.Si definimos un formulario como una instancia tendremos que hacerlo a nivel de contenedores. El compilador no aceptará su definición fuera de ese ámbito.
Ahora bien, ¿cuándo nos puede interesar una definición de tipo?
A la hora de programar un sistema de información en ODL, es probable que muchos formularios compartan cierto tipo de campos. Para ahorrarnos código, definiremos un tipo formulario con los campos comunes, para luego definir una instancia de ese tipo en la definición de un contenedor o crear nuevos tipos a partir de él. Para entender mejor estos conceptos, veamos la sintaxis de las dos opciones que hemos comentado:- Definición de formulario como instancia:
tipo
[Contenedor]es
contenedor
[Mi formulario]es
formulario
[Campo1]es
texto
... ... ...fin
fin
- Definición de tipo formulario:
Si nos fijamos, la definición de tipo se realiza fuera del ámbito de los contenedores, al contrario que la definición de formulario Mi formulario, que sí se tiene que definir en un contenedor.tipo
[Datos comunes]es
formulario
[Campo común]es
texto
... ...//Definición de los campos comunes
...fin
Si ahora quisiéramos redefinir Mi formulario como Datos comunes de manera que se hereden los campos definidos en él, lo realizaríamos de la siguiente manera:
tipo
[Contenedor] es
contenedor
[Mi formulario] es
[Datos comunes]
[Campo1] es
texto
...
...
...
fin
fin
A la hora de crear un objeto, en nuestro formulario aparecerán los campos definidos en Mi formulario y los heredados por Datos comunes.<p>Por tanto, la definición de tipo nos servirá para crear definiciones de formulario o para crear nuevos tipos, herendando su contenido.