INTRODUCCIÓN. - ri.ufg.edu.svri.ufg.edu.sv/jspui/bitstream/11592/6885/5/334.2-B275s-Capitulo...
Transcript of INTRODUCCIÓN. - ri.ufg.edu.svri.ufg.edu.sv/jspui/bitstream/11592/6885/5/334.2-B275s-Capitulo...
1
2
INTRODUCCIÓN.
En la actualidad existe un gran número de herramientas para el desarrollo de un
sistema informático, cada una tiene sus ventajas y desventajas, lo importante es
saber seleccionar lo que mejor se acople a las necesidades actuales y futuras
de las empresas.
En el desarrollo del sistema para ACOSIB, de R. L., se utilizará del sistema de
gestión de base de datos Oracle 9i y como herramientas de desarrollo de
aplicaciones Developer 6i, ya que la cooperativa cuenta con ambos software y
se adapta a las necesidades de integración del SCI de la Bolsa de Valores.
En este capítulo, se abarcan aspectos importantes sobre el funcionamiento de
Oracle y Developer, además se hará una descripción de la interfaz del sistema
que se ha creado e implementado en ACOSIB, el que incluye los módulos que
posee, las pantallas que compone cada módulo, su funcionamiento y las tablas
con las que interactúa.
iv
87
17. PROGRAMACION ORIENTADA A OBJETOS.
La programación orientada a objetos (POO u OOP) según siglas en inglés), es
un paradigma de programación que define los programas en términos de
"clases de objetos", objetos que son entidades que combinan estado (es decir,
datos), comportamiento (esto es, procedimientos o métodos) e identidad
(propiedad del objeto que lo diferencia del resto). La programación orientada a
objetos expresa un programa como un conjunto de estos objetos, que colaboran
entre ellos para realizar tareas. Esto permite hacer los programas y módulos
más fáciles de escribir, mantener y reutilizar.
De esta forma, un objeto contiene toda la información, (los denominados
atributos) que permite definirlo e identificarlo frente a otros objetos
pertenecientes a otras clases (e incluso entre objetos de una misma clase, al
poder tener valores bien diferenciados en sus atributos). A su vez, dispone de
mecanismos de interacción (los llamados métodos) que favorecen la
comunicación entre objetos (de una misma clase o de distintas), y en
consecuencia, el cambio de estado en los propios objetos. Esta característica
lleva a tratarlos como unidades indivisibles, en las que no se separan (ni deben
separarse) información (datos) y procesamiento (métodos).
Esto difiere de la programación estructurada tradicional, en la que los datos y
los procedimientos están separados y sin relación, ya que lo único que se busca
es el procesamiento de unos datos de entrada para obtener otros de salida. La
programación estructurada anima al programador a pensar sobre todo en
términos de procedimientos o funciones, y en segundo lugar en las estructuras
de datos que esos procedimientos manejan. En la programación estructurada
se escriben funciones y después les pasan datos. Los programadores que
emplean lenguajes orientados a objetos definen objetos con datos y métodos y
después envían mensajes a los objetos diciendo qué realicen esos métodos en
sí mismos.
88
18. DEVELOPER.
El Developer es una herramienta de desarrollo de aplicaciones, que se utiliza
con Oracle. Este desarrollador, permite crear formularios en local, es decir,
mediante esta herramienta se puede crear formularios, compilarlos y
ejecutarlos, pero si se quiere que los otros trabajen sobre este formulario se
debe copiar regularmente en una carpeta compartida para todos, de modo que,
cuando quieran realizar un cambio, deberán copiarlo de dicha carpeta y luego
volverlo a subir a la carpeta. La principal ventaja de esta herramienta es que es
bastante intuitiva y dispone de un modo que permite componer el formulario, tal
y como haría en Visual Basic o en Visual C.
18.1. COMPONENTES PRINCIPALES DE DEVELOPER.
18.1.1. Forms.
El componente forms de Developer es la parte del entorno de desarrollo en la
que se construyen los módulos de formularios.
• Módulo de Formularios:
El módulo de formularios es el componente principal de las aplicaciones
interactivas y es el más complejo en términos de estructura interna, ya que
contiene clases distintas de elementos.
Disparadores (Triggers):
Un disparador es un bloque de código PL/SQL que se asocia a otro
elemento: un formulario, un bloque de datos o un elemento de un bloque
de datos. Los disparadores de una aplicación de formularios contienen el
89
código que se añade a la aplicación y su estructura lógica constituye la
mayor parte del diseño de un formulario.
Bloques de datos:
El bloque de datos es la unidad de construcción intermedia de los
formularios y se puede ver de dos formas, como una colección de
elementos o como una colección de registros, cada uno con la misma
estructura.
Canvas y ventanas:
Un canvas es la base sobre la que se sitúa el texto plano y los
elementos. Cada elemento hace referencia a un único canvas en su hoja
de propiedades. Los elementos de un bloque de datos se pueden dividir
entre diferentes canvas.
Menú emergente:
Un menú emergente es un menú flotante, que emerge cuando se pulsa
con el botón derecho del ratón en un canvas o en un elemento.
Aviso:
Un aviso es un cuadro de diálogo especial que muestra un mensaje con
un icono y hasta tres botones, como OK y Cancel, Yes y No, etc. Existen
tres tipos de avisos: de parada, de precaución y de información.
Editor:
Un editor es un cuadro de diálogo con un editor de texto sencillo, que
permite la introducción de líneas de texto en un elemento texto. El
elemento editor permite especificar el tamaño de la ventana, los atributos
visuales, el título del editor y otras. Las propiedades de la ventana
permite la creación de editores con apariencias diferentes para diferentes
campos de texto.
90
Grupo de registros:
Es una estructura de datos especial parecida a una tabla con filas y
columnas. Un grupo de registros puede ser un grupo de registros
procedentes de una consulta o un grupo de registros estáticos.
Los grupos de registros se pueden utilizar en LOV, en parámetros de
datos que pasan registros a informes o gráficos, o como estructuras de
datos PL/SQL.
Lista de valores (LOV):
Es un cuadro de diálogo especial que muestra un grupo de registros,
permitiendo elegir una fila del grupo, devolviendo un único valor. Un LOV
se utiliza como una forma de elegir un conjunto específico de valores.
Elementos Programables:
Los elementos programables se utilizan para estructurar programas.
Estos elementos son igualmente aplicables a módulos de formularios y
de menús.
• Módulos de menú.
El módulo de menús es mucho más sencillo que el módulo de formularios.
Consiste en un conjunto de elementos programables y un conjunto de menús.
A su vez, cada menú consiste en un conjunto de opciones. Las opciones
pueden ser sencillas o tener uno de los siguientes formatos: verificación,
opción, separador y mágica.
18.1.2 Reports.
El componente Reports de Developer es la parte del entorno de desarrollo con
la que se realizan los módulos de informes. En este entorno se puede hacer
referencia a elementos de consultas externas, y se pueden configurar y
91
almacenar elementos de depuración. El Report Builder también incluye
bibliotecas y elementos de base de datos.
Los componentes básicos de un informe son: modelo de datos, su formulario de
parámetros, sus disparadores de informes y su composición.
18.1.3. Graphics.
El componente Graphics de Developer es parte del entorno en el que se
desarrollan los módulos de pantallas. Un módulo de pantalla puede ser uno o
más gráficos que se derivan de datos de base de datos, o pueden contener
cualquier combinación de elementos gráficos con o sin referencia a la base de
datos. Los módulos de pantalla se pueden utilizar estrictamente para mostrar
datos mediante gráficos, como una herramienta de dibujo.
No sólo hace que todos los elementos funcionen conjuntamente, sino que
también trabaja con elementos procedentes de otras aplicaciones y con datos
procedentes de gestores de bases de datos diferentes de Oracle.
18.1.4. Project builder.
Es un componente del conjunto de herramientas Oracle Developer.
PB le permite organizar sus archivos en proyectos y proporciona las
herramientas necesarias para gestionarlos.
18.2. CUADRO COMPARATIVO DE LENGUAJES DE
PROGRAMACION.
Variables Oracle
Developer
Microsoft Visual
Studio. Net Java
Velocidad Alta Alta Medio
Estabilidad Fuerte Fuerte Intermedio
92
Seguridad Alta Alto Alta
Simplicidad Alta Alto Media
Conectividad Alta Alto Alta
Manejo de errores Alto Alto Alta
Entorno de desarrollo Alto Alto Alta
Precio software Alto Medio Gratis
Precio plataforma Alto Medio Gratis
Soporte Medio Alto Bajo
CUADRO 10. Comparación entre lenguajes de programación.
18.3. PL/SQL.
PL/SQL (Programming Language/SQL, por sus siglas en inglés). Provee una
manera muy cómoda de relacionar los conceptos de bases de datos y
manejarlos mediante ciertas estructuras de control, dentro del contexto de una
herramienta netamente de programación.
Su utilización es dentro del administrador de bases de datos Oracle, sus
principales características son la posibilidad que brinda de utilizar sentencias
SQL para manipular datos en Oracle y sentencias de control de flujo para
organizar esta manipulación de datos.
Dentro del lenguaje, es posible declarar constantes y variables, definir
procedimientos y funciones y atrapar errores en tiempo de ejecución. Así visto,
PL/SQL combina el poder de la manipulación de datos con SQL, y las
facilidades del procesamiento de los mismos, tal como en los más modernos
lenguajes de programación.
19. ORACLE.
Es básicamente una herramienta cliente/servidor para la gestión de Bases de
Datos. Es un producto vendido a nivel mundial y de gran potencia.
93
Un servidor Oracle posee una base de datos Oracle y la instancia Oracle,
soporta acceso por SQL y por múltiples lenguajes de programación. También
posee un lenguaje de procedimientos llamado PL/SQL, un lenguaje de 5ª
generación bastante potente para tratar y gestionar la base de datos.
Oracle posee dos estructuras primarias, la estructura física (datos
almacenados) y la lógica (representación abstracta de los datos).
Para su utilización primero sería necesaria la instalación de la herramienta
servidor (Oracle en cualquier versión) y posteriormente se podría accesar a la
base de datos desde otros equipos con herramientas de desarrollo como Oracle
Developer, que es una herramienta básica de programación sobre Oracle.
19.1. VENTAJAS DE ORACLE.
• Estabilidad.
• Escalabilidad.
• Es multiplataforma.
• Base de datos multipropósito.
• Robustez
• Fácil administración.
• Inviolabilidad.
• Seguridad
• Puede manejar grandes volúmenes de datos.
• Posee alto desempeño.
• Soporte de transacciones.
• Con soporte para tecnologías Internet (XML).
94
19.2. ARQUITECTURA DE LA BD ORACLE.
Una Base de Datos Oracle es un conjunto de datos almacenados y accesibles
según el formato de tablas relacionales. Una tabla relacional tiene un nombre y
unas columnas. Los datos están almacenados en las filas. Las tablas pueden
estar relacionadas con otras.
Una BD Oracle está almacenada físicamente en ficheros, y la correspondencia
entre los ficheros y las tablas es posible gracias a las estructuras internas de la
BD, que permiten que diferentes tipos de datos estén almacenados físicamente
separados. Está división lógica se hace gracias a los espacios de tablas.
19.2.1. Los Tablespaces.
Un espacio de tablas es una división lógica de la BD. Cada una tiene al menos
uno. Un espacio de tablas puede pertenecer sólo a una BD. Se utilizan para
mantener juntos los datos de usuarios o de aplicaciones para facilitar su
mantenimiento o mejorar las prestaciones del sistema.
De esta manera, cuando se crea una tabla se debe indicar el espacio de tablas
al que se destina. Por defecto se depositan en el espacio de tablas SYSTEM, que
se crea por defecto. Este espacio de tablas es el que contiene el diccionario de
datos, por lo que conviene reservarlo para el uso del servidor, y asignar las
tablas de usuario a otro. Lo razonable y aconsejable es que cada aplicación
tenga su propio espacio de tablas.
19.2.2. Los ficheros.
Cada espacio de tablas se compone de uno o más ficheros en disco. Un fichero
puede pertenecer sólo a un espacio de tablas. Los ficheros reciben un tamaño
fijo en el momento de su creación, y cuando se necesita más espacio se deben
añadir más ficheros a espacio de tablas.
95
Dividir los objetos de la BD entre múltiples espacios de tablas permite que los
objetos sean almacenados físicamente en discos separados, dependiendo de
donde estén los ficheros sobre los que se asientan.
19.2.3. Instancias.
Para permitir el acceso a los datos, Oracle utiliza un conjunto de procesos que
son compartidos por todos los usuarios. Además, existen estructuras de
memoria que son utilizadas para almacenar los datos más recientemente
solicitados a la BD.
Una instancia de BD es el conjunto de estructuras de memoria y de procesos
que acceden a los ficheros de datos.
Los parámetros que determinan el tamaño y composición de una instancia
están almacenados en un fichero llamado init.ora. Este fichero es leído durante el
arranque de la BD y puede ser modificado por el DBA. Cualquier modificación
de este fichero no tiene efecto hasta la siguiente vez que se arranque la BD.
19.2.4. Tablas y Columnas.
Los datos son almacenados en la BD utilizando tablas. Cada tabla está
compuesta por un número determinado de columnas.
Las tablas propiedad del usuario SYS son llamadas tablas del diccionario de
datos. Proveen el catálogo del sistema que permite que la BD se gestione a sí
misma.
Las tablas se pueden relacionar entre ellas a través de las columnas que las
componen. La BD se puede utilizar para asegurar el cumplimiento de esas
relaciones a través de la integridad referencial, que se concreta en las
restricciones de tablas.
96
19.2.5. Restricciones de Tablas.
Una tabla puede tener asociadas restricciones que deben cumplir todas las
filas. Entre las restricciones que se pueden fijar algunas reciben nombres
especiales.: clave primaria, clave ajena.
La clave primaria de una tabla está compuesta por las columnas que hacen a
cada fila de la tabla una fila distinta.
La clave ajena se utiliza para especificar las relaciones entre tablas. De modo
que un conjunto de columnas declaradas como clave ajena de una tabla deben
tener valores tomados de la clave primaria de otra tabla.
19.2.6. Usuarios.
Una cuenta de usuario no es una estructura física de la BD, pero está
relacionada con los objetos de la BD: los usuarios poseen los objetos de la BD.
Existen dos usuarios especiales: SYS y SYSTEM. El usuario SYS posee las tablas
del diccionario de datos; que almacenan información sobre el resto de las
estructuras de la BD. El usuario SYSTEM posee las vistas que permiten acceder
a las tablas del diccionario, para el uso del resto de los usuarios de la BD.
Todo objeto creado en la BD se crea por un usuario, en un espacio de tablas y
en un fichero de datos determinado. Toda cuenta de la BD puede estar unida a
una cuenta del S.O., lo que permite a los usuarios acceder a la cuenta de la BD
sin dar la clave de acceso.
19.2.7. Índices.
Un índice es una estructura de la BD utilizada para agilizar el acceso a una fila
de una tabla. Cada fila tiene un identificador de fila, ROWID, que determina el
fichero, bloque y fila dentro del bloque donde está almacenada la fila.
97
Cada entrada del índice consiste en un valor clave y una ROWID. Cada una de
estas entradas se almacena en un árbol B+.
Los índices se crean automáticamente cuando se define una restricción UNIQUE
o PRIMARY KEY.
19.2.8. Vistas.
Conceptualmente, una vista puede considerarse como una máscara que se
extiende sobre una o más tablas, de modo que cada columna de la vista se
corresponde con una o más columnas de las tablas subyacentes. Cuando se
consulta una vista, esta traspasa la consulta a las tablas sobre las que se
asienta. Las vistas no se pueden indexar.
19.2.9. Procedimientos y Funciones.
Un procedimiento es un bloque de código PL/SQL, que se almacena en el
diccionario de datos y que es llamado por las aplicaciones. Se pueden utilizar
para implementar seguridad, no dando acceso directamente a determinadas
tablas sino es a través de procedimientos que acceden a esas tablas. Cuando
se ejecuta un procedimiento se ejecuta con los privilegios del propietario del
procedimiento. La diferencia entre un procedimiento y una función es que ésta
última puede devolver valores.
19.2.10. Paquetes.
Se utilizan para agrupar procedimientos y funciones. Los elementos dentro de
los paquetes pueden ser públicos o privados. Los públicos pueden ser llamados
por los usuarios, los privados están ocultos a los usuarios y son llamados por
otros procedimientos.
98
19.2.11. Sinónimos.
Para identificar completamente un objeto dentro de una BD se necesita
especificar el nombre de la máquina, el nombre del servidor, el nombre del
propietario y el nombre del objeto. Para hacer transparente todo esto al usuario
se pueden utilizar los sinónimos. Éstos apuntarán a los objetos y si el objeto
cambia de lugar o propietario, sólo habrá que modificar el sinónimo.
Existen sinónimos públicos y privados. Los públicos son conocidos por todos los
usuarios de una BD. Los privados son locales a un usuario.
• Privilegios y Roles:
Para que un objeto pueda ser accedido por un usuario debe de tener
otorgado ese privilegio. Ejemplos de privilegios son INSERT, SELECT,
UPDATE, EXECUTE, etc.
Los roles son grupos de privilegios que pueden ser utilizados para
facilitar la gestión de los privilegios. Los privilegios se pueden otorgar a
un rol, y los roles pueden ser otorgados a múltiples usuarios.
• Segmentos, Extensiones y Bloques:
Los segmentos son los equivalentes físicos de los objetos que
almacenan datos. El uso efectivo de los segmentos requiere que el DBA
conozca los objetos que utilizan una aplicación, cómo los datos son
introducidos en esos objetos y el modo en que serán recuperados.
Como los segmentos son entidades físicas, deben estar asignados a
espacios de tablas en la BD y estarán localizados en uno de los ficheros
de datos del espacio de tablas. Un segmento está constituido por
secciones llamadas extensiones, que son conjuntos contiguos de
bloques Oracle.
99
Una vez que una extensión existente en un segmento no puede
almacenar más datos, el segmento obtendrá del espacio de tabla otra
extensión. Este proceso de extensión continuará hasta que no quede
más espacio disponible en los ficheros del espacio de tablas, o hasta que
se alcance un número máximo de extensiones por segmento.
19.3. COMPARACION DE ORACLE CON OTRAS BD.
Variables Oracle Microsoft
SQL Server
Power Builder
Postgre SQL MySQL
Abstracción de la información.
Alto Alto Alto Alto Alto
Independencia. Alta Alta Alta Medio Medio
Redundancia mínima
Baja Baja Baja Baja Baja
Consistencia. Alto Alto Alto Medio Medio
Seguridad. Alta Alta Alta Alta Alto
Integridad. Alto Alto Alto Medio Medio
Respaldo y recuperación.
Alto Alto Alto Medio Medio
Control de la concurrencia.
Alto Alto Alto Medio Medio
Tiempo de respuesta.
Alto Alto Alto Medio Medio
Costo. Alto Medio Medio Gratis Gratis
Nivel de administración.
Alto Alto Alto Medio Medio
CUADRO 11. Comparación entre bases de datos.
100
20. LENGUAJE DE CONSULTA ESTRUCTURADO (SQL)
Las aplicaciones en red son cada día más numerosas y versátiles. En muchos
casos, el esquema básico de operación es una serie de scripts que rigen el
comportamiento de una base de datos.
Debido a la diversidad de lenguajes y de bases de datos existentes, la manera
de comunicar entre unos y otras sería realmente complicada a gestionar de no
ser por la existencia de estándares que permiten el realizar las operaciones
básicas de una forma universal.
Es de eso de lo que trata el Structured Query Language, que no es más que un
lenguaje estándar de comunicación con bases de datos. Se habla, por tanto, de
un lenguaje normalizado que permite trabajar con cualquier tipo de lenguaje
(ASP o PHP) en combinación con cualquier tipo de base de datos (MS Access,
Oracle, SQL Server, MySQL...).
El hecho de que sea estándar no quiere decir que sea idéntico para cada base
de datos. En efecto, determinadas bases de datos implementan funciones
específicas que no tienen necesariamente que funcionar en otras.
Aparte de esta universalidad, el SQL posee otras dos características muy
apreciadas. Por una parte, presenta una potencia y versatilidad notables que
contrasta, por otra, con su accesibilidad de aprendizaje.
SQL promociona métodos para definir la base datos, para manipular la
información y para gestionar los permisos de acceso a dicha información.
20.1 SENTENCIAS SQL.
Las sentencias SQL pertenecen a dos categorías principales: Lenguaje de
Definición de Datos, DDL y Lenguaje de Manipulación de Datos, DML. Estos
101
dos lenguajes no son lenguajes en sí mismos, sino que es una forma de
clasificar las sentencias de lenguaje SQL en función de su cometido. La
diferencia principal reside en que el DDL crea objetos en la base de datos y sus
efectos se pueden ver en el diccionario de la base de datos; mientras que el
DML es el que permite consultar, insertar, modificar y eliminar la información
almacenada en los objetos de la base de datos.
Cuando se ejecutan las sentencias DDL de SQL, el SGBD confirma la
transacción actual antes y después de cada una de las sentencias DDL. En
cambio, las sentencias DML no llevan implícito el commit y se pueden deshacer.
Existe pues un problema al mezclar sentencias DML con DDL, ya que estas
últimas pueden confirmar las primeras de manera involuntaria e implícita, lo que
en ocasiones puede ser un problema.
A continuación se presenta una tabla con las sentencias SQL más comunes,
clasificadas según el lenguaje al que pertenecen.
Sentencia DDL.
Objetivo.
Alter procedure.
Recompilar un procedimiento almacenado.
Alter Table. Añadir o redefinir una columna, modificar la asignación de almacenamiento.
Analyze. Recoger estadísticas de rendimiento sobre los objetos de la BD para utilizarlas en el optimizador basado en costes.
Create Table.
Crear una tabla.
Create Index.
Crear un índice.
Drop Table. Eliminar una tabla.
Drop Index. Eliminar un índice.
Grant. Conceder privilegios o papeles, roles, a un usuario o a otro rol.
Truncate. Eliminar todas las filas de una tabla.
102
Revoke. Retirar los privilegios de un usuario o rol de la base de datos.
Sentencia DML.
Objetivo.
Insert. Añadir filas de datos a una tabla.
Delete. Eliminar filas de datos de una tabla.
Update. Modificar los datos de una tabla.
Select. Recuperar datos de una tabla.
Commit. Confirmar como permanentes las modificaciones realizadas.
Rollback. Deshacer todas las modificaciones realizadas desde la última confirmación.
21. DISEÑO DE LA INTERFAZ.
El sistema de control de cuentas y transacciones (SCT), para ACOSIB de R.L.
permitirá la automatización de todos los procesos que maneja la cooperativa.
Es SCT esta conformado por dos módulos principales:
• Módulo general (MG).
• Módulo de cuentas y transacciones (MCT).
A continuación se muestra algunas de las pantallas que conforman estos
módulos y la descripción de estas. La información completa de la interfaz del
sistema se muestra en el Manual de Usuario.
21.1. MODULO GENERAL (MG).
Este módulo maneja el control de acceso de los usuarios al sistema. Esta
compuesto por la opción de configuración y contiene las siguientes pantallas:
103
Pantalla: Configuración de grupos de usuarios.
FIGURA 17. Pantalla configuración de grupos de usuarios.
Objetivo: Identificar los diferentes grupos de usuarios que tienen acceso al
sistema.
Descripción: Guarda el código y el nombre del grupo, módulo al que tiene
accesos los grupos, nivel y nombre de la opción a que pertenece el nivel.
Tablas que lo soportan: TMG_GRUPO y TMG_MENUOPC.
Campos claves: Tmg_codgrp (pk), Tmg_codopc (pk).
104
Pantalla: Configuración de usuario.
FIGURA 18. Pantalla configuración de usuarios.
Objetivo: Controlar el acceso de cada uno de los usuarios que ingresan al
sistema.
Descripción: Almacena el código y el nombre del usuario, así como también su
clave, el grupo de usuario al que pertenece, el tipo de formato de Excel que
posee y el estado del usuario
Tablas que lo soportan: TMG_USUARIO, TMG_GRUPO
Campos claves: Tmg_codusu (pk), Tmg_codgrp (pk) (fk).
105
Pantalla: Cambio de contraseña
FIGURA 19. Pantalla Cambio de contraseña.
Objetivo: Permitir a los usuarios del sistema cambiar su clave de acceso en el
momento que ellos lo consideren necesario.
Descripción: Contiene el código y nombre del usuario, la clave actual de
acceso, la clave nueva y la confirmación.
Tablas que lo soportan: TMG_USUARIO.
Campos claves: Tmg_codusu (pk).
21.2. Módulo de control de cuentas y transacciones (MCT).
Este modulo facilita el manejo de los ahorros, créditos y aportaciones de los
asociados de la cooperativa.
El modulo esta compuesto por tres opciones que se detallan a continuación:
1. Creación y Mantenimiento: Permite el ingreso y actualización de la
información que manejara el sistema.
106
2. Procesos: Es el encargado de los cálculos manuales y automáticos de
las transacciones que realiza el sistema.
3. Consultas y Reportes: Facilita las consultas a la información ya
almacenada y genera los reportes necesarios.
Opción: Creación y Mantenimiento
Pantalla: Socio.
FIGURA 20. Pantalla de mantenimiento socio.
Objetivo: Manejar la información de los socios de la cooperativa Descripción: Guarda los datos principales de los socios, así como también
información de los beneficiarios asignados por los socios.
Tablas que lo soportan: TAC_SOCIO, TAC_BENEFICIAR Campos claves: Tac_codsoc (pk) (fk)
107
Pantalla: Tipo de cuenta.
FIGURA 21. Pantalla de mantenimiento Tipo de cuenta.
Objetivo: Establecer los diferentes tipos de cuentas que manejara el sistema.
Descripción: Contiene el código y el nombre de todos los tipos de cuenta que
se utilizan en la cooperativa.
Tablas que la soportan: TAC_TIPO_CTA.
Campos claves: Tac_codtip (pk)
108
Pantalla: Préstamo.
FIGURA 22. Pantalla de mantenimiento de préstamos.
Objetivo: Controlar la información de los prestamos otorgados por la
cooperativa.
Descripción: Almacena el numero del préstamo, socio al que pertenece, fiador,
tasa de interés, fecha de inicio y fin de la vigencia del préstamo.
Tablas que la soportan: TAC_PRESTAMO, TAC_FIADOR, TAC_SOCIO,
TAC_TASA_INT.
Campos claves: Tac_codptm (pk), Tac_codsoc (fk), Tac_codfia (fk),
Tac_codtas (fk).
109
Opción: Procesos.
Pantalla: Tabla de Amortización.
.
FIGURA 23. Pantalla de proceso Tabla de amortización.
Objetivo: Calcular el número de cuotas que el socio debe cancelar de un
préstamo concedido por la cooperativa.
Descripción: Muestra los datos relacionados al préstamo: No de préstamo,
socio, monto, tasa de interés, base, frecuencia, fecha de apertura y
vencimiento, además despliega el detalle de la tabla de amortización del
préstamo: No de pago, fecha, cuota, interés, capital y saldo.
Tablas que lo soportan: TAC_PRESTAMO, TAC_SOCIO, TAC_TASA_INT.
Campos claves: Tac_codptm (pk), tac_codsoc (pk, fk), tac_codtas (pk, fk).
110
Pantalla: Carga de aportaciones y ahorros automáticos.
FIGURA 24. Pantalla de proceso automático de carga de aportaciones y ahorros.
Objetivo: Manejar los ahorros, retiros y compra de aportaciones relacionados
con los descuentos aplicados en planilla establecidos en el SCI.
Descripción: Contiene el año, mes y quincena a capturar, el tipo de
movimiento de ahorro y aportaciones.
Tablas que lo soportan: TRH_PLANILLA, TAC_TIPO_CTA, TAC_SOCIO,
TAC_EMPRESA, TAC_CUENTA, TAC_MOVIMIENTO, TAC_BIT_CARGA.
Campos claves: pk_planilla (compuesta), codemp_fk_trh_planilla (compuesta).
111
Pantalla: Registro de Transacciones de Prestamos.
FIGURA 25. Pantalla de Registro de Transacciones de Préstamos.
Objetivo: Manejar los ahorros, retiros y compra de aportaciones relacionados
con los descuentos aplicados en planilla establecidos en el SCI.
Descripción: Contiene el año, mes y quincena a capturar, el tipo de
movimiento de ahorro y aportaciones.
Tablas que lo soportan: TAC_MOV_PTMO, TAC_PTM, TAC_SOCIO.
Campos claves: Tac_nummov (pk), Tac_codptm (fk), tac_codsoc (fk).
112
Opción: Consultas y Reportes.
Pantalla: Cuentas por socio.
FIGURA 26. Pantalla de consulta de cuentas por socio.
Objetivo: Mostrar la información general del socio y un detalle de todas las
cuentas asignadas a este.
Descripción: Presenta el código, nombre, y fecha de ingreso del socio, además
el No. de cuenta que posee, tasa de interés, tipo y estado de cada una de ellas.
Tablas que lo soportan: TAC_SOCIO, TAC_CUENTA.
Campos claves: Tac_codsoc (pk, fk), tac_numcta (pk).
113
Pantalla: Detalle de Fiador.
FIGURA 27. Pantalla de consulta de Detalle por fiador.
Objetivo: Desplegar la información general del fiador y un detalle de las
personas a quienes les sirve de fiador.
Descripción: Muestra el código, apellido, e ingreso neto del fiador, así mismo
el No del préstamo, deudor principal, monto y estado.
Tablas que lo soportan: TAC_FIADOR, TAC_PRESTAMO.
Campos claves: Tac_codfia (pk, fk), tac_codptm (pk).
114
Pantalla: Ficha de empresa.
FIGURA 28. Pantalla de consulta de ficha de empresa.
Objetivo: Mostar la información relacionada a las empresas a la que pertenece
los socios, fiadores, proveedores.
Descripción: Contiene los datos principales de la empresa y la persona
contacto, además presenta el descuento máximo que puede ser aplicado al
socio y al fiador con relación a los prestamos otorgados.
Tablas que lo soportan: TAC_EMPRESA, TAC_CONTACTO,
TAC_DESCUENTO.
Campos claves: Tac_codemp (pk, fk), tac_contac (fk).
115
Reporte: Detalle por fiador.
FIGURA 29. Pantalla de Reporte de detalle de fiador.
Reporte: Ficha de empresa.
FIGURA 30. Pantalla de ficha de empresa.
116
22. IMPLEMETACION DEL SISTEMA.
A continuación se detalla un listado de actividades que se realizaron para la
implementación del Sistema de Control de Cuentas y Transacciones (SCT),
para Acosib, de R.L.
• Se entrego a los administradores del sistema los programas fuentes
para que realizaran una copia de estos y se le asignara una ubicación
especifica.
• Se les proporcionó a los administradores de la base de datos los
scripts de las tablas que conforman la base de datos.
• Se realizaron las respectivas pruebas del sistema por parte de los
programadores, para detectar posibles problemas generados al momento
de la implantación.
• Los usuarios del sistema efectuaron pruebas al sistema con la ayuda del
manual de usuario para verificar la manera en que se utiliza el sistema.
• Los datos introducidos para pruebas se eliminaron y se alimento con la
información real de los socios.
• Se creó la base de datos y se colocó en una ubicación definida por la
Gerencia de Tecnología de Información para establecer los accesos que
tendrán cada uno de los usuarios del sistema