Вы находитесь на странице: 1из 13

Soluciones abiertas para un mundo cambiante

Gua de Diccionarios de Datos

www.Moose-Software.com www.VisualDataflex.es

Soluciones abiertas para un mundo cambiante

Versiones documento
Versin
1.0

Revisado por
Andrea Guimares

Pginas
Versin inicial. Traducido de Data Dictionary Guide de la ayuda de VDF 12.1

Fecha
31/01/2008

www.Moose-Software.com www.VisualDataflex.es

Gua de Diccionario de Datos

ndice
Introduccin a los Diccionarios de Datos ....................................................................... 4 Usando Diccionarios de Datos mientras se desarrolla una aplicacin .................................... 4 Usando Diccionarios de Datos cuando se desarrolla una aplicacin ....................................... 4 Trabajando con Diccionarios de Datos .............................................................................. 5 Creando clases de Diccionario de Datos ......................................................................... 5 Construyendo estructuras de Objeto de Diccionario de Datos ............................................ 6 Restricciones y filtros .................................................................................................. 6 Usando los objetos de Diccionario de Datos ................................................................... 7 Usando objetos de Diccionario de Datos con las Aplicaciones de Windows ........................... 7 Usando Objetos de Diccionario de Datos con Aplicaciones Web .......................................... 8 Tablas, columnas y filas ............................................................................................... 10 Consulte lo siguiente ................................................................................................... 10 ndices ......................................................................................................................... 11 Consulte lo siguiente ................................................................................................... 11 Relaciones .................................................................................................................... 12 Consulte lo siguiente ................................................................................................... 13

www.VisualDataflex.es

Pgina 3 de 13

Gua de Diccionario de Datos

Introduccin a los Diccionarios de Datos


En Visual DataFlex, la implantacin de las reglas de de negocio de su aplicacin se expresan y administran completamente por Diccionarios de Datos. Los Diccionarios de Datos crean una capa entre la lgica de aplicacin y los datos. Esto aporta las siguientes ventajas: Permite a su aplicacin interactuar ms eficazmente con su base de datos. Los Diccionarios de Datos aumentan la informacin de su base de datos de forma independiente a los datos fsicos. Protege sus datos - los Diccionarios de Datos se aseguran de que solamente se aadan datos vlidos. Centraliza la lgica de aplicacin - toda la informacin y las reglas en un solo lugar. Si tiene que hacer un cambio, hgalo solamente en un lugar y el resto se modificar solo.

Los Diccionarios de Datos se definen como clases. Crear una clase de Diccionario de Datos para cada tabla. Estas clases sern usadas mientras est desarrollando su aplicacin.

Usando Diccionarios de Datos mientras se desarrolla una aplicacin


Mientras est desarrollando su aplicacin, las herramientas de apoyo de Visual DataFlex usarn la informacin en sus clases de Diccionario de Datos para ayudarle en el proceso de desarrollo. Esta informacin ser usada cuando cree vistas de entrada en Windows, informes y pginas web. Studio y sus asistentes usarn el Diccionario de Datos para determinar: Qu tablas deben ser abiertas y cmo estn conectadas. Qu tipos de controles deben ser usados para un campo especial (por ejemplo: el tipo de lnea, casilla de verificacin) Qu etiquetas y contexto debe ser usado como ayuda para sus controles. Qu listas de consultas (lookup lists) deben ser usadas, cmo deben ser usadas y cul ser su aspecto.

Los Diccionarios de Datos facilitan crear aplicaciones slidas, con buena apariencia y fcilmente mantenible.

Usando Diccionarios de Datos cuando se desarrolla una aplicacin


Los Diccionarios de Datos se aaden a una aplicacin creando Objetos de Diccionario de Datos (DDOs). A la hora de desarrollar una aplicacin, los DDOs sirven para dos propsitos principales: Coordinan la actividad de la base de datos en los objetos de entrada de datos- (DEOs).

www.VisualDataflex.es

Pgina 4 de 13

Gua de Diccionario de Datos


Proveen a un programa los servicios de validacin y actualizacin de la base de datos.

Estos dos propsitos son distintos. Creando una estructura de DDOs, conectando los objetos de manera apropiada y a la vez conectando DEOs a esta estructura, garantizando la actividad de la base de datos de forma coordinada. Todas estas conexiones se programan a nivel de objeto. Las reglas de la base de datos se mantienen actualizadas porque son creadas en una clase de Diccionario de Datos con propiedades y con varios eventos definidos en el Diccionario de Datos. Esto se programa a nivel de clase.

Trabajando con Diccionarios de Datos


Trabajar con Diccionario de Datos consiste en: Crear una subclase de Diccionario de Datos para cada tabla codificando las reglas de las bases de datos en estas clases. Esto se consigue creando propiedades, funciones y procedimientos. Crear objetos (objetos de entrada de datos) en las vistas, objetos Web y otros componentes. Una estructura de DDO es un grupo de objetos de DD que se conectan para proporcionar el acceso sincronizado a tablas relacionadas. Crear objetos (objetos de entrada de datos) mtodos (funciones / procedimientos) dentro de las vistas, objeto Web u otro componente que se comunique con sus DDOs. Esto permitir que vea, cree, edite o borre sus datos.

Creando clases de Diccionario de Datos


Crear una clase de Diccionario de Datos para cada tabla de su aplicacin. Estas clases, basadas en la clase de DataDictionary, permiten que defina la informacin y se establezcan las reglas para una tabla. Poniendo estas reglas en un nico lugar (una clase) no tendr que repetirlas en cada componente que acceda a la tabla. Las reglas que puede especificar en esta clase son: La estructura de la tabla. Cmo se puede conectar a otras tablas. Definir qu validaciones y propiedades se aplican a cada campo. Qu reglas deben ser aplicadas durante grabaciones (saves), borrados (deletes) y actualizaciones (updates). Otra informacin como los nombres de etiqueta o texto de ayuda.

Todos los cambios de datos pasan por los DDOs. Antes de que se cambien los datos los Diccionarios de Datos los validan para usar las reglas, simples o complejas, que usted ha desarrollado en sus clases de Diccionario de Datos. Los Diccionarios de Datos son una clase tan importante que se ha desarrollado una herramienta visual, Database Builder, para crear y mantener esas clases. Pretendemos que utilice siempre esta herramienta para mantener sus Diccionarios de Datos. Database Builder crea el cdigo fuente para estas clases. En algunos casos este cdigo se genera automticamente seleccionando

www.VisualDataflex.es

Pgina 5 de 13

Gua de Diccionario de Datos


las opciones apropiadas en el Database Builder mientras que en otros casos usted crear este cdigo usando el editor de cdigo del Database Builder. Para ms informacin acerca del funcionamiento de esta herramienta vea: Definiendo clases de Diccionario de Datos.

Construyendo estructuras de Objeto de Diccionario de Datos


Un conjunto de tablas relacionadas son representadas en su aplicacin como una estructura de objeto (DDO) de Diccionario de Datos. Las estructuras de DDO son creadas dentro de varios objetos contenedores diseados para manejar DDOs. Algunos de los objetos contenedores diseados para esto son: DbView: usados por aplicaciones de windows para la introduccin de datos. ReportView: usados para pedir informes. BusinessProcess: stos son utilizados por aplicaciones Windows y Web para manejar y procesar por lotes. cWebBusinessProcess: usados en aplicaciones de Web que proveen todo el soporte posterior (Back end) para sus pginas HTML. cWebService: usados en aplicaciones de Web para suministrar el soporte para los servicios Web (Web services).

Las reglas para montar estructuras de DDO son las mismas para todos estos contenedores. Cada objeto de Diccionario de Datos debe ser creado y conectado a la estructura de forma apropiada. Esto es hecho a travs DDOs hijo creando enlaces con los DDOs padre. Cuando se monta apropiadamente, las estructuras de DDO proveen acceso sincronizado a una jerarqua de datos. Segn sea necesario se propagan mensajes entre varios objetos DD entregando de esta forma un comportamiento homogneo y consistente para las operaciones de Buscar, Limpiar, Grabar y Borrar. Adems se validan estas estructuras antes de permitir el cambiar datos. El Studio maneja por usted la creacin de estructuras de DDOs. Para ms informacin sobre estructuras de DDOs vea: Creando estructuras de Objeto de Diccionario de Datos (DDO).

Restricciones y filtros
Una tarea adicional de los DDOs es permitir que se puedan restringir y filtrar los registros dentro de un componente. Se soportan dos tipos de restricciones: Cuando un DDO se relaciona con otro, usted podra querer que el DDO hijo muestre solamente los registros que se relacionan con el registro en curso en el DDO padre. A esto se llama Relates- To- Constraint o Restriccin por Relacin. Una vista o informe puede necesitar solamente de un subconjunto de datos de cada vez. Podra, por ejemplo, especificar clientes y filtrar por una determinada regin o provincia. A estos se les llama Filter Constraints o Restriccin por filtro.

Ambas clases de restricciones (se pueden combinar juntas) se definen dentro de sus estructuras de DDO.
www.VisualDataflex.es

Pgina 6 de 13

Gua de Diccionario de Datos


Para ms informacin sobre restricciones y filtros vea: Restricciones y Filtros.

Usando los objetos de Diccionario de Datos


El objeto que contiene una estructura de DDO tambin contiene, a su vez, todos los objetos y mtodos necesarios para comunicarse con esos DDOs. Este proceso de comunicacin est, por lo tanto, totalmente encapsulado. En algunos casos, esta comunicacin ocurrir entre un objeto de entrada de datos (DEO) y un DDO. Por ejemplo, una ventana contendr DEOs que permiten que vea y edite sus datos. Cada DEO est asignado a un DDO y toda comunicacin entre el DDO y el DEO es automtica. En otros casos, la comunicacin ocurrir entre un mtodo (procedimiento o funcin) y un DDO. Por ejemplo, un objeto de proceso de datos (Business Process Object o BPO), un objeto navegador de web o un objeto de servicio de Web contendrn una estructura de DDO y los mtodos que usan el DDO. En todos los casos, los DDOs son usados para el mismo propsito. Tienen que permitirle hacer lo siguiente: Buscar o borrar datos. Proporcionarle informacin sobre el valor de un campo del DDO. Producir cambios en un valor del campo de DDO. Validar y grabar datos. Validar y borrar datos.

En una aplicacin de Web, la conexin entre su DDO y DEO (su navegador) es indirecta, o procesada por lotes. Todos los cambios en un DDO son enviados al navegador en formato HTML como un solo evento. Todos los cambios en un DEO (el navegador) son enviados al DDO una sola peticin de lote. Su Web Browser Object (WBO) coordina esta actividad. El mismo DDO es capaz de soportar diferentes interfaces (por ejemplo: controles de ventanas, pginas HTML, servicios Web) y por lo tanto, la habilidad del DDO de comunicarse con estas interfaces variar. Sin embargo, la lgica bsica de DDO y los servicios de validacin estn soportados en todas las plataformas. Por ejemplo, las validaciones de campo son siempre ejecutadas antes de una grabacin. Puede encontrar ms informacin en cmo usar DDOs en: Usando objetos de Diccionario de Datos en sus componentes.

Usando objetos de Diccionario de Datos con las Aplicaciones de Windows


Las Aplicaciones de Windows contienen un tipo especial de objeto de entrada que est integrada con los DDO. A estos objetos se les llama Data Entry Object (DEOs) u objetos de entrada de datos. Cada DEO est unido a un campo en una tabla. Adems, cada DEO especifica un DDO para que acte como su servidor. Una vista constar de una estructura de DDO y un nmero de estos DEOs. Los mensajes, lanzados a menudo por la interaccin de usuarios, son enviados del DEO a su servidor DDO. Los mensajes dicen al DDO que lleven a cabo una de las tareas de DDO que estn en la lista de arriba (Buscar, Grabar, Borrar, etc). Cuando el DDO haya terminado la operacin solicitada, enviar
www.VisualDataflex.es

Pgina 7 de 13

Gua de Diccionario de Datos


los mensajes de notificacin a todos los DEOs conectados. Los DEOs usarn estas notificaciones para actualizar sus datos y su apariencia. La sincronizacin entre DEOs y DDOs permite que estos objetos de entrada sean completamente Data Aware (Consciente de Datos). Aadiendo muy poco cdigo, podr crear sofisticadas aplicaciones de entrada de datos. Las Aplicaciones Windows tambin pueden usar DDOs dentro de informes. Un informe definir un DDO para actuar como su servidor. Todas las bsquedas sern manejadas automticamente por mensajes enviados del informe al servidor DDO. No es necesario el uso de DDOs en informes. Hay aplicaciones que usan BPO para manejar actualizaciones personalizadas. Un BPO debe contener mtodos personalizados que ejecuten los procesos. Cree su cdigo en estos mtodos para controlar la actividad entre el DDO y el proceso. Existe una interfaz completa de Diccionario de Datos que le permite escribir un cdigo que ejecute los mismos tipos de tareas que las que hacen automticamente los DEOS (por ejemplo: limpiar, buscar, modificar datos, grabar, borrar).

Usando Objetos de Diccionario de Datos con Aplicaciones Web


Las aplicaciones Web usan objetos Web para manejar todos los procesos. Hay dos tipos de objetos Web: Objetos de navegador web o Web Browser Object (cWebBusinessProcess) Se emplean para interactuar con el navegador de web basado en pginas. Objetos de Servicios Web o Web Service Objects (cWebService) Se emplea para proveer servicios de web.

Estos objetos estn diseados para contener las estructuras de DDO y los mtodos que se comunican con esos DDOs. Un desarrollador interacta con los DDOs de la misma forma con la que operan con un BPO en una aplicacin windows. Los WBO esperan que la interfaz visual sea provista creando pginas HTML. Esas pginas son creadas (programadas) usando un servidor de pginas activas (ASP). Las pginas ASP hacen las llamadas en los WBO. Dentro del WBO cree los mtodos para hacer lo que sea necesario. A continuacin haga sus mtodos disponibles a su pgina ASP publicando su Interfaz. Adems, los WBO contienen una serie de interfaces que dan acceso a sus Diccionarios de Datos. Esto permite que lleve a cabo todas las funciones bsicas del Diccionario de Datos (por ejemplo: buscar, borrar, grabar, limpiar,) sin tener que escribir cdigo en los WBO. Los WBO proveen soporte de servicio web. Un servicio web puede o no necesitar acceder al Diccionario de Datos. Si lo hacen, se puede aadir una estructura de DDO al servicio de objeto web o Web Service Object (WSO) y crear mtodos que se comuniquen con los DDOs.

www.VisualDataflex.es

Pgina 8 de 13

Gua de Diccionario de Datos

Diccionario de datos bsico y conceptos de tabla


1. Tablas, columnas y filas 2. ndices 3. Relaciones 4. Identificador de registro y RowId 5. Transacciones, bloqueos y soporte multi-usuario 6. Buffers de fichero y Buffers de campo-DDO 7. Grupos de comandos File_field y Field 8. Comandos de ficheros 9. API de la base de datos

www.VisualDataflex.es

Pgina 9 de 13

Gua de Diccionario de Datos

Tablas, columnas y filas


Generalmente las bases de datos se definen como una coleccin de tablas. Las tablas constan de un juego de columnas designadas con un tipo de datos especficos y con una longitud determinada. Los datos en las tablas se denominan filas. Los mensajes de interfaz de Diccionarios de Datos usan la siguiente terminologa para describir las bases de datos: FILE- un file (archivo) hace referencia a una tabla. FIELD- un Field (campo) hace referencia a un campo. RECORD- un Record hace referencia a una fila de datos de una tabla.

Los mensajes del Diccionario de Datos usan ficheros (files), campos (field) y registros (records) en sus nombres de interfaz. Algunos ejemplos de esto son Main_File, Field_Options, File_Field_Current_Value, y OnNewCurrentRecord. Mientras que la documentacin usar algunos de estos trminos indistintamente, el uso normal de estos ser: La tabla se usa cuando se consultan tablas de la base de datos. Solamente deber ver la palabra file" en los mensajes de interfaz. El campo se usa cuando se consultan las columnas de una tabla y cuando se hace referencia a la entidad en el Diccionario de Datos que define una columna. Un Diccionario de Datos mantiene las estructuras de la informacin sobre la columna como valores, etiquetas, y opciones (Field_Current_Value, Field_Label, Field_Options) de cada tabla. stos sern referencias como campos (fields) dentro del Diccionario de Datos. Los registros (records) se usan para hacer referencia a una fila de datos de una tabla.

Consulte lo siguiente
Diccionario de datos bsico y conceptos de tabla

www.VisualDataflex.es

Pgina 10 de 13

Gua de Diccionario de Datos

ndices
En el Diccionario de Datos todas las bsquedas de informacin se producen usando ndices. Los ndices se utilizan para encontrar rpidamente registros individuales y para buscar en una tabla (hacia delante o hacia atrs) en un orden especfico. Para ser usadas adecuadamente por los Diccionarios de Datos, cada anotacin en los ndices debe ser nica. En otras palabras, los segmentos usados para crear un ndice no deben admitir duplicados (deben poder identificar un registro). Generalmente la singularidad est asegurada si se aade el campo de clave primaria como el ltimo segmento(s) del ndice. Los ndices se definen dentro del Database Builder con un nmero de ndice. Ese nmero se usa en los Diccionarios de Datos y en el cdigo de sus programas para determinar qu ndice debera usarse.

Consulte lo siguiente
Diccionario de datos bsico y conceptos de tabla

www.VisualDataflex.es

Pgina 11 de 13

Gua de Diccionario de Datos

Relaciones
Las relaciones sirven para "normalizar" sus datos. Algunos de los objetivos de la normalizacin son: 1. La eliminacin de grupos repetitivos - Haga una tabla de consulta (lookup list) distinta para cada juego de atributos relacionados, y de una clave primaria a cada tabla. Por ejemplo, podra estar grabando contactos en sus clientes. No deber guardar los contactos en la tabla de clientes; sin embargo pondr la informacin de contacto en una tabla distinta y relacione cada registro con la clave primaria de su tabla de clientes. 2. Eliminar los datos redundantes- Si un atributo depende solamente de parte de una clave multisegmento, retrelo a una tabla distinta. Supongamos que cada contacto que tenga con un cliente es categorizado (llamada telefnica, correo, visita personal, etctera). Deber guardar el tipo de contacto en una tabla distinta y relacionar los contactos con los tipos de contactos. 3. Eliminar columnas que no sean dependientes de una clave- Si los atributos no contribuyen a una descripcin de la clave, retrelos a una tabla distinta. Por ejemplo, suponga que est almacenando el nombre del cliente, direccin de Empresa y nmero de telfono de Empresa. Estos atributos describen el lugar del trabajo del cliente, no el cliente, as que deber crear una tabla de Empresa y quitar la informacin de Empresa de la tabla del cliente pasndola a esta nueva tabla relacionando la tabla de clientes con esta otra. stas son las primeras tres formas de la normalizacin de datos y son probablemente las tres que ms desee aplicar comnmente en su base de datos. Las relaciones se representan en Visual DataFlex key) y clave primaria (primary key): usando el modelo de clave fornea (foreing

1. Una relacin debe ser definida de tabla hijo a tabla padre. Una tabla hijo define a un campo o conjunto de campos que se corresponden con un conjunto de datos en el padre. El tamao y el tipo de datos de campo en el padre y el hijo deben ser los mismos. Esta relacin se define usando el Database Builder. 2. Los valores de los campos relacionados en el padre (Ej. A, B y C) deben ser nicos y soportados por un ndice cuyos segmentos son los mismos que los campos relacionados (A, B, C de arriba). El campo relacionado en la tabla padre es casi siempre su clave primaria y se refiere en el Diccionario de Datos como el campo clave (key field). 3. La tabla hijo generalmente tiene uno o ms ndices que permiten la bsqueda rpida por los campos relacionados. Esto quiere decir que los primeros segmentos en este hijo debe consistir de los campos a los que se relacionan. Los Diccionarios de Datos utilizan las relaciones en cuatro maneras: 1. Relacionar: cuando un Diccionario de Datos encuentra un registro, todos los DDOs padre encontrarn automticamente todos los registros relacionados. El DDO padre de esos DDOs buscar y encontrar los registros relacionados en la estructura superior (lo que se dice normalmente hacia arriba). De esta forma el buscar/relacionar encuentra una estructura entera de registros relacionados.
www.VisualDataflex.es

Pgina 12 de 13

Gua de Diccionario de Datos


2. Agregados: antes de una grabacin (save) o bsqueda (find) los valores de los campos relacionados al padre se mueven a los campos relacionados de los hijos. Este proceso de agregar (attach), asegura que la tabla hijo y la tabla padre se relacionen de forma apropiada durante las grabaciones. 3. Restricciones (filtros): una restriccin (constrain) de una relacin definida en la estructura de un Diccionario de Datos restringe la bsqueda de registros hijo a los relacionados al padre. Esta caracterstica es usada exhaustivamente en aplicaciones tipo cabecera-detalle (por ejemplo en un sistema de introduccin de pedidos en donde los detalles-lneas de pedido deben estar restringidos a un pedido). 4. Validaciones y grabaciones: una validacin ocurre antes de que suceda una validacin de grabacin en el DDO Principal y en todos los DDOs padre relacionados. Adems, la estructura de DDO es inspeccionada antes de la grabacin. Si la estructura entera no est en su lugar, la validacin fallar. Cuando ocurre una grabacin (save), el registro en el DDO Principal y todos los registros de los DDOs padre son grabados como una nica transaccin. Bsicamente, las relaciones en Diccionarios de Datos permiten que trabaje con una jerarqua de registros como una sola entidad.

Consulte lo siguiente
Diccionario de datos bsico y conceptos de tabla

www.VisualDataflex.es

Pgina 13 de 13

Вам также может понравиться