tes581

Upload: marbimon

Post on 04-Oct-2015

249 views

Category:

Documents


7 download

DESCRIPTION

SISTEMA DE FACTURACION Y COBRANZA DE RADIOLOCALIZADORES

TRANSCRIPT

  • BENEMRITA UNIVERSIDAD AUTNOMA DE PUEBLA

    FACULTAD DE CIENCIAS DE LA COMPUTACIN

    TESIS

    SISTEMA DE FACTURACIN Y COBRANZA

    DE RADIO LOCALIZADORES

    QUE PARA OBTENER EL TITULO DE

    LICENCIADO EN CIENCIAS DE LA COMPUTACIN

    PRESENTA: JOS MIGUEL ANGEL OCHOA RODRGUEZ

    ASESOR: M.E. CARMEN CERN GARNICA

    PUEBLA, PUE. Julio 2004

  • CONTENIDO INTRODUCCIN CAPTULO I MARCO TERICO 1.1 Conceptos de bases de datos ..........................................................................1 1.1.1 Caractersticas .............................................................................................2 1.1.2 Ventajas .......................................................................................................3 1.1.3 El sistema administrador de bases de datos (DBMS) .................................3 1.1.3.1 Funciones del DBMS ...................................................................................3 1.1.3.2 Modelo Entidad Relacin ..........................................................................4 1.1.3.3 Normalizacin ..............................................................................................5 1.2 Modelo Cliente Servidor ................................................................................6 1.2.1 Arquitectura Cliente Servidor ....................................................................7 1.3 Mecanismos de conectividad en las bases de datos........................................8 1.4 Lenguajes de programacin orientados a objetos............................................9 CAPTULO II SISTEMA MANEJADOR DE BASES DE DATOS ORACLE 2.1 Arquitectura ....................................................................................................15 2.1.1 Bases de Datos..........................................................................................15 2.1.2 Espacios de Tablas....................................................................................15 2.1.3 Archivos de Datos......................................................................................16 2.1.4 Otros archivos............................................................................................16 2.1.5 Instancias...................................................................................................18 2.2 Caractersticas Administrativas de Oracle......................................................19 2.2.1 Instalacin..................................................................................................19 2.2.2 Gestin del proceso de desarrollo .............................................................24 2.2.2.1 Procesos culturales...................................................................................24 2.2.2.2 Procesos de gestin .................................................................................25 2.2.2.3 Tecnologa ................................................................................................25 2.3 Herramientas de desarrollo Oracle.................................................................26 2.3.1 Arquitectura de datos de Developer Forms y Developer Reports .............28 2.4 Ventajas...........................................................................................................32 CAPTULO III ANLISIS Y DISEO DEL SISTEMA 3.1 Planteamiento del problema ..........................................................................33 3.2 Anlisis del sistema .......................................................................................33 3.2.1 Especificacin de requerimientos ..............................................................34 3.2.2 Estrategia de solucin................................................................................35 3.3 Modelo funcional............................................................................................36 3.3.1 Narrativa de las funciones del sistema ......................................................36 3.3.2 Narrativa del flujo de datos del sistema (DFD) ..........................................40 3.4 Diseo de la base de datos ...........................................................................46 3.4.1 Entidad Relacin.....................................................................................46 3.4.2 Normalizacin ............................................................................................47 3.4.3 Diseo lgico de la base de datos .............................................................49 3.4.4 Diseo fsico de la base de datos ..............................................................52 3.4.5 Tablas del sistema .....................................................................................54

    i

  • 3.5 Diccionario de datos ......................................................................................56 CAPTULO IV DESARROLLO DEL SISTEMA 4.1 Herramientas de desarrollo ............................................................................59 4.1.1 Mens ........................................................................................................59 4.1.2 Asistente para Formas...............................................................................60 4.1.3 Pasos para construir una forma.................................................................65 4.1.4 Llamando Reportes desde las Formas ......................................................69 4.2 Ambiente de las herramientas de desarrollo ..................................................70 4.2.1 Forms Builder.............................................................................................71 4.2.2 Forms Runtime ..........................................................................................72 4.2.3 Triggers......................................................................................................73 4.2.4 Reports Builder ..........................................................................................77 4.3 Recursos de hardware y software ..................................................................80 CAPITULO V PRUEBAS DE DATOS DEL SISTEMA 5.1 A todos los mdulos ........................................................................................81 5.1.1 Sistema de Mens .....................................................................................81 5.1.2 Mdulos .....................................................................................................84 5.1.3 Reportes ....................................................................................................86 CONCLUSIN.......................................................................................................90 PERSPECTIVAS ...................................................................................................91 BIBLIOGRAFA.....................................................................................................92

    ii

  • INDICE DE FIGURAS CAPTULO I MARCO TERICO 1.1 Representacin de una tabla, mostrando sus campos y registros ....................2 1.2 Ejemplo de un diagrama Entidad Relacin.....................................................5 1.3 Modelo Cliente Servidor .................................................................................7 CAPTULO II SISTEMA MANEJADOR DE BASES DE DATOS ORACLE 2.1 Relaciones sobre bases de datos, tablespaces y archivos de datos...............15 2.2 Instancias y bases de datos en Oracle............................................................19 2.3 Ventana de inicio del asistente de instalacin .................................................20 2.4 Configuracin para desinstalar productos .......................................................21 2.5 Productos disponibles......................................................................................22 2.6 Identificacin de Bases de Datos ....................................................................23 2.7 Fin de la instalacin .........................................................................................23 2.8 Estructura de Forms ........................................................................................27 2.9 Principales relaciones de los objetos de una pantalla .....................................28 2.10 Manejo de la herramienta Forms de Oracle ..................................................29 2.11 Ejemplo de diseo de un Reporte en Developer Reports..............................30 2.12 Funcionamiento de la herramienta Forms de Oracle ....................................31 2.13 Tipos de archivos para mdulos en Forms de Oracle ...................................32 CAPTULO III ANLISIS Y DISEO DEL SISTEMA 3.1 Modelo Funcional General...............................................................................36 3.2 Modelo Funcional del verificacin de usuarios ................................................37 3.3 Modelo Funcional del catlogos principales ....................................................38 3.4 Modelo Funcional de Generacin y Aplicacin de cuentas x cobrar y facturas .......................... 39 3.5 Modelo Funcional de Generacin de Reportes y Consultas ...........................40 3.6 Diagrama DFD de Nivel 0...............................................................................41 3.7 Diagrama DFD de Nivel 1...............................................................................42 3.8 Diagrama DFD de Nivel 2 Captura General de Datos.................................43 3.9 Diagrama DFD de Nivel 2 Generacin de Cuentas por Cobrar...................44 3.10 Diagrama DFD de Nivel 2 Preparar Cuentas a Cobradores......................44 3.11 Diagrama DFD de Nivel 2 Aplicacin de pagos.........................................45 3.12 Diagrama DFD de Nivel 2 Generacin de Facturas ..................................45 3.13 Diagrama entidad Relacin ........................................................................46 3.14 Diseo lgico de la Base de Datos................................................................51 3.15 Esquema de la tabla Clientes ........................................................................54 3.16 Esquema de la tabla Cobradores ..................................................................54 3.17 Esquema de la tabla Contratos .....................................................................55 3.18 Esquema de la tabla Productos.....................................................................55 3.19 Esquema de la tabla Facturas .......................................................................56 CAPTULO IV DESARROLLO DEL SISTEMA 4.1 Diseo de la barra de men ............................................................................59 4.2 Conexin a la Base de Datos a travs de Forms de Oracle............................60 4.3 Asistente para generar formas de tipo bloque.................................................61 4.4 Seleccionando la tabla y campos a manejar en la forma ................................61 4.5 Finalizando asistente de bloque de datos .......................................................62

    iii

  • 4.6 Seleccionando nombre y tipo de canvas del asistente de Layout ...................62 4.7 Seleccionando nombre y tipo de canvas del asistente de Layout ...................63 4.8 Personalizando propiedades de los Items.......................................................63 4.9 Seleccionando el modo de desplegar los datos ..............................................64 4.10 Propiedades de los elementos mostrados en la forma..................................64 4.11 Base de Datos y Formas ...............................................................................65 4.12 Construccin de un bloque de llaves primarias .............................................66 4.13 Construccin del bloque principal (bloque de trabajo)...................................66 4.14 Unin entre bloques.......................................................................................67 4.15 Cdigo del trigger forma WHEN-NEW-ITEM-INSTANCE .............................68 4.16 Diseo de la pantalla .....................................................................................69 4.17 Llamado de reportes a travs de forms .........................................................70 4.18 Componentes de Forms Builder ....................................................................71 4.19 Elementos de datos .......................................................................................72 4.20 Componentes de Runtime.............................................................................73 4.21 Ejecucin de un Trigger.................................................................................74 4.22 Ventana Object Naviator de Reports Oracle 6i..............................................77 4.23 Ventana Data Model de Reports Oracle 6i ....................................................78 4.24 Ventana Layout Model de Reports Oracle 6i.................................................78 4.25 Ventana Runtime Parameter Form de Reports Oracle 6i..............................79 4.26 Ventana Live Previewer de Reports Oracle 6i...............................................79 CAPITULO V PRUEBAS DE DATOS DEL SISTEMA 5.1 Men Sistema..................................................................................................81 5.2 Men Catlogos...............................................................................................82 5.3a Men Cuentas por Cobrar con Cancelaciones..............................................82 5.3b Men Cuentas por Cobrar con Reportes.......................................................83 5.4 Barra de herramientas .....................................................................................83 5.5 Mdulo de Catlogo de Clientes .....................................................................84 5.6 Mdulo de Catlogo de Contratos ...................................................................84 5.7 Mdulo de Catlogo de Cobradores................................................................85 5.8 Mdulo de Catlogo de Productos y Servicios ................................................85 5.9 Forma de llamado al reporte de Clientes.........................................................85 5.10 Forma de Generacin de cuentas por cobrar................................................86 5.11 Reporte de General de Clientes ....................................................................87 5.12 Reporte de facturas pagadas ........................................................................87 5.13 Reporte de cartera vencida ...........................................................................88 5.14 Reporte de facturas cobradas por cobrador ..................................................88 5.15 Reporte general de facturas no pagadas por cliente.....................................89

    iv

  • INTRODUCCIN

    Con la siguiente tesis se pretende realizar un sistema de facturacin que permita el manejo de clientes, facturas, cobradores, productos y servicios, el cual ser desarrollado a travs de una metodologa basada en teora y prctica en bases de datos relacionales e ingeniera de software. La siguiente accin es la de crear el diseo y la implementacin en un manejador de bases de datos de Oracle y desarrollar las interfaces a travs del desarrollador de aplicaciones Developer de Oracle que permite gran flexibilidad para programar y que es adems compatible con la mayora de computadoras que existe en las empresas, el lenguaje se eligi bajo previo estudio y evaluacin de otros productos que son compatibles con bases de datos.

    Una de las razones por la cual se decidi hacer un sistema que pueda llevar el control de facturacin, es porque en la actualidad existe software comercializado que cubre ciertos puntos de los que una empresa necesita pero en la mayora de los casos, el software a la medida se adapta al 100% a las necesidades de una empresa y de esta manera cubrir al mximo los objetivos de la empresa.

    A continuacin se da una abreve introduccin de cada captulo Captulo 1 Marco Terico: Aqu se dan definiciones bsicas para comprender el

    inicio de la creacin de una base de datos, as como tambin los elementos necesarios para poder desarrollar un programa conjuntamente con una base de datos.

    Captulo 2 Sistema manejador de bases de datos oracle: En este captulo se explican

    diferentes caractersticas de la Base de Datos de Oracle, as como tambin las estructuras de datos de las herramientas de desarrollo a utilizar.

    Captulo 3 Anlisis y diseo del sistema: Aqu se dan los detalles de cmo va a

    generarse el sistema de facturacin a travs de diferentes herramientas de diseo de bases de datos e ingeniera de software.

    Captulo 4 Desarrollo del sistema: En este captulo se muestra el modo de

    implementar las herramientas de desarrollo para generar los mens, formas, reportes y el cdigo que los hace funcionar; As como tambin la explicacin del ambiente de las herramientas de desarrollo.

    Captulo 5 Pruebas de datos del sistema: Aqu se muestra el funcionamiento que

    debe de tener el sistema ya implementado a travs de pantallas de todas las formas y reportes que comprende el sistema de facturacin.

    v

  • Captulo 1 Marco terico

    Este captulo trata a cerca de los conceptos bsicos a cerca de las bases de datos, as como sus fundamentos y trminos, con el propsito de empezar a entender mejor los requerimientos necesarios para comenzar a crear el sistema de facturacin.

    1.1 Conceptos de Bases de Datos Definiciones

    Un sistema de bases de datos no es ms que un sistema para archivar en una computadora, es decir, es un lugar donde se almacena un conjunto de archivos de datos computarizados [DaC01]. Al usuario del sistema se le brindarn recursos para realizar diversas operaciones sobre estos archivos, incluidas entre otras las siguientes: Agregar archivos nuevos (vacos) a la base de datos; insertar datos nuevos en archivos ya existentes; obtener datos nuevos en archivos ya existentes; actualizar archivos ya existentes; borrar datos en archivos ya existentes y eliminar archivos ya existentes. Tablas, Campos y Registros

    Las tablas son el ncleo de la informacin de una base de datos, en ella se almacena todos los datos importantes del usuario que estarn disponibles para cualquier accin antes definida. Las tablas tienen su manera de organizar dicha informacin a travs de los Campos y Registros.

    Los campos definen el tipo de informacin a ser almacenada, en trminos sencillos, stos nos indican la clase de dato a ser insertado, como por ejemplo en el campo nombre nicamente sern almacenados los datos de nombre, en el campo cdigo postal nicamente sern almacenados los cdigos postales de dichas personas o empresas y no ser almacenado ningn otro tipo de dato.

    Los registros son un conjunto de campos que nos definen la informacin de un tipo de dato, como por ejemplo el conjunto de campos: nombre, apellido, direccin y cdigo postal nos pueden definir la informacin a cerca de un cliente, amigo, empleado, etc. A continuacin se muestra una tabla de ejemplo, mostrando lo que es un campo y lo que es un registro figura 1.1:

    1

  • CAMPOS

    Nombre Apellidos Direccin Telfono C. P. Pancho Pantera Av. Del Chocolate No.3 2569847 72450

    Ral Salinas Cda. Almoloya 2 3115588 72365 Antonio Tigre Av. Keloggs #33 2336655 72000

    REGISTROS

    Figura 1.1 Representacin de una tabla, mostrando sus campos y registros

    1.1.1 Caractersticas

    Se muestran a continuacin los cuatro componentes principales de un sistema de bases de datos: la informacin, el equipo, los programas y los usuarios [DaC01].

    La informacin: Es el propsito y la razn existencial de todo sistema de bases de datos, pueden ser de cualquier tipo e ndole, la cual puede ser mejor administrada gracias a la computadora y sus sistemas. Dicha informacin define el tipo de sistema a utilizar, pueden ser muy pequeos hasta grandes y complejos, dependiendo de la finalidad de la aplicacin de esos datos. Los sistemas pequeos suelen servir para un solo usuario, mientras que los sistemas grandes generalmente son multiusuario; en un sistema multiusuario, varios usuarios pueden tener acceso a la base de datos mientras que en uno pequeo, un solo usuario puede tener dicho acceso.

    El equipo: Gracias al desarrollo rpido y creciente de la tecnologa podemos contar en la actualidad con equipos suficientemente capaces de llevar a cabo la tarea de ejecutar un sistema de bases de datos confiablemente, a un costo relativamente bajo a comparacin de las dcadas anteriores. Las caractersticas del equipo de cmputo dependen de las caractersticas necesarias que el sistema de bases de datos requiera en velocidad del procesador, memoria RAM, velocidad de acceso a datos y capacidad en unidades de almacenamiento como discos duros y si es necesario, una unidad de respaldo.

    Los programas: Se entiende por programa todo aquel que pueda realizar alguna tarea especfica dentro de la computadora, sirviendo como intermediario entre la computadora y el usuario para realizar un propsito determinado. El sistema de bases de datos en s es un programa, pero existen otros subprogramas que interactan entre dicho sistema y la computadora, con la finalidad de distanciar un poco a los usuarios de detalles a nivel equipo, es decir que esos subprogramas pueden encargarse de esas tareas a nivel

    . equipo

    El usuario: Se encargue bsicamente de actividades propias de la administracin o manejo de un sistema de bases de datos. Un ejemplo de esos subprogramas es el Sistema de Administracin de Base de Datos o tambin llamado DBMS (Database Management system). El DBMS maneja todas las solicitudes de acceso a la base de datos hechas por los usuarios, como se vio en el concepto de datos anterior, son las acciones de agregar, consultar, modificar y eliminar

    2 de base

    archivos de un sistema de bases de datos.

  • 1.1.2 Ventajas Los sistemas de bases de datos nos permiten automatizar diferentes reas de trabajo

    en donde se manejan grandes cantidades de productos o servicios y stos requieren de una administracin adecuada, las bases de datos nos ayudan a encontrar las caractersticas de dicho producto, hacer un control de inventario, hacer una lista de material faltante para compras, generar listas de cuentas por cobrar, etc. (slo por nombrar algunas ventajas), de hecho, la mayora de las empresas emplean ya el uso de una base de datos para mejorar su desarrollo.

    1.1.3 El Sistema de Administracin de Bases de Datos (DBMS) El sistema de administracin de la base de datos es un conjunto de programas que

    maneja todo acceso a la base de datos. Conceptualmente, lo que sucede es lo siguiente: 1. Un usuario solicita acceso, empleando algn sublenguaje de datos determinado (Por

    ejemplo, SQL). 2. El DBMS interpreta esa solicitud y la analiza. 3. El DBMS inspecciona, en orden, el esquema externo de ese usuario, la

    correspondencia externa / conceptual asociada, el esquema conceptual, la correspondencia conceptual / interna y la definicin de la estructura de almacenamiento.

    4. El DBMS ejecuta las operaciones necesarias sobre la base de datos almacenada.

    1.1.3.1 Funciones del DBMS[DaC01] Definicin de datos: El DBMS debe de incluir componentes procesadores de

    lenguajes para cada uno de los diversos lenguajes de definicin de datos (DDL). As tambin el DBMS debe entender las definiciones DDL, es decir, que entiende que un registro externo contiene un campo; y debe poder utilizar estos conocimientos para interpretar y responder las solicitudes de los usuarios

    Manipulacin de datos: El DBMS debe ser capaz de atender las solicitudes del

    usuario para extraer, y quiz poner al da, datos que ya existen en la base de datos, o para agregar en ella datos nuevos.

    Seguridad e integridad de datos: El DBMS debe supervisar las solicitudes de los

    usuarios y rechazar los intentos de violar las medidas de seguridad e integridad definidas por el administrador de bases de datos

    Recuperacin y concurrencia de datos: El DBMS -o algn software asociado con l-

    debe cuidar del cumplimiento de ciertos controles de recuperacin y concurrencia.

    Diccionario de datos: El DBMS debe de incluir una funcin de diccionario de datos. El contenido del diccionario puede considerarse como Datos a cerca de datos, es decir, definiciones de otros objetos en el sistema y no slo datos en bruto. Deber ser posible consultar el diccionario igual que cualquier otra base de datos de modo que se pueda saber, por ejemplo, cules programas o usuarios podran verse afectados por alguna modificacin propuesta para el sistema.

    3

  • Desempeo: El DBMS deber ejecutar todas las funciones recin identificadas en la

    forma ms eficiente posible

    1.1.3.2 Modelo Entidad Relacin [KoH+94] / [HaI94] Es un conjunto de tcnicas del tipo grfico que permite construir modelo de datos. Implica:

    Identificar los asuntos de importancia dentro de una organizacin (Entidades). Las propiedades de esos asuntos (Atributos). Cmo se relacionan entre s? (Relacin).

    Describiendo los puntos antes mencionados tenemos: Entidad: Es una cosa o un objeto con significado, real o imaginario, acerca de las necesidades de informacin que se van a conocer o mantener. El nombre de la entidad debe ser el que representa un tipo o clase de elementos. En particular tenemos dos tipos de entidades:

    Entidad particular: Algo del mundo real que tiene existencia independiente. Entidad: Descripcin de un conjunto de entidades particulares que comparten la

    misma estructura. Atributo: Son caractersticas que califican, cualifican, clasifican o cuantifican a las ocurrencias de una entidad.

    Tipos de atributos: o Simples: no se pueden descomponer, describen un solo valor. o Compuestos: se descomponen en varios atributos. o Monovaluados: para cada entidad solo hay un atributo. o Multivaluados: para cada entidad hay varios atributos. o Derivados: su valor se puede deducir de algun atributo almacenado. o Clave: tienen un valor diferente para cada entidad particular.

    Relacin: Son asociaciones entre dos entidades. Los tipos de relacin se da por una caracterstica: La Cardinalidad

    Cardinalidad La cardinalidad expresa el nmero de ocurrencias asociadas o implicadas en una relacin. o RELACION UNO A VARIOS. Este Tipo de relacin es la ms frecuente en

    las bases de datos relacionales. En una relacin de este tipo, un registro de la tabla A puede tener ms de un registro coincidente en la tabla B, pero un registro de la tabla B no puede tener ms de un registro coincidente en la tabla A. Por ejemplo, en una empresa un proveedor puede suministrar ms de un producto, pero un producto slo tiene un proveedor.

    o RELACION UNO A UNO.- En una relacin uno a uno, un registro de la tabla A no puede tener ms de un registro coincidente en la tabla B, y un registro de la tabla B no puede tener ms de un registro coincidente en la tabla A.

    4

  • o RELACION VARIOS A VARIOS.

    En una relacin varios a varios, un registro de la tabla A puede tener varios registros coincidentes en la tabla B, y a su vez un registro de la tabla B ouede tener varios registros coincidentes en la tabla A

    En la figura 1.2 se muestra la aplicacin del modelo Entidad - Relaci

    Figura 1.2 Ejemplo de un diagrama Entidad - Relacin

    1.1.3.3 Normalizacin Uno de los pasos ms importantes en el diseo de una base de datos consiste en

    asegurarse de que los datos se distribuyan correctamente entre las tablas. Si las estructuras de datos son correctas, el resto de la aplicacin (las consultas, los formularios, los informes, el cdigo, etc.) se ver simplificada en gran medida. El nombre formal que recibe el diseo apropiado de una tabla es del de normalizacin de bases de datos; las reglas de Normalizacin estn encaminadas a eliminar redundancias e inconsistencias de dependencia en el diseo de las tablas [BrM+84].

    La normalizacin es un proceso que pone las cosas en su sitio, hacindolas

    normales. El origen de esta palabra viene del latn norma, que era una "escuadra de carpintero" para conseguir el ngulo correcto. En geometra, cuando una lnea est en ngulo recto con otra se dice que estn en un ngulo "normal". En una base de datos, el trmino tambin tiene un significado matemtico especfico, realizando una separacin de elementos de datos (tales como nombres, direcciones u oficios) en grupos afines y definiendo las relaciones normales o "correctas" entre ellos.

    5

  • La normalizacin es una tcnica eficaz para el diseo de bases de datos que puede aplicarse tanto a sistemas relacinales como a otros modelos. Con la tcnica de la normalizacin se trata de evitar la dependencia entre inserciones, actualizaciones y borrado de elementos de las tablas de la base de datos. Tambin se reducen las operaciones de reorganizacin cuando hay que incorporar nuevos datos [PeC03].

    Se tienen como referencia cinco pasos para lograr la normalizacin: Nivel 0: Cuando ninguna de las reglas de normalizacin se ha aplicado a nuestras

    tablas Nivel 1: Comprende de los siguientes pasos:

    1. Eliminar los grupos repetitivos de la tablas individuales. 2. Crear una tabla separada por cada grupo de datos relacionados. 3. Identificar cada grupo de datos relacionados con una clave primaria.

    Nivel 2: Comprende de los siguientes pasos: 1. Crear tablas separadas para aquellos grupos de datos que se aplican a varios

    registros. 2. Relacionar estas tablas mediante una clave externa..

    Nivel 3: Eliminar aquellos campos que no dependan de la clave. Nivel 4: En las relaciones varios-con-varios, entidades independientes no pueden ser

    almacenadas en la misma tabla. Existe otro nivel de normalizacin que se aplica a veces, pero es de hecho algo esotrico y en la mayora de los casos no es necesario para obtener la mejor funcionalidad de nuestra estructura de datos o aplicacin. Su principio sugiere:

    Nivel 5: La tabla original debe ser reconstruida desde las tablas resultantes en las cuales a sido troceada.

    1.2 El modelo cliente - servidor.[ DaC91] / [OrR98]

    La arquitectura cliente-servidor permite al usuario en una mquina, llamado el cliente, requerir algn tipo de servicio de una mquina a la que est unido, llamado el servidor, mediante una red como una LAN (Red de Area Local) o una WAN (Red de Area Mundial). Estos servicios pueden ser peticiones de datos de una base de datos, de informacin contenida en archivos o los archivos en s mismos o peticiones de imprimir datos en una impresora asociada. Aunque clientes y servidores suelen verse como mquinas separadas, pueden, de hecho, ser dos reas separadas en la misma mquina. Por tanto, una nica mquina Unix puede ser al mismo tiempo cliente y servidor. Adems una mquina cliente unida a un servidor puede ser a su vez servidor de otro cliente y el servidor puede ser un cliente de otro servidor en la red. Tambin es posible tener el cliente corriendo en un sistema operativo y el servidor en otro distinto.

    Hay varios tipos comunes de mquinas clientes en entornos cliente-servidor. Uno de los clientes ms populares es una computadora personal basada en Intel que ejecuta aplicaciones de DOS en un entorno Windows. Otra cliente popular es una terminal X; de

    6

  • hecho, el sistema X Windows es un modelo cliente-servidor clsico. Hay tambin clientes Unix que ejecutan sistemas operativos como UnixWare. Un servidor que pide cosas a otro servidor es un cliente de la mquina a la que est pidiendo. Sin considerar el tipo de cliente que se est usando en una red cliente-servidor, se realizando al menos una de las funciones bsicas descritas aqu como funciones del cliente. En la figura 1.3 se muestra a detalle el Modelo Cliente Servidor

    Figura 1.3 Modelo Cliente - Servidor

    1.2.1 Arquitectura cliente servidor.

    Funciones del cliente: Los clientes en una red cliente-servidor son las mquinas o procesos que piden informacin, recursos y servicios a un servidor unido. Estas peticiones pueden ser cosas como proporcionar datos de una base de datos, aplicaciones, partes de archivos o archivos completos a la mquina cliente. Los datos, aplicaciones o archivos pueden residir en un servidor y ser simplemente accedidos por el cliente o pueden ser copiados o movidos fsicamente a la mquina cliente. Esta disposicin permite a la mquina cliente ser relativamente pequea. Para cada tipo de entorno de cliente, hay habitualmente software especfico (y a veces hardware) en el cliente, con algn software y hardware anlogo en el servidor.

    Funciones generales de un servidor: Los servidores en una red cliente-servidor son los procesos que proporcionan informacin recursos y servicios a los clientes de la red. Cuando un cliente pide un recurso como, por ejemplo, un archivo, datos de una base de datos, acceso a aplicaciones remotas o impresin centralizada, el servidor proporciona estos recursos al cliente. Los procesos del servidor pueden residir en una mquina que tambin acta como cliente de otro servidor. Adems de proporcionar este tipo de recursos, un

    7

  • servidor puede dar acceso a otras redes, actuando como un servidor de comunicaciones que conecta a otros servidores o mainframes o minicomputadoras que actuan como hosts de la red [MoP96].

    En el entorno de los mainframes, todas las solicitudes de informacin y las tareas de programacin pasan a travs del departamento de informtica. Ellos determinan si la informacin est disponible, cmo extraerla de la base de datos, y darle un formato para el ejecutivo o vendedor. Cuando se solicita un cambio de programacin o una nueva aplicacin, ha de realizarse un anlisis costo/beneficio antes de aprobar o rechazar la peticin. Mientras tanto, el usuario que solicit la informacin o el cambio puede haberse jubilado o cambiado de trabajo. Con la capacidad de consultar una base de datos SQL Server usando conexiones ODBC el usuario puede obtener rpidamente la informacin que necesita para su trabajo, siempre que se tengan los permisos de acceso necesarios.

    Con la llegada de la PC (Personal Computer, Computadora Personal) y poco despus de la LAN (Local Area Network, Red de rea Local), un usuario puede trabajar con la informacin en bruto como nunca antes. En lugar de esperar un informe trascendental durante una semana, el usuario puede realizar un anlisis en su propio equipo.

    Hasta ahora, los sistemas cliente-servidor han sido el mtodo empleado para saltar gran parte del vaco entre la computadora central y los sistemas basados en PC/LAN. sta ha sido una forma efectiva de distribuir la potencia de procesamiento necesaria entre el usuario y el personal de departamento de informtica. El personal del departamento de informtica puede mantener la base de datos en su propio servidor, con la adecuada copia de seguridad. Los usuarios tienen acceso a la informacin necesaria contenida en la base de datos y pueden procesar sus propias consultas e informes. Este modelo tambin permite la aplicacin de reglas de negocio a la base de datos, asegurando que la informacin introducida en la misma cumpla las restricciones de coherencia necesarias, antes de permitir que se le apliquen cambios o aadidos [ByJ01].

    1.3 Mecanismos de conectividad en las Bases de Datos

    Cuando una aplicacin es desarrollada y se requiera que interacte con una base de datos, es necesario utilizar un programa intermediario que realice las transacciones de informacin entre la aplicacin y la base de datos, slo hablaremos de dos tipos de conectividades comunes, una es desarrollada para aplicaciones Microsoft llanada ODBC y otra para el lenguaje multiplataforma Java llama JDBC

    ODBC (Open Database Connectivity) es un programa de interface de aplicaciones (API) para acceder a datos en sistemas manejadores de bases de datos tanto relacionales como no relacional, utilizando para ello SQL (lenguaje de consulta estructurado).

    8

  • JDBC (Java Database Connection) crea un interfaz a nivel de programacin para comunicarnos con las bases de datos en una forma uniforme similar al concepto ODBC de Microsoft, el cual es un estndar para computadoras personales y LAN's.

    1.4 Lenguajes de programacin orientados a objetos

    Existen muchos lenguajes diferentes que pueden ser usados para programar una computadora. El ms elemental de ellos es el lenguaje mquina, coleccin de instrucciones muy detalladas y crpticas que controlan la circuitera interna de la computadora. Este es el dialecto natural de la computadora. No obstante, muy pocos programas se escriben realmente en lenguaje mquina, y ello por dos significativas razones: primero, porque el lenguaje mquina es muy incmodo de usar y, segundo, porque la mayora de las computadoras tienen sus propios repertorios de instrucciones, y ello hace que un programa escrito en lenguaje mquina para un tipo de computadora no pueda ser ejecutado en otro tipo de computadora sin alteraciones sustanciales[ByS98].

    Generalmente, un programa se escribe en algn lenguaje de alto nivel, cuyo repertorio de instrucciones es ms compatible con los lenguajes humanos y los procesos humanos de pensamiento. Casi todos los lenguajes de alto nivel son lenguajes de propsito general, como el Pascal. (Otros lenguajes de propsito general ordinariamente empleados son Pascal, C, C++, Java. Etc.) Existen tambin algunos lenguajes de alto nivel y de propsito especial, cuyos repertorios de instrucciones han sido diseados especficamente para algn tipo particular de aplicacin.

    Por regla general, una sola instruccin en un lenguaje de alto nivel ser equivalente a varias instrucciones en lenguaje mquina. Adems, un programa escrito en lenguaje de alto nivel puede ejecutarse generalmente en muchas computadoras diferentes con poca o ninguna modificacin. Por ello el uso de un lenguaje de alto nivel nos ofrece ventajas muy significativas frente al uso del lenguaje mquina, principalmente simplicidad, uniformidad y portabilidad (es decir, independencia de la mquina) [ByS98].

    Dentro de los lenguajes de alto nivel se cuenta con los lenguajes de programacin visual, su caracterstica primordial radica en que, utilizan herramientas adicionales propias de un sistema operativo visual, como por ejemplo, se cuenta con la utilizacin de ventanas, cuadros de texto, botones, etc. que son programados previamente por los desarrolladores del lenguaje visual, el programador nicamente debe preocuparse por la manipulacin y programacin de dichos controles.

    Por otro lado, existen lenguajes de programacin que su finalidad est enfocada en la Web, existen diversos lenguajes de alto nivel de este tipo, entre ellos estn Java, Java Script, CGI, Perl, entre otros. Estos lenguajes pertenecen a diferentes tendencias de programacin como se explicar mas adelante.

    9

  • Para la interfaz del sistema de facturacin se pretende utilizar el lenguaje de programacin visual llamado Visual Basic, que tiene la facilidad de crear aplicaciones rpidamente y facilidad de interactuar con bases de datos de SQL Server.

    Existen dos paradigmas dentro de los lenguajes de programacin y son las siguientes:

    Estructurados Orientado a objetos

    Para tener una idea fundamental de lo que es la tecnologa orientada a objetos comenzaremos a definir lo que es un objeto: El termino objeto surgi casi independientemente en varios campos de la informtica, simultneamente a principios de los sesenta, para referirse a nociones que eran diferentes en su apariencia, pero relacionados entre s. Todas estas nociones se inventaron para manejar la complejidad de sistemas software de tal forma que los objetos representaban componentes de un sistema descompuesto modularmente o bien unidades modulares de representacin del conocimiento; Un objeto puede estar compuesto por otros objetos, estos ltimos a su vez, pueden estar compuestos de objetos, del mismo modo que una maquina esta formada por partes y estas, tambin, estn formadas por otras partes. Esta estructura intrincada de los objetos permite definir objetos muy complejos.

    Las tcnicas orientadas objetos permiten que el software se construya a partir de objetos de comportamiento especfico. En el modelo de objetos es necesario estudiar los principios fundamentales en los que se basa el anlisis orientado a objetos [JaM97] / [BrE91]:

    Objeto Polimorfismo Clase Herencia Mensaje Mtodo Identidad Reutilizacin Abstraccin Encapsulacin Modularidad Jerarqua Concurrencia

    Haremos un anlisis individual relativo a la teora de los objetos:

    OBJETO: El objeto es un concepto, una abstraccin o una cosa con unos limites definidos y que es relevante para el tema en cuestin, podemos decir adems que estos poseen identidad y son distinguibles, aunque dos objetos tengan los mismos valores para

    10

  • todos, sus atributos son diferentes. Para finalizar diremos que se llamara objeto a cualquier cosa real o abstracta, en la cual podemos almacenar datos y los mtodos para controlar dichos datos.

    POLIMORFISMO: El polimorfismo se define como la posibilidad de asumir varias formas. El polimorfismo permite que una misma operacin pueda llevarse a cabo de varias formas, en clases diferentes. Desde este punto de vista, representa un concepto de teora de tipos en el que un solo nombre puede denotar objetos de muchas clases diferentes que se relacionan por alguna superclase comn. Cualquier objeto denotado por este nombre es, por lo tanto, capas de responder a algn conjunto comn de operaciones. Una operacin es una accin o transformacin que realiza o padece un objeto. La implementacin especfica de una operacin determinada a una clase determinada se denomina mtodo. Aunque los mtodos sean distintos, llevan a cabo el mismo propsito operativo, y as estaramos hablando tambin, de polimorfismo.

    Una operacin es una abstraccin de un comportamiento similar (pero no idntico) en diferentes clases de objetos. La semntica de la operacin debe ser la misma para todas las clases. Sin embargo, cada mtodo concreto seguir unos pasos especficos. Existe el polimorfismo cuando interactan las caractersticas de la herencia y el enlace dinmico. Esta es quizs la caracterstica ms importante de los lenguajes orientados a objetos despus de su capacidad para soportar la abstraccin y es lo que distingue la programacin orientada a objetos de otra programacin ms tradicional con tipos abstractos de datos. El polimorfismo es tambin un concepto central en el diseo orientado a objetos. Una de las ventajas del polimorfismo es que se puede hacer una solicitud de una operacin sin conocer el mtodo que debe ser llamado.

    CLASE: El termino clase se refiere a la implantacin en software de un tipo de objeto. Especifica una estructura de datos y los mtodos operativos permisibles que se aplican a cada uno de los objetos. Una clase puede tener sus propios mtodos y estructura de datos, as como tambin heredarlos de su superclase. La superclase es la clase de la cual hereda otra clase, llamada esta ultima subclase inmediata.

    Una clase es una abstraccin de un conjunto posiblemente infinito de objetos individuales. Cada uno de estos objetos se dice que es una instancia o ejemplar de dicha clase. Cada instancia de una clase posee sus propios valores para sus atributos, pero comparte el nombre de estos atributos y las operaciones con el resto de instancias de su clase. La eleccin de clases es arbitraria, y depende del dominio del problema.

    La industria utiliza el trmino clase para hacer referencia a las implantaciones de los tipos de objetos. Se construyen clases a partir de otras clases, las cuales a su vez se integran mediante clases. As, como los bienes manufacturados se fabrican a partir de una serie de materiales de partes y subpartes ya existentes, tambin el software se crea mediante una serie de materiales de clases ya existentes y probadas.

    HERENCIA: El concepto de herencia se refiere a la comparicin de atributos y operaciones basadas en una relacin jerrquica entre varias clases. Una clase pude definirse de forma general y luego redefinirse en sucesivas subclases. Cada clase hereda

    11

  • todas las propiedades de sus superclases y aade sus propiedades particulares. La herencia es el medio por el cual los objetos de una clase pueden acceder a variables y funciones miembro contenidas en una clase previamente definida, sin tener que volver a realizar esas definiciones.

    HERENCIA SIMPLE: La herencia simple es aquella en la que una clase puede heredar la estructura de datos y operaciones de una superclase. Es una relacin entre clases en la que una clase comparte la estructura y/o el comportamiento definido en una.

    HERENCIA MLTIPLE: La herencia mltiple se da cuando una clase puede heredar la estructura de datos y operaciones de ms de una superclase. Es la relacin entre clases en la que una clase comparte la estructura dems de una clase base. La herencia mltiple presenta una gran dificultad y es el hecho que puede heredar dos operaciones con el mismo nombre. Esto hace que las colisiones pueden introducir ambigedad en el comportamiento de la subclase que hereda en forma mltiple.

    MENSAJE: Para que el objeto haga algo enviamos, una solicitud. Esta ha ce que se produzca una operacin. La operacin ejecuta el mtodo apropiado y, de, manera opcional, produce una respuesta. El mensaje que constituye la solicitud contiene el nombre del objeto, el nombre de una operacin, a veces, un grupo de parmetros. Un mensaje es una solicitud para que se lleve a cabo la operacin indicada y se produzca el resultado. En pocas palabras los mensajes son solicitudes, que invocan operaciones especficas, con uno o ms objetos como parmetros. La respuesta a estas rdenes ser la informacin requerida, siempre que el objeto considere que quien enva el mensaje esta autorizado para obtenerla

    MTODO: El mtodo es la especificacin de un proceso de una operacin, es un proceso disciplinado para generar un conjunto de modelo que describen varios aspectos de un sistema de software en desarrollo, utilizando alguna notacin bien definida. Los mtodos especifican la forma en que se controlan los datos de un objeto. Los mtodos en un tipo de objeto solo hacen referencia a las estructuras de datos de ese tipo de objeto. No deben tener acceso directo a las estructuras de datos de otros de objeto. Para utilizar la estructura de datos de otro objeto, debe enviar un mensaje a este. El tipo de objeto empaca junto los tipos de datos y los mtodos.

    IDENTIDAD: La identidad es aquella propiedad de un objeto que los distingue de todos los dems objetos. La identidad nica (pero no necesariamente el nombre) de cada objeto se preserva durante el tiempo de vida del mismo, incluso cuando su estado cambia. La identidad es la naturaleza de un objeto que lo distingue de todos los dems.

    REUTILIZACIN: Es volver a generar una clase, teniendo en cuenta que puede ser til para varios sistemas, sin tener que volver a generarlos, ahorrando con esto tiempo para programacin, etc. Las clases estn definidas para que se reutilicen en muchos sistemas. Para que esta sea efectiva, las clases se deben construir a partir de un modo que puedan ser adaptables y reutilizables indefinidamente. Un objetivo de las tcnicas orientadas a objetos es lograr la reutilizacin masiva al construir un software. Los sistemas suelen ser construidos a travs de objetos ya existentes, que se lleva a un alto grado de reutilizacin, esto conlleva a un ahorro de dinero, un menor tiempo de desarrollo y una mayor

    12

  • confiabilidad de sistemas. Por lo tanto si ya es puesto a prueba una clase en un sistema, tendr la garanta y la confiabilidad que podr volver a ser reutilizada.

    ABSTRACCIN: Una abstraccin denota las caractersticas esenciales de un objeto que lo distinguen de todos los dems tipos de objetos, y proporciona as fronteras conceptuales definidas con nitidez, desde la perspectiva del observador. Todo objeto es nico. Sin embrago, la abstraccin elimina algunas distinciones para que podamos ver los aspectos comunes entre los objetos. La abstraccin es una de las vas fundamentales por la que los humanos podamos combatir la complejidad. Una abstraccin se centra en la visin externa de un objeto, y por lo tanto, sirve para separar el comportamiento esencial de un objeto de su implantacin.

    Sin la abstraccin solo sabramos que cada objeto es diferente de los dems, con ella se omiten de manera selectiva varias caractersticas distintivas de uno o ms objetos, lo que permite concentrarnos en las caractersticas que comparten. Para hacerlo ms entendible, diremos que la abstraccin es el acto o resultado de eliminar diferencias entre los objetos, de modo que podamos ver los aspectos ms comunes.

    ENCAPSULAIN: El encapsulamiento es el proceso de compartimentar los elementos de una abstraccin que constituyen su estructura y su compartimiento. Sirve para separar el interfaz contractual de una abstraccin y su implantacin. Como hemos visto, cada objeto es una estructura compleja en cuyo interior hay datos y programas, todos ellos relacionados entre s, como si estuvieran encerrados conjuntamente en una cpsula. Esta propiedad se denomina encapsulamiento y es una de las caractersticas fundamentales en la programacin orientada a objetos, y la podemos definir como el proceso de almacenar en un mismo compartimiento los elementos de una abstraccin que constituyen su estructura y su comportamiento; sirve para separar la interfaz contractual de una abstraccin y su implantacin. El hecho de cada objeto sea una cpsula facilita enormemente que un objeto determinado pueda ser transportado a otro punto de la organizacin, o incluso a otra organizacin totalmente diferente que precise de el. Si el objeto ha sido bien construido, sus mtodos seguirn funcionando en el nuevo entorno sin problemas. Esta cualidad hace que la programacin orientada a objetos sea muy apta para la reutilizacin de programas.

    El encapsulamiento es importante porque separa el comportamiento del objeto de su implantacin. Esto permite la modificacin de la implantacin del objeto sin que se tengan que modificar las aplicaciones que lo utilizan.

    MODULARIDAD: La modularidad es la propiedad que posee un sistema que ha sido descompuesto en un conjunto de mdulos cohesivos y dbilmente acoplados. Para esto se debe hacer lo posible por construir mdulos cohesivos (agrupando abstracciones que guarden cierta relacin lgica) y dbilmente acoplados (minimizando las dependencias entre mdulos). Segn Liskov, un especialista en la materia, la modularizacin consiste en dividir un programa en mdulos que pueden compilarse separadamente, pero que tiene conexiones con otros mdulos. As los principios de abstraccin, encapsulamiento y modularidad son sinrgicos. Si bien es cierto la abstraccin es algo bueno, pero excepto en las aplicaciones ms triviales, puede haber muchas ms abstracciones diferentes de las que se pueden comprender simultneamente. El encapsulamiento ayuda a manejar esta

    13

  • complejidad ocultando la visin interna de las abstracciones. La modularidad tambin ayuda, ofreciendo una va para agrupar abstracciones relacionadas lgicamente. Esto sigue sin ser suficiente, frecuentemente un conjunto de abstracciones forma una jerarqua, y la identificacin de esas jerarquas en el diseo simplifica en gran medida la comprensin del problema.

    JERARQUA: La jerarqua es una clasificacin u ordenacin de abstracciones. Las dos jerarquas ms importantes en un sistema complejo son su estructura de clases y su estructura de objetos, jerarqua de clase y jerarqua de partes correspondientemente. La herencia es el ejemplo mas claro de una jerarqua de clases, esta define una relacin entre clases, en la que una clase comparte la estructura de comportamiento definida en una o ms clases (herencia simple o herencia mltiple, respectivamente).

    Los sistemas jerrquicos estn compuestos usualmente de solo unas pocas clases diferentes de subsistemas en varias combinaciones y disposiciones.

    CONCURRENCIA: La concurrencia es la propiedad que distingue a un objeto activo de uno que no esta activo. Para cierto tipo de problemas, un sistema automatizado puede tener que manejar muchos eventos diferentes simultneamente, en otro problema pueden implicar tantos clculos que excedan la capacidad de cualquier procesador individual. En ambos casos es natural considerar el uso de un conjunto distribuido de computadores para la implantacin que se persigue o utilizar procesadores capaces de realizar multitareas, a travs de un hilo de control, mediante la cual se producen acciones dinmicas independientes dentro del sistema. La concurrencia permite a diferentes objetos actuar al mismo tiempo

    14

  • Captulo 2 Sistema Manejador de Bases de Datos ORACLE

    El servidor de Oracle es un sistema manejador de bases de datos relacional que ofrece una integracin aproximada al manejo de informacin. Un servidor Oracle consiste de una base de datos Oracle y un servidor de instancias Oracle. 2.1 Arquitectura

    Para entender la arquitectura de oracle es necesario entender y considerar dos

    conceptos: Bases de Datos e Instancias. 2.1.1 Bases de Datos

    Oracle tiene la habilidad de almacenar y acceder informacin de una manera coherente con un modelo definido y conocido como el modelo relacional. Por ello, oralce es refererido como un sistema manejador de base de datos relacional (RDBMS, siglas en ingls Relational DataBase Management System). Cuando hablamos de una base de datos no slo nos estamos refiriendo a los datos fsicos, sino tambin a la combinacin de objetos fsicos, de memoria y de proceso [LoK02]. La informacin en una base de datos es almacenada en tablas. Las tablas relacionales se definen por sus columnas y se les asigna un nombre. Los datos se almacenan como filas en la tabla. Las tablas pueden relacionarse entre s y la base de datos puede utilizarse para hacer que se apliquen esas relaciones. Adems de almacenar datos en formato relacional , oracle (a partir de la versin 8) soporta estructuras orientadas a objetos, como tipos de datos abstractos y mtodos. Los objetos pueden relacionar a otros objetos, y contener otros objetos. De cualquier estructura utilizada, ya sea relacional u orientada a objetos, oracle almacena la informacin en archivos. Internamente, existen estructuras de bases de datos que se encargan de la correspondencia lgica entre la informacin y los archivos, alojando diferentes tipos de datos para ser almacenados separadamente. Estas divisiones lgicas son llamadas Espacios de Tablas (en ingls llamadas: Tablespaces). 2.1.2 Espacios de tablas Un espacio de tabla es una divisin lgica de una base de datos. Cada base de datos tiene por lo menos un espacio de tabla (llamado espacio de tabla SYSTEM). Se pueden utilizar otros espacios de tablas para agrupar a los usuarios o aplicaciones con el fin de facilitar el mantenimiento y mejorar el rendimiento. Ejemplos de estos tipos de espacios tabla seran USERS, de propsito general y UNDO para segmentos para deshacer cambios (que ser descrito ms adelante). Un espacio de tabla puede pertenecer nicamente a una base de datos[LoK02].

    15

  • 2.1.3 Archivos de datos Cada espacio de tablas esta constituido por uno o mas archivos, llamados archivos de datos, que se almacenan en disco. Un archivo de datos puede pertenecer a uno y nicamente a un espacio de tabla. El tamao de los archivos de datos se puede modificar despus de su creacin. Crear un nuevo espacio de tabla conlleva a crear un nuevo archivo de datos. Una vez que el archivo de datos ha sido agregado a un espacio de tablas, dicho archivo no puede eliminarse del espacio de tablas, ni puede ser asociado con algn otro espacio de tablas [LoK02]. Si se almacenan objetos de bases de datos en mltiples espacios de tablas, entonces se deben separar fsicamente colocando sus respectivos archivos de datos en discos distintos. Esta separacin de datos es una herramienta importante en la planeacin y optimizacin de la forma en que la base de datos maneja las solicitudes de entrada / salida que recibe. La relacione entre bases de datos, espacios de tabla y archivos de datos se muestran en la sig. Figura 2.1:

    Figura 2.1 Relaciones sobre bases de datos, tablespaces y archivos de datos

    Tablespaces

    Archivos de Datos

    SISTEMA Espacio de tablas

    Segundo Espacio de tablas

    Tercer Espacio de tablas

    2.1.4 Otros archivos

    Los archivos de datos de la base de datos, proporcionan el almacenamiento fsico de los datos de la base de datos. Por tanto, son estructuras tanto internas, por estar ligadas directamente a los espacios de tablas, como externas, por tratarse de archivos fsicos.

    Los siguientes tipos de archivos, aunque estn relacionados con la base de datos, estn separados de los archivos de datos. Entre estos archivos se incluyen los siguientes:

    Los registros de reconstruccin. Los archivos de control. Los archivos de traza y el registro de alertas.

    Los registros de reconstruccin

    Oracle conserva registros de todas las transacciones realizadas en la base de datos. Estas transacciones se registran en archivos denominados archivos de registro de reconstruccin en lnea. Estos archivos de registro de reconstruccin se utilizan para

    16

  • recuperar las transacciones de la base de datos en el orden adecuado, en caso de que se produzca un fallo en la base de datos. La informacin del registro de reconstruccin se almacena de forma independiente de los archivos de datos de la base de datos.

    Los archivos de registro de reconstruccin tambin permiten que Oracle coordine la forma en que se escriben los datos en el disco. Cuando se produce una transaccin en la base de datos, sta se introduce en los buffers del registro de reconstruccin, mientras que los bloques de datos afectados por la transaccin no se escriben de manera inmediata en el disco.

    Todas las bases de datos Oracle tienen tres o ms archivos de registro de recons-truccin en lnea. Oracle escribe en ellos de manera cclica: despus de llenar el primer archivo de registro, escribe en el segundo, hasta llenarlo. Cuando se han llenado todos los archivos de registro de reconstruccin en lnea, vuelve al primero y empieza a sobrescribir su contenido con nuevos datos de transacciones. Si la base de datos se est ejecutando en modo ARCHIVELOG, har una copia de los archivos de registro de reconstruccin en lnea antes de sobrescribirlos. Estos archivos de registros de reconstruccin salvaguardados pueden utilizarse para devolver a cualquier parte de la base de datos al estado en que se encontrara en un determinado momento

    La base de datos puede duplicar en espejo los archivos de registro de reconstruc-cin. Esta operacin permite al DBA duplicar los archivos de registro de reconstruccin sin depender del sistema operativo o de la funcionalidad que ofrezca el hardware del entorno de funcionamiento [LoK02]. Archivos de Control

    La arquitectura fsica global de una base de datos se mantiene por medio de sus archivos de control, en los que se registra la informacin de control referente a todos los archivos de la base de datos. Se utilizan para conservar la coherencia interna y guiar las operaciones de recuperacin.

    Como los archivos de control son fundamentales para la base de datos, se alma-cenan varias copias en lnea. Estos archivos suelen almacenarse en discos separados, con el fin de minimizar el dao potencial derivado de posibles fallos de los discos. La base de datos crear y mantendr los archivos de control que se hubieran especificado en el momento de la creacin de la base de datos.

    Los nombres de los archivos de control de la base de datos se especifican a travs del parmetro de inicializacin CONTROL_FILES. Si se tiene que aadir un nuevo archivo de control a la base de datos, se puede cerrar la instancia, copiar uno de los archivos de control existentes en una nueva ubicacin, aadir la nueva ubicacin a la configuracin del parmetro CONTROL_FILES y reiniciar la instancia. Los archivos de traza y el registro de alertas

    Todos los procesos asociados a una instancia que se ejecutan en segundo plano tienen a su vez un archivo de traza asociado. El archivo de traza contiene informacin relativa a los sucesos significativos con los que se encuentran dichos procesos. Adems

    17

  • de estos archivos, Oracle conserva un archivo llamado registro de alertas. Este registro almacena los comandos y los resultados de los comandos correspondientes a los sucesos ms importantes que ocurren en la vida de la base de datos. Por ejemplo, la creacin de espacios de tablas, el paso de un registro de reconstruccin a otro, las ope-raciones de recuperacin y los inicios de la base de datos se graban en el registro de alertas. El registro de alertas es una fuente de informacin fundamental para la gestin cotidiana de una base de datos. Los archivos de traza son muy tiles para tratar de des-cubrir la causa de un fallo importante [LoK02].

    Las entradas de este registro de alertas informan sobre cualquier problema que haya

    surgido durante las operaciones de la base de datos, como, por ejemplo, cualquier error interno de tipo ORA-0600 que se haya producido. Con el fin de que el registro de alertas resulte ms fcil de usar.

    2.1.5 Instancias Para acceder a la informacin a la base de datos, oracle utiliza un conjunto de procesos en segundo plano que son compartidos por todos los usuarios. Adems, existen estructuras de memoria (Conocidas por todos como SGA) que son utilizadas para almacenar las ltimas consultas hechas a la base de datos. Las secciones ms grandes de la SGA (System Global Area o rea global del sistema), la cach de buffers de bloques de datos, el rea compartida SQL, el rea de bloques de gran tamao y el rea Java, constituyen generalmente ms del 95 por 100 de la memoria asignada a la SGA. Estas reas de memoria ayudan a mejorar el rendimiento de la base de datos, ya que reducen la cantidad de operaciones de entrada /salida sobre los archivos de datos. Una instancia de base de datos (conocida tambin como servidor) es un conjunto de estructuras de memoria y procesos en segundo plano que acceden a un conjunto de archivos de bases de datos. Es posible que mltiples instancias accedan a una nica base de datos (sta es la opcin conocida como Real Application Cluster). La relacin entre instancias y bases de datos se muestran en la figura 2.2 [LoK02]. Los parmetros que determinan el tamao y composicin de una instancia son almacenados en un archivo llamado init.ora o, bien, residen dentro de la base de datos, en un archivo de parmetros de servidor, conocido como SPFILE, el cual est almacenado en spfile.ora.. Este archivo es ledo durante el inicio de la instancia y puede ser modificado por el DBA (Administrador de Bases de Datos, DataBase Administrator). Cualquier modificacin hecha a este archivo no tendr efecto hasta que el siguiente inicio de la instancia. El nombre de un archivo de inicializacin de una instancia usualmente incluye el nombre de la instancia; si la instancia es llamada ORCL, entonces el archivo init.ora usualmente ser llamado initorcl. Oracle crea cada vez ms y ms parmetros dentro de la base de datos que se pueden ajustar dinmicamente. Los cambios de los parmetros pueden continuar en efecto despus de las operaciones sucesivas de apagado e inicio, independientemente del contenido del archivo de parmetros de inicializacin. En Oracle9i, el DBA puede utilizar SPFILE, en lugar del archivo init.ora e introducir cambios, temporales o definitivos, en los parmetros de inicializacin [LoK02].

    18

  • Ins t anciaSGA

    Shared pool

    LibraryCache

    Data DictionaryCache

    DatabaseBuffer Cache

    Redo LogBuffer

    Java Pool Large Pool

    PMON SMON DBWR LGWR CKPT Otros

    Userprocess

    Serverprocess

    PGA

    ParameterFile

    TraceFiles

    Datafi lesControl

    FilesRedo Log

    Files

    Base de Datos

    Figura 2.2 Instancias y bases de datos en Oracle 2.2 Caractersticas Administrativas de Oracle 2.2.1 Instalacin [PeC03]

    Oracle cuenta con una gama de productos entre ellos diferentes versiones de Bases

    de Datos como: Enterprise, Estndar, Estndar Edicin uno y versiones Personal Edicin Enterprise: Ofrece escalabilidad y confiabilidad tanto en configuraciones de

    cluster como en las de sistema nico. Proporciona caractersticas ms extensas para entornos de procesamiento de transacciones en lnea (OLTP) y business intelligence a un precio ms accesible.

    Edicin Estndar: Es una alternativa de bajo costo para la mediana y pequea

    empresa o aplicaciones departamentales que necesitan de las utilidades de Oracle pero no requieren las opciones high end de la versin Enterprise

    Edicin Personal: Una versin de Bases de Datos Oracle con caractersticas

    completas que cumple las necesidades de individuos que requieren de compatibilidad con toda la familia de bases de datos Oracle

    Para este sistema que se desarrollar se ocupar la versin Personal de Oracle ya

    que se cumple con los requerimientos a apropiados, en adelante se hablar de los detalles de la instalacin de la Base de Datos:

    19

  • La instalacin fue echa sobre el sistema operativo XP utilizando la base de datos Oracle 9i que consta de 3 CDs de instalacin, cuando es insertado el primer CD se ejecuta el asistente de instalacin Oracle Universal Installer que permite instalar y configurar la base de datos, inicialmente se obtiene la pgina de bienvenida de este asistente, como lo muestra la imagen 2.3.

    Imagen 2.3 Ventana de inicio del asistente de instalacin

    Una vez iniciado el asistente de instalacin, se procede a desinstalar alguna base de

    datos de Oracle de versin anterior si es que existe, de lo contrario se prosigue con la instalacin, para desinstalar una versin anterior de base de datos Oracle hay que oprimir el botn desinstalar productos o tambin utilizar este botn en caso de modificar puntos en una instalacin de esta versin hecha previamente como lo muestra la imagen 2.4.

    Despus de este paso se configura el lugar donde sern almacenados fsicamente la

    base de datos en el disco duro tomando en cuenta tambin el directorio de donde se estn tomando los archivos de instalacin. Para el destino de los archivos se da un nombre de la variable de entorno ORACLE_HOME y su directorio raz.

    El paso siguiente consiste en seleccionar uno de tres posibles productos que son :

    Base de datos Oracle 9i, que instala una base de datos inicial opcional ya preconfigurada, las herramientas de gestin, servicios de red, utilidades y software bsico de cliente para un servidor de base de datos Oracle.

    Administrador e integrador Oracle 9i, que instala el servidor de administracin, las herramientas de administracin, el directorio de Internet de Oracle, el servidor de integracin Oracle, servicios de red, utilidades y software bsico del cliente.

    Cliente Oracle 9i, instala las herramientas de administracin Enterprise, los servicios de red, utilidades, herramientas de desarrollo, los precompiladotes y el software bsico del cliente

    20

  • Para el desarrollo del sistema de facturacin se requiere de la primera opcin como lo muestra la imagen 2.5.

    Imagen 2.4 Configuracin para desinstalar productos

    En el siguiente paso se selecciona el tipo de instalacin que se pueden elegir las

    siguientes opciones: Enterprse Edition, que proporciona gestin de datos para aplicaciones de

    nivel superior como, por ejemplo, entornos de procesamiento de transacciones en lnea (OLTP) de alto volumen, almacenes de datos de numerosas consultas y aplicaciones de Internet exigentes. Ofrece herramientas y funcionalidad para satisfacer las necesidades de disponibilidad y escalabilidad de aplicaciones crticas.

    Edicin Estndar, destinada para aplicaciones de grupo de trabajo o a nivel de departamento. Incluye un juego integrado de herramientas de gestin, distribucin completa, replicacin y funciones Web para crear aplicaciones crticas.

    Personal Edition, que instala el mismo software que el tipo Enterprise Edition, pero que soporta slo un usuario, siendo compatible con Enterprise Edition y Standard Edition. Este tipo de instalacin es el nico de Oracle 9i soportado por Windows 98.

    Personalizada, que permite instalar de forma selectiva componentes de los tipos de instalacin anteriores. Tenga en cuenta que algunos componentes adicionales slo estn disponibles para la instalacin personalizada.

    21

  • Imagen 2.5 Productos disponibles

    Despus de haber seleccionado la opcin Enterprise, se procede a seleccionar el tipo

    de configuracin de Base de Datos, ya sea de uso general que instala una base de datos configurada previamente para uso general, de procesamiento de transacciones que instala una base de datos configurada previamente optimizada para los almacenes de datos, de almacenes de datos, personalizada o slo software. En este caso se utiliz la primera opcin que fue de uso general.

    En seguida se configura la identificacin de la base de datos que se crear de

    manera simplificada, dando como datos: el nombre de la base de datos global y el SID identificador del sistema de Oracle, se recomienda que el nombre en ambas partes sea corto y el mismo como lo muestra la imagen 2.6; Para despus configurar la ubicacin de archivos de las Bases de Datos ya sea escribiendo la ruta directamente o seleccionndola a travs del botn Examinar del cuadro de dilogo del asistente de instalacin.

    Por ltimo se muestra el resumen que muestra todos los componentes que fueron

    indicados y sern instalados, en este punto se puede retroceder en alguna fase de instalacin para su modificacin; En caso contrario se oprime el botn instalar, cambiar de ventana el asistente mostrando una barra de progreso indicando el porcentaje de estado de la instalacin.

    22

  • Imagen 2.6 Identificacin de Bases de Datos

    Al finalizar la instalacin el asistente nos mostrar un mensaje de Fin de la

    instalacin como lo muestra la imagen 2.7, si se desean instalar algunos otros componentes se oprime el botn Siguiente instalacin, de lo contrario oprimir el botn Salir.

    Imagen 2.7 Fin de la instalacin

    23

  • 2.2.2 Gestin del proceso de desarrollo Gestionar el desarrollo de aplicaciones puede ser una tarea complicada. Desde la

    perspectiva de un administrador de bases de datos (DBA), la mejor forma de llevar a cabo este proceso es convertirse en parte integrante de los equipos participantes en l [LoK02].

    La implementacin de una aplicacin en una base de datos mediante la simple

    ejecucin de una serie de comandos crear tabla (create table en el lenguaje SQL) no asegura la integracin del proceso de creacin con las otras reas principales (planificacin, control y ajuste). El administrador de bases de datos debe participar en los procesos de desarrollo de la aplicacin para disear correctamente la base de datos que dar soporte al producto final.

    El ciclo de vida de una base de datos se define por las cuatro acciones:

    planificacin, creacin, control y ajuste. Los elementos de la implementacin adecuada de este ciclo pueden identificarse como pertenecientes a tres categoras principales: procesos culturales, procesos de gestin y tecnologa. Gestionar los esfuerzos de implementacin por parte de los desarrolladores de la base de datos requiere llevar a cabo acciones en las tres categoras:

    Cultural: La cultura corporativa y el equipo de desarrollo deben dar soporte a la participacin del administrador de la base de datos en el proceso de desarrollo.

    Gestin: Se debe exigir a los desarrolladores que sigan lo ms estrictamente posible una metodologa de ciclo de vida

    Tecnologa: Los desarrolladores y administradores de bases de datos deben definir una serie de mecanismos que aseguren que existe el nivel adecuado de participacin y atencin a los detalles.

    2.2.2.1 Procesos culturales

    Los administradores de bases de datos y los desarrolladores que trabajen

    formando parte del mismo equipo pueden mejorar considerablemente el proceso de desarrollo. Un equipo conjunto de administradores y desarrolladores proporcionan valor aadido creando aplicaciones de mantenimiento ms sencillo, creando aplicaciones con un tamao y una configuracin adecuados, lo que requiere por tanto menos tiempo de mantenimiento, creando ndices adecuados para maximizar el rendimiento de las consultas, Identificando las tablas y los ndices que utilizar la aplicacin con ms frecuencia, entre otros ms[LoK02]. El valor que el administrador de la base de datos aade a estos esfuerzos adquiere an mayor alcance cuando el DBA entiende completamente la aplicacin y las necesidades comerciales que satisface. Si comprende las necesidades comerciales, podr entender mejor los objetivos que persiguen los desarrolladores en su proceso de desarrollo de aplicaciones.

    24

  • 2.2.2.2 Procesos de gestin

    Para gestionar adecuadamente los esfuerzos de desarrollo, la metodologa de be definir las relaciones entre las distintas reas funcionales y los documentos entregables necesarios en cada fase de desarrollo de la aplicacin. Si los documentos entregables de la seccin de desarrollo estn terminados, revisados y aprobados, entonces la aplicacin puede pasar al entorno de prueba, bajo cuyas restricciones debern entonces trabajar los desarrolladores [LoK02].

    Para saber si se est siguiendo una metodologa es necesario el

    establecimiento de una lista de elementos llamados documentos entregables que deben cumplimentarse durante el desarrollo de la aplicacin. La metodologa debe definir claramente, tanto en formato como en nivel detalle, los documentos entregables necesarios para cada etapa del ciclo de vida que, adems, deben incluir especificaciones para cada uno de los siguientes elementos:

    Diagrama de relaciones entre entidades Modelo fsico de la base de datos Requisitos de espacio Objetivos de optimizacin para consultas y el proceso de

    transacciones Requisitos de seguridad Requisitos de los datos Planes de ejecucin de consultas Procedimientos de las pruebas de aceptacin

    2.2.2.3 Tecnologa

    Los documentos entregables internos al proceso deben estar disponibles mientras el desarrollo est teniendo lugar. Como la mayora de los equipos de desarrollo incluyen varios desarrolladores (a al menos un DBA), se debe establecer un medio de comunicacin. Los canales de comunicacin permitirn mantener la coherencia en la planificacin y la ejecucin. Se necesitan cuatro soluciones tecnolgicas para la metodologa funcione: herramientas CASE, directorios compartidos, bases de datos de administracin del proyecto y bases de datos de discusin.

    Herramientas CASE

    Se puede utilizar una herramienta CASE para generar el diagrama de relaciones entre entidades y el modelo fsico de la base de datos. Las herramientas CASE pueden crear el diagrama de relaciones entre entidades y suelen tener un diccionario de datos integrado. Las herramientas CASE pueden permitir la comparticin de entidades entre varias aplicaciones y pueden almacenar informacin sobre volmenes de tablas y tamaos de fila. Las herramientas CASE permiten mantener o congelar distintas versiones de un modelo de datos, dando soporte a la gestin de versiones y a la creacin de prototipos.

    25

  • Los comandos SQL que crean los objetos de base de datos para la aplicacin deben generarse directamente desde la herramienta CASE. Se puede tambin utilizar la herramienta CASE para crear versiones genricas de aplicaciones basndose en los objetos de base de datos definidos.

    Directorios compartidos

    Varios de los documentos entregables, como los requisitos de copia de seguridad, no tienen una herramienta especfica con la que deban ser creados. Estos documentos deben crearse con cualquier herramienta que sea adecuada y que est disponible en dicha organizacin. Los archivos resultantes deberan almacenarse en directorios de proyecto compartidos de forma que todos los miembros del equipo implicados puedan acceder a ellos. Los formatos y los convenios de nomenclatura para estos archivos deben especificarse en las primeras etapas de proceso de desarrollo.

    Bases de datos de administracin del proyecto

    Para comunicar el estado de la aplicacin y sus documentos entregables a las personas que no formen parte del equipo de desarrollo, debe mantenerse una base de datos de administracin de proyecto. Esta base de datos debe ofrecer a estas personas una perspectiva del proyecto y de su estado. Esta informacin permitir a las personas que no estn implicadas directamente en el proyecto (como el personal de administracin de sistemas) anticiparse a los futuros requisitos. La base de datos de administracin del proyecto permite adems realizar el anlisis del impacto que pueden tener cambios o retrasos producidos en la programacin, lo que dara lugar posiblemente a modificaciones en los niveles de recursos asignados a las tareas del proyecto [LoK02].

    2.3 Herramientas de desarrollo Oracle

    Oracle ofrece herramientas para desarrollar aplicaciones de procesamiento de transacciones como las herramientas Oracle Business Intelliegence que incluyen: Oracle Discover, para anlisis y consultas ad hoc; Oracle Reports, para la publicacin de bases de datos de alta fidelidad; y las herramientas Express, para el desarrollo de aplicaciones analticas. Entre las herramientas de desarrollo de Oracle se incluyen Designer y Developer, productivas herramientas de desarrollo basado en modelos, y JDeveloper, herramienta de desarrollo de Java basada en componentes. Las herramientas de Oracle automatizan el desarrollo de aplicaciones y reducen el trabajo y el tiempo necesarios para completar aplicaciones de bases de datos, y reduciendo el proceso de codificacin manual, que resulta propenso a errores [PKo+00].

    Oracle Developer es una herramienta de desarrollo lder en el mercado para la

    creacin de aplicaciones de base de datos. Proporciona las utilidades y herramientas de productividad para crear aplicaciones de base de datos de primera que automaticen funciones y procesos de negocio, dentro y fuera de la empresa. En la actualidad, Oracle Developer es la herramienta que eligen muchas empresas de todo el mundo para desarrollar aplicaciones personalizadas de carcter empresarial.

    26

  • Los autores Meter y Paul muestran en su libro varios recursos para el desarrollo en

    Oracle Developer como: una referencia de prctias recomendadas usando las caractersticas orientadas a objetos de Oracle Developer, un anlisis de los estndares para Oracle Developer que ayuden a garantizar el xito de los proyectos que se presenten.

    Forms es el componente principal de Developer 6i. Forms permite desarrollar

    aplicaciones para presentar y manipular datos de muchas maneras. Las aplicaciones de Forms le permiten a los usuarios:

    Insertar, actualizar, borrar y consultar datos utilizando una variedad de items de interfaz.

    Presentar los datos utilizando controles de texto, imgenes y VBX. Control de formas a travs de varias ventanas. Acceso de fcil comprensin, utilizando mens integrados.

    Mdulos en Forms

    En Forms se tienen tres tipos de mdulos (archivos): Forma. Una forma presenta los objetos y datos con los que el usuario puede

    interactuar. Los elementos de datos en una forma son agrupados en registros. Men. Un mdulo men puede comprimir una jerarqua de mens. Usualmente los

    mdulos mens son ligados a mdulos forma. Librera. Es una coleccin de unidades de programa en PL/SQL. Estas unidades de

    programa pueden ser utilizadas en formas y mens. La imagen 2.8 muestra la estructura de forms y su interaccin con la base de datos Oracle, otros productos de Developer y otros objetos.

    FormsForms

    OtrosProductos deDeveloper 6i

    OtrosProductos deDeveloper 6i

    MensMens FormasFormas LibrerasLibreras

    VBXOLE2DDE

    VBXOLE2DDE

    Fuentes de DatosFuentes de Datos Base de DatosBase de Datos

    PL/ SQLPL/ SQL

    TransaccionesTransacciones

    Imagen 2.8 Estructura de Forms

    27

  • 2.3.1 Arquitectura de datos de Developer Forms y Developer Reports

    Una pantalla Form es un mdulo de Form Builder que almacena un conjunto de objetos en un solo archivo. La pantalla acta como una especie de interfaz de usuario que permite al usuario visualizar o manipular la informacin de la base de datos. La ventaja de Oracle Developer Forms radica en su estrecha relacin con la base de datos Oracle. El principal vnculo que lo une a dicha base de datos es un bloque, que est asociado con un objeto de la base de datos, como puede ser una tabla o un procedimiento.

    Cada pantalla contiene uno o ms bloques. Los datos se pueden consultar, insertar,

    actualizar y borrar mediante elementos que se corresponden en las columnas de una tabla o con los elementos de un registro en una variable de cursor o tabla PL/SQL. Generalmente, los elementos aparecen en una pantalla para que el usuario pueda interactuar con ellos. Cada bloque puede contener uno o ms elementos. Se utilizan controles de interfaz grfica de usuario estndar, como elementos de texto, elementos de visualizacin, casillas de verificacin y grupos de botones e opcin para representar en la interfaz los elementos de datos. En la imagen 2.9 se muestra los objetos de pantalla ms importantes, los vnculos con una tabla y cmo los objetos se relacionan entre s con un nivel obligatorio de tipo uno a muchos [PKo+00].

    Tabla

    28Imagen 2.9 Principales relaciones de los objetos de una pantalla

    Pantalla de Forms

  • Imagen 2.10 Manejo de la herramienta Forms de Oracle

    FormsForms

    ProcedimientoFuncinPaquete

    ProcedimientoFuncinPaquete

    FormaForma MenMen

    FormaForma

    Mediante Forms se pueden crear diferentes tipos de mdulos: Forma, Men y

    Librera. Forms permite relacionar los tres tipos de mdulos. Se puede atar un mdulo Men a un Mdulo Forma, haciendo las opciones del

    men disponibles desde la forma en tiempo de ejecucin. Se puede atar uno o ms mdulos Librera a un mdulo Forma o a un mdulo

    Men, para hacer disponibles las unidades de programa de la librera dentro de cada mdulo.

    Un mdulo Forma puede invocar a otro mdulo Forma Lo anterior puede ser mostrado en la imagen 2.10. Una forma puede tener muchos tipos de objetos; no todos son visibles al usuario en

    tiempo de ejecucin. Los tres objetos principales en una forma son: Items. Son objetos que presentan valores al usuario y le permiten interactuar con la

    forma, dependiendo del tipo de item. Los items son agrupados lgicamente en bloques y distribuidos fsicamente sobre canvas.

    Canvas. Un canvas es una superficie donde se colocan objetos visuales. Una forma puede tener varios canvas (como las pginas de un libro). Por default, todos los canvas en una forma aparecen en la misma ventana, pero se pueden asignar ventanas separadas para cada canvas.

    Bloques. Un bloque es una agrupacin lgica de items. Los items en un bloque deben estar relacionados lgicamente; por ejemplo, pueden corresponder a columnas de una tabla en la base de datos.

    No es necesario que los items de un bloque estn fsicamente agrupados, ya que

    pueden estar distribuidos en varios canvas.

    29

  • Un bloque con tabla base, es un bloque que est asociado con una tabla o vista de la base de datos. Muchos de los bloques en una forma, son con tabla base. Un bloque slo puede tener una tabla base. Para un bloque con tabla base, Forms automticamente:

    Crea items que correspondan a columnas de la tabla. Produce cdigo en la forma para emplear las reglas de los constraints de la tabla. Genera en tiempo de ejecucin sentencias SQL para insertar, actualizar, borrar y

    consultar renglones en la tabla base, dependiendo de las acciones del usuario. Se pueden crear bloques con una relacin maestro-detalle para permitir que valores

    de llave primaria y llave fornea sean ligados a travs de bloques y sincronizar los datos que sern desplegados. Forms automticamente genera los objetos y el cdigo necesario para soportar la relacin maestro-detalle. Se pueden crear bloques que slo muestren un registro o que muestren varios registros a la vez (bloque multi-registro).

    Los componentes Forms y Reports de Oracle Developer poseen arquitecturas de

    datos diferentes. En Reports hay un objeto, que se denomina columna, que representa un elemento de datos (normalmente, un valor de columna de una fila de una tabla) en una consulta del modelo de datos. Reports emplea un objeto independiente en el modelo de diseo (Layaout Model), el campo, para mostrar los datos de la columna. Puede haber columnas sin campos y puede haber columnas con ms de un campo. El modelo de datos y el modelo de diseo contienen representaciones independientes. En el componente Forms slo hay un objeto, el elemento que hace referencia al valor de la columna en la base de datos y muestra los datos correspondientes. La Imagen 2.11 muestra un ejemplo de cmo es el diseo final de un reporte el cual plasma en impresin o diferentes formatos de documentos la salida de la informacin requerida, de la base de datos.

    Figura 2.11 Ejemplo de diseo de un Reporte en Developer Reports

    30

  • Forms crea automticamente instrucciones DML e instrucciones SQL de consulta

    (INSERT, UPDATE, DELETE y SELECT), a partir del bloque y elementos contenidos en la pantalla. Estas instrucciones SQL no necesitan ninguna codificacin, gracias a la funcionalidad ya incluida en el bloque. Otra de las utilidades de Forms es la funcin de consulta por ejemplo (QBE, Query By Example). El usuario puede poner la pantalla en el modo Enter Query (Introducir Consola), introducir los valores de correspondencia en los elementos del bloque y ejecutar la consulta. La pantalla crear una clusula WHERE que se aadir a la instruccin SELECT generada para recuperar los datos. Otra de las funciones de esta herramienta radica en su capacidad de gestionar automticamente el bloqueo de filas y la concurrencia, sin necesidad de ninguna codificacin adicional [PKo+00].

    Las definiciones de los mdulos de Forms se pueden almacenar en el sistema de archivos o en la base de datos. Si se guarda un mdulo forma al sistema de archivos, se crea un archivo Form Module Binary (.fmb). Este archivo no es ejecutable; se debe generar un archivo .fmx para ejecutar la forma. Un archivo ejecutable de Developer, necesita una herramienta del mismo Developer para ejecutarlo. Esto puede ser visto en la imagen 2.12

    Fuentes y EjecutablesFuentes y Ejecutables

    Runtime deForms

    Runtime deForms

    TablasTablasTablasTablas

    Base de DatosBase de Datos

    Sistema de Sistema de ArchivosArchivos

    COMPILECOMPILE

    RUNRUN

    Memoria deFormsBuilder

    Memoria deFormsBuilderDefinicin

    de la FormaDefinicin

    de la FormaArchivos o

    Base de Datos?Archivos o

    Base de Datos?OPENOPENSAVESAVE

    PreferenciasPreferencias

    .fmx .fmb

    Figura 2.12 Funcionamiento de la herramienta Forms de Oracle

    31

  • Archivos BinariosArchivos Binarios

    .fmb.fmb FormaForma

    MenMen

    LibreraLibrera

    .mmb.mmb

    .pll.pll

    .fmx.fmx

    .mmx.mmx

    .plx.plx

    Definicin Binaria Definicin Binaria PortablePortable Ejecutable NoEjecutable No--PortablePortable

    Figura 2.13 Tipos de archivos para mdulos en Forms de Oracle

    Adems de los mdulos forma (.fmb) tambin se puede salvar los mdulos mens y los mdulos librera al sistema de archivos. Arriba se ilustra en la figura 2.13, que extensin tienen los archivos donde se guardan los mdulos forma, men y librera; tambin la extensin de los archivos ejecutables.

    Los archivos fuente tienen la caracterstica de que son portables a diferentes plataformas, mientras que los archivos ejecutables no son portables 2.4 Ventajas

    Oracle es el mayor proveedor de software de comercio electrnico del mundo. 65 de

    las 100 mayores empresas, segn la clasificacin de la revista Fortune, usan Oracle para el negocio electrnico. Esto se debe a que Oracle ofrece una completa plataforma de Internet, incluyendo la base de datos 9i, servidores de aplicacin y herram