Sistema De Venta De Gas

  • May 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Sistema De Venta De Gas as PDF for free.

More details

  • Words: 5,483
  • Pages: 50
Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

ESCUELA SUPERIOR POLITECNICA DEL LITORAL

MATERIA: SISTEMA DE BASE DE DATOS

PROYECTO: SISTEMA DE VENTA DE GAS

INTEGRANTES: Marco Antonio Espinoza Arcenteles Raúl Patricio Reyes Moyota Wendy Jaramillo Ortiz Carlos Olmedo Vaca Quimi

AÑO LECTIVO: 2009-2010 I TÉRMINO

SISTEMA DE VENTA DE GAS

Página 1 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

El proyecto consiste en desarrollar un sistema de venta de gas, el mismo que va a ser administrado por tres tipos de usuarios (ADMINISTRADOR, CALL CENTER, VENDEDOR), cada uno de ellos tiene su respectiva funcionalidad: Lista de Actores 1. Cliente 2. Empleado 3. Administrador Descripción de Actores 1. Nombre: Cliente Descripción: Persona que solicita nuevos tanques o servicio técnico a la empresa. Además puede ver sus reservas y el estado en el que se encuentran. Notas: Actor Principal 2. Nombre: Empleado Descripción: Persona que se encarga de retirar los tanques del proveedor, entregar tanques Notas:

Actor Principal

3. Nombre: Administrador Descripción: Persona que se encarga de la administración del sistema: el ingreso, modificación o eliminación de los datos de los clientes, proveedores y empleados. También se encarga de la administración de las cuentas. Notas: Actor Principal

Propósito de la empresa. La empresa tiene como propósito ofrecer a nuestro cliente la venta de gas de tipo industrial y domestico, para la cual cuenta con un stock en nuestras bodegas de almacenamiento, contamos con una cadena de distribuidores para así poder cumplir con las necesidades de nuestra cartera de clientes.

Definición del sistema Procesos Compra a Proveedor Solicitar al proveedor el stock requerido.

Venta a Clientes Página 2 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Reservación del Cliente. Generar factura que especifique el total a cobrar a los clientes por los productos. Especificación de Procesos Compra a Proveedor Solicitar al proveedor el stock requerido. La única persona que puede llevar a cabo este proceso es el gerente, el mismo que debe ingresar al sistema y enviar una solicitud al proveedor escogido especificando la cantidad y el tipo de tanques que se desea comprar.

Venta a Clientes Reservación del Cliente. La única persona que puede llevar a cabo este proceso es el administrador, el mismo que debe ingresar al sistema y asignar las tareas específicas según los requerimientos de la reservación aceptada. Fijar el empleado encargado de entregar el producto al cliente. El gerente debe asignar a un encargado para que cumpla con las tareas de la solicitud. El encargado debe dirigirse a la dirección del cliente con los tanques correspondientes.

Definición de los límites del sistema

Principal vista de usuario para el sistema

Página 3 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

DATOS USUARIOS

FORMULARIO DE PROVEEDORES

FORMULARIO DE EMPLEADOS

FORMULARIO SALIDA DE PRODUCTOS

FORMULARIO DE PEDIDOS

FACTURAS

TIPO DE ACCESO Ingresar

ADMINISTRADOR

Modificar

X

Eliminar

X

Consultar

X

Ingresar

X

Modificar

X

Eliminar

X

Consultar Ingresar

X X

Modificar

X

Eliminar

X

Consultar

X

EMPLEADO

X

Ingresar Modificar

X

Eliminar

X

Consultar Ingresar

X

X X

Modificar

X

Eliminar

X

Consultar Ingresar

X

Modificar

X

Eliminar

X

Consultar

X

Modificación exitosa de los datos del empleado Modificación no exitosa, faltan datos

2. Eliminar empleado Escenarios: •

X X

X

1. Modificar empleado Escenarios: • •

CALL CENTER

Eliminación exitosa del proveedor Página 4 de 50

X X

X

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos



Eliminación del empleado no exitosa, el empleado esta Activo (trabajando)

3. Consultar empleado Escenarios: • •

Consulta de empleado exitosa Consulta de empleado no exitosa, la identificación no existe

4. Ingresar producto Escenarios: • •

Ingreso de nuevo producto exitoso Ingreso producto no exitoso, la identificación no existe

5. Modificar producto Escenarios: • •

Modificación del producto exitosa Modificación del producto no exitosa, la identificación no existe

6. Eliminar producto Escenarios: • •

Eliminación de producto exitoso Eliminación de producto no exitosa, la identificación no existe

7. Consultar producto Escenarios: • Consulta de producto exitosa • Consulta de producto no exitosa, la identificación no existe 8. Ingresar pedido Escenarios: • •

Ingreso exitoso de nuevo pedido Ingreso no exitoso por falta de datos

9. Modificar pedido Escenarios: • •

Modificación del pedido exitosa Modificación del pedido no exitosa, la identificación no existe

10.Eliminar pedido Escenarios: Página 5 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

• •

Eliminación de pedido exitoso Eliminación de pedido no exitosa, la identificación no existe

11.Consultar pedido Escenarios: • •

Consulta de pedido exitosa Consulta de pedido no exitosa, la identificación no existe

12.Realizar factura Escenarios: • •

La factura se realizo con éxito La factura no se pudo realizar con éxito

Descripción de casos de usos Descripción Notas:

C001: Ingresar sistema El administrador, vendedor y call-center podrán ingresar al sistema Prerrequisitos: Ingresar el usuario y contraseña Post Salidas: Mostrar opciones del menú Excepciones: Incompatibilidad entre el login y la contraseña Fallas del sistema Usuario ingresado no existe

Descripción Notas:

C002: Ingresar usuarios El administrador podrá ingresar un usuario Prerrequisitos: Acceder al sistema con administrador Post Salidas: Se almacena información del nuevo usuario Excepciones: Registro duplicado Falta de datos Falla del sistema Página 6 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Ingreso de datos no validos

Descripción Notas:

C003: Modificar usuario El administrador podrá modificar la información de un usuario Prerrequisitos: Acceder al sistema con administrador Haber ingresado al menos un usuario Post Salidas: Se modifica la información de un usuario Excepciones: Falta de datos Fallas del sistema Ingreso de datos no validos

Descripción Notas:

C004:Eliminar usuario El administrador podrá eliminar un registro de un usuario Prerrequisitos: Acceder al sistema con administrador Post Salidas: Se elimina la información de un usuario Excepciones: Fallas del sistema

Página 7 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Descripción Notas:

C004: Consultar usuario El administrador podrá consultar la información de un usuario Prerrequisitos: Acceder al sistema con administrador Post Salidas: Se consulta la información de un usuario Excepciones: No existe el usuario que desea consultar Fallas del sistema

CU:002 Escenario 2.1 Escenario 2.2 Escenario 2.3

C002:Ingresar usuarios Ingreso exitoso de nuevo usuario Ingreso no exitoso, registros duplicados Ingreso no exitoso por falta de datos

CU:003 Escenario 3.1 Escenario 3.2 Escenario 3.3

C003: Modificar usuarios Modificación exitosa de los datos del usuario Modificación no exitosa, registros duplicados Modificación no exitosa, faltan datos

CU:004 Escenario 4.1 Escenario 4.2

C004: Eliminar usuarios Eliminación exitosa del usuario Eliminación no exitosa por fallas del sistema

CU:005

C005: Consultar usuarios Página 8 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Escenario 5.1 Escenario 5.2

Consulta de usuario exitosa Consulta de usuario no existe, la identificación ingresada no existe

CU:006 Escenario 6.1 Escenario 6.2

C006: Ingresar proveedor Ingreso exitoso de nuevo proveedor Ingreso no exitoso por falta de datos

CU:007 Escenario 7.1 Escenario 7.2

C007: Modificar proveedor Modificación exitosa de los datos del proveedor Modificación no exitosa, faltan datos

CU:008 Escenario 8.1 Escenario 8.2

C008: Eliminar proveedor Eliminación exitosa del proveedor Eliminación no exitosa por fallas del sistema

CU:009 Escenario 9.1 Escenario 9.2

C009: Consultar proveedor Consulta de proveedor exitosa Consulta de proveedor no exitosa, la identificación ingresada no existe

CU:010 Escenario 10.1 Escenario 10

C010: Ingresar empleado Ingreso exitoso de nuevo empleado Ingreso no exitoso por falta de datos

CU:011

C011: Modificar empleado Página 9 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Escenario 11.1 Escenario 11.2

Modificación exitosa de los datos del empleado Modificación no exitosa, faltan datos

CU:012 Escenario 12.1 Escenario 12.2

C012: Eliminar empleado Eliminación exitosa del empleado Eliminación del empleado no exitosa, el empleado esta Activo (trabajando)

CU:013 Escenario 13.1 Escenario 13.2

C013: Consultar empleado Consulta de empleado exitosa Consulta de empleado no exitosa, la identificación no existe

CU:014 Escenario 14.1 Escenario 14.2

C014: Ingresar producto Ingreso de nuevo producto exitoso Ingreso producto no exitoso, la identificación no existe

CU:015 Escenario 15.1 Escenario 15.2

C015: Modificar producto Modificación del producto exitosa Modificación del producto no exitosa, la identificación no existe

CU:016 Escenario 16.1 Escenario 16.2

C016: Eliminar producto Eliminación de producto exitoso Eliminación de producto no exitosa, la identificación no existe

Página 10 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

CU:017 Escenario 17.1 Escenario 17.2

C017: Consultar producto Consulta de producto exitosa Consulta de producto no exitosa, la identificación no existe

CU:018 Escenario 18.1 Escenario 18.2

C018: Ingresar pedido Ingreso exitoso de nuevo pedido Ingreso no exitoso por falta de datos

CU:019 Escenario 19.1 Escenario 19.2

C019: Modificar pedido Modificación del pedido exitosa Modificación del pedido no exitosa, la identificación no existe

CU:020 Escenario 20.1 Escenario20.2

C20: Eliminar pedido Eliminación de pedido exitoso Eliminación de pedido no exitosa, la identificación no existe

CU:021 Escenario 21.1 Escenario 21.2

C021: Consultar pedido Consulta de pedido exitosa Consulta de pedido no exitosa, la identificación no existe

CU:022

C022: Realizar factura

Página 11 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Escenario 22.1 Escenario 22.2

La factura se realizo con éxito La factura no se pudo realizar con éxito

Modelo Lógico Anterior:

Cuenta PK

usuario clave

Persona PK

FK1

Cedula Nombre Apellido Genero Edad telefono 1 telefono2 direccion sueldo email1 email2 id_tipo usuario

Tipo_persona PK

id_tipo Nombre

PK

Venta id venta

FK1 FK2 FK3

id_cliente id_empleado id_det_reserva

Reservar

Comprar PK

id_compra

FK1 FK2 FK3

id_empleado id_proveedor id_det_compra

id_producto nombre precio

PK

Detalle_Compra PK

id_compra

FK1

cantidad precio_total id_producto

Detalle_Reserva

Producto

PK

id reserva

FK1 FK2 FK3

id_cliente id_empleado id_det_reserva

Página 12 de 50

PK

id_det_reserva

FK1

cantidad id_producto precio_total

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Modelo Lógico:

Página 13 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Diseño Lógico Página 14 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Persona PK

Cedula

FK1

Nombre Apellido Genero Edad telefono1 telefono2 direccion sueldo email1 email2 id_tipo usuario contraseña

Tipo_persona PK

id_tipo Nombre

PK

Venta id venta

FK1 FK2 FK3

id_cliente id_empleado id_det_reserva

Reservar

Comprar PK

id_compra

FK1 FK2 FK3

id_empleado id_proveedor id_det_compra

id_producto nombre precio

PK

Detalle_Compra PK

id_compra cantidad precio_total

Diseño Conceptual

Página 15 de 50

Detalle_Reserva

Producto

PK

id reserva

FK1 FK2 FK3

id_cliente id_empleado id_det_reserva

PK

id_det_reserva

FK1

cantidad id_producto precio_total

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

INTERACCIÓN DE OBJETOS Cliente (Empleado) Caso 1: Escenario 1.1:

Ingreso Cliente (Empleado) El cliente ingreso con éxito al sistema.

Página 16 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos Validar Ingresar Paquete: Direcciona clave usuario página y del cliente SP: Datos de la cuenta del index.jsp Index.jsp menu.jsp UsuarioCtrl.class Basedatos de Función: usuario, login Datos Cliente presionar cuente del datos login LOGIN Cliente

Caso 2: Escenario 2.1: éxito.

Reservar Tanques El cliente ingreso una reservación de tanques con

Página 17 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos Ingresar Mensaje: Presionar todos Los Ingresar datos los Guardar datos cliente.jsp PedidoCtrl. Ingresar_pedido.jsp PedidoCtrl.class Base de Class completado.jsp Paquete: Ctrl datosFunción: fueron obligatorios registrados Pedido y SP: insertarPedido datos presionar correctamente. Enviar reservar insertarDetallePedido

Caso 3: Escenario 3.1: éxito.

Ver Reservas de tanques pendientes El cliente consulta sus reservas de tanques con

Página 18 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos Función: Presionar Ver Datos las index.jsp ver_pedido.jsp Basede de Paquete: PedidoCtrl.class Ctrl,Srv consultaReservas Reservas/ Res ervaciones SP: listarPedidos

es.java datos * Pendientes

Caso 4: Escenario 4.1:

Eliminar Reservación de tanques pendientes El cliente elimina su reservación de tanques con éxito.

Página 19 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos Función: Presionar ver_pendientes.jsp completado.jsp Base de Mens Paquete: PedidoCtrl. aje: Ctrl, Se Srv class eliminaPedido() Drop SP: eliminaron datos eliminaPedido correctamente EliminaDetalle.

Cliente Caso 5: Escenario 5.1:

Ingreso Cliente El cliente ingreso con éxito al sistema.

Página 20 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos Validar Ingresar Paquete: Direcciona clave Ctrl, página y class Srv del cliente SP: Datos de la Cuenta del index.jsp menu.jsp Basedatos de UsuarioCtrl. UsuarioSrv. class Función: usuario, validarDatos. Datos Cliente presionar cuenta del datos Validardatos(); Ingresar Cliente

Caso 6: Escenario 6.1: buscado.

Consultar datos El cliente consulta

con éxito

Página 21 de 50

los datos del empleado

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos Opción: Presionar Datos de la Datos de los Srv index.jsp UsuarioSrv.jsp Base de Función: UsuarioCtrl. lista_usuario. Paquete: Ctrl, class jsp ConsultaUsuario Consultar consulta empleados listarEmpleados SP:listarEmpleados

datos realizada Empleados

Caso 7: Escenario 7.1: seleccionado.

Modificar datos del Empleado El cliente modifica con éxito los datos del empleado Página 22 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos Opción: Presionar Escribir Paquete: Datos Función: del los Editar Ctrl, datos Srvque se desean Datos del empleado index.jsp completado.jsp Base de UsuarioCtrl. Modifica_usu class modificarUsua Edit modificar SP:modificaUsuario empleado yapresionar Guardar datos modificar rio ario.jsp

Página 23 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Caso 8: Escenario 8.1: Presionar Paquete: Ingresar Función: Opción: todos insertaCuenta Ctrl, Srv losclass ingresar_Usu index.jsp Baseingresar de UsuarioSrv. completado. UsuarioCtrl. class jsp insertausuario Add datos obligatorios SP: y ario.jsp datos insertaUsuario presionar

Registrar empleado con éxito El cliente registró un empleado con éxito al sistema.

insertaCuenta ingresar

Página 24 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Caso 9: Venta de tanques Escenario 9.1: El empleado vende la reservación escogida. Función: Paquete: Datos Se ha confirmado de las Datos Presionar de Confirmar las class reslaervaciones lista_pedidos.jsp completado.jsp Base de PedidoCtrl. PedidoSrv. class listarPendientes Confirmar/ packReservacionT reservaciones reservación escogida poranques SP: por confirmar datos *Tanques listarPendientesT confirmar anque

Página 25 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Caso 10: Ingreso Administrador Escenario 10.1: El Administrador ingreso con éxito al sistema. Validar Ingresar Paquete: Direcciona clave Ctrl, página yFunción: Srv del Administrador SP: Datos de la cuenta del index.jsp menu.jsp Basedatos de UsuarioCtrl. class usuario, validaUsuario ValidaUsuario presionar Adminis cuenta del trador datos Ingresar Adminis trador

Página 26 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Caso 11: Escenario 11.1: sistema. Ingresar Presionar Opción: todos Add modifica_usua index.jsp completado.jsp Baseingresar de UsuarioCtrl. UsuarioSrv. Función: Paquete: insertaCuenta Ctrl, los Srv class datos obligatorios y insertaUsuario SP:insertaUsuario, rio.jsp datos presionar Ingresar class

Registrar datos del empleado El Administrador registró un empleado con éxito al

insertaCuenta

Página 27 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Caso 12: Escenario 12.1: éxito.

Modificar datos del empleado El Administrador modifico datos del empleado con

Página 28 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Mensaje: Presionar Paquete: Función: Se CtrlSP: edit lista_usuario.jsp completado.jsp Base modificarCuenta de Función: Paquete: UsuarioCtrl. UsuarioSrv. SrvModificaron SP: class class modificaCuenta modificarUsuario correctamente los datos modificarUsuarios datos

Página 29 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Caso 13: Escenario 13.1: Presionar Paquete: Mensaje: Se Ctrl,Srv elimino lista_usuarios.jsp Baseeliminar de UsuarioCtrl. Usuario. opcion: class class Eliminar SP: correctamente el usuario datos eliminarUsuario

Eliminar empleado El Administrador elimino a un empleado con éxito.

eliminaCuenta

Página 30 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Caso 14: Escenario 14.1:

Modificar datos del cliente El Administrador modifico datos del cliente con éxito.

Página 31 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Mensaje: Presionar Paquete: Función: Se Ctrl edit index.jsp completado.jsp modifica_usuario.jsp Base modificaCuenta de Función: Paquete: UsuarioCtrl. srvModificaron class SP: modificarUsuario correctamente los datos modificaUsuario SP:odificaCuenta datos

Página 32 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Caso 15: Eliminar cliente Escenario 15.1: El Administrador elimino a un cliente con éxito. Presionar Paquete: Mensaje: El Ctrl, Drop usuario Srvclass se elimino lista_usurios.jsp completado.jsp Base de UsuarioCtrl. Función: eliminar SP: correctamente datos eliminarUsuario eliminarCuenta

Página 33 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Diccionario de Datos:

TABLA TB_PERSONA NOMBRE

TIPO

DESCRIPCION

CARDINALID AD

TAMAÑ O

Cedula

Varchar2

PK, identificador de la tabla.

(1….1)

20

Nombre

Varchar2

Nombre de la persona

(1….1)

20

Página 34 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Apellido

Varchar2

Apellido

(1….1)

20

Genero

Varchar2

Solo son dos entre Masculino y Femenino

(1….1)

20

Edad

Varchar2

La edad de la persona

(1….1)

20

Dirección

Varchar2

Dirección del domicilio de la empresa o persona

(1….1)

20

Telefono1

Varchar2

Teléfono principal de la empresa o persona

(1….1)

20

Telefono2

Varchar2

Es el teléfono secundario de la persona, es para evitar el atributo multivaluado.

(1….1)

20

Email1

Varchar2

Email principal de la empresa o persona

(1….1)

20

(1….1)

20

(1….1)

20

(1….1)

20

(1….1)

20

Email2

Varchar2

Id_tipo

Varchar2

Usuario

Varchar2

Contrasen ia

Varchar2

Es el email secundario de la persona, es para evitar el atributo multivaluado. FK, Es el identificador del tipo de persona al que nos referimos Es el usuario que va a tener la persona o empresa para acceder a la base de datos Es la contraseña que va a tener la persona o empresa para entrar a la base de datos

TABLA TB_TIPO NOMBRE

TIPO

DESCRIPCION

CARDINALID AD

TAMAÑ O

Id_tipo

Varchar2

PK, identificador de la tabla.

(1….1)

20

Nombre

Varchar2

Nombre del tipo de la Persona

(1….1)

20

Página 35 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

TABLA TB_COMPRA NOMBRE

TIPO

DESCRIPCION

CARDINALID AD

TAMAÑ O

Id_compra

Varchar2

PK, identificador de la tabla.

(1….1)

20

Id_emplead o

Varchar2

(1….1)

20

Id_proveedo r

Varchar2

(1….1)

20

Id_det_com pra

Varchar2

(1….1)

20

FK1, identificador del empleado que interviene en la transacción FK2, identificador del proveedor que interviene en la transacción FK2, identificador del detalle de la compra

TABLA TB_DETALLE_COMPRA NOMBRE

TIPO

DESCRIPCION

CARDINALID AD

TAMAÑ O

Id_det_com pra

Varchar2

PK, identificador de la tabla.

(1….1)

20

Id_producto

Varchar2

(1….1)

20

Cantidad

Numéric o

(1….1)

20

Precio_total

Varchar2

(1….1)

20

FK1, identificador del producto Cantidad del producto que compramos Precio total de los productos que compramos TABLA TB_VENTA

NOMBRE

TIPO

DESCRIPCION

CARDINALID AD

TAMAÑ O

Id_venta

Varchar2

PK, identificador de la tabla.

(1….1)

20

Id_emplead o

Varchar2

(1….1)

20

Id_cliente

Varchar2

(1….1)

20

FK1, identificador del empleado que interviene en la transacción FK2, identificador del cliente que interviene en la Página 36 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

transacción Id_det_reser va

Varchar2

FK2, identificador del detalle de la reserva que hace el cliente

(1….1)

20

TABLA TB_DETALLE_RESERVA NOMBRE

TIPO

DESCRIPCION

CARDINALID AD

TAMAÑ O

Id_det_reser va

Varchar2

PK, identificador de la tabla.

(1….1)

20

Id_producto

Varchar2

(1….1)

20

Cantidad

Numéric o

(1….1)

20

Precio_total

Varchar2

(1….1)

20

FK1, identificador del producto Cantidad del producto que reserva el cliente Precio total de los productos que reserva el cliente

TABLA TB_RESERVA NOMBRE

TIPO

DESCRIPCION

CARDINALID AD

TAMAÑ O

Id_reserva

Varchar2

PK, identificador de la tabla.

(1….1)

20

Id_emplead o

Varchar2

(1….1)

20

Id_cliente

Varchar2

(1….1)

20

Id_det_reser va

Varchar2

(1….1)

20

CARDINALID AD

TAMAÑ O

FK1, identificador del empleado que interviene en la transacción FK2, identificador del cliente que interviene en la transacción FK2, identificador del empleado q interviene en la transacción

TABLA TB_PRODUCTO NOMBRE

TIPO

DESCRIPCION

Página 37 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Id_producto

Varchar2

PK, identificador de la tabla.

(1….1)

20

Nombre

Varchar2

Nombre del producto que son: Industrial y Doméstico

(1….1)

20

Precio

Varchar2

Precio del producto

(1….1)

20

Diagrama de Clases:

Página 38 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

Producto Usuario Venta Cuenta Detalle Pedido

id_pedido:String Cedula: id_venta:String Us idDetalle:String uario:s s tring int Id_producto: Nombre:s id_cliente: Pas idPedido:String cedula:String s word:s tring String tring Nombre: string Apellido:s id_empleado:String getUs idProducto:String fechaP:String uario:s tring tring Precio: string Genero:s fecha:String getPas cantidad:String horaP:String s word:s tring tring Stock: stringtring Edad:int hora;String s precio_total:s es etUs tado:String uario:void getId_producto:string Telefono1:s s getidDetalle:String total:s etPastring s word:void tring getNombre:string Telefono2:s tring getid_venta:String getidPedido:String getid_pedido:String Email1:s getid_cliente: getidProducto:String getCedula:String tring getPrecio:string Email2:s tring String getcantidad:String getFechaP:String getStock::string Id_tipo:s getid_empleado:Str getprecio_total:s getHoraP:String tring tring setId_producto:void Us ing s getEs etidDetalle:void uario:s tado:String tring setNombre:void getCedula: getfecha:String s getTotal:s etidPedido:void tring s tring setPrecio:string getNombre:s gethora;String s etidProducto:void etId_pedido:String tring setStock:string getApellido:s gettotal:s s etcantidad:void etCedula:String tring tring getGenero:s s etid_venta:void etprecio_total:void etFechaP:String tring getEdad:int s etid_cliente: void ethoraP:String getTelefono1:s s etid_empleado:voi etEs tado:String tring getTelefono2:s d s etTotal:s tring tring getEmail1:s s etfecha:void tring getEmail2:s s ethora:voidtring getId_tipo:s s ettotal:voidtring getUs uario:s tring s etCedula: void s etNombre:void s etApellido:void s etGenero:void s etEdad:void s etTelefono1:void s etTelefono2:void s etEmail1:void s etEmail2:void s etId_tipo:void s etUs uario:void

Tablas: CREATE TABLE "TB_CUENTA" ( "USUARIO" VARCHAR2 (15) NOT NULL, "CONTRASENIA" VARCHAR2 (20) NOT NULL, CONSTRAINT "CUENTA_PK" PRIMARY KEY ("USUARIO") ) CREATE TABLE “TB_TIPO" ( "ID_TIPO" VARCHAR2(10) NOT NULL, "NOMBRE" VARCHAR2(20) NOT NULL, CONSTRAINT "TB_TIPO_PK" PRIMARY KEY ("ID_TIPO") ) CREATE TABLE "TB_PERSONA" ( "CEDULA" VARCHAR2(10) NOT NULL, "NOMBRE" VARCHAR2(50) NOT NULL, "APELLIDO" VARCHAR2(50) NOT NULL, "GENERO" VARCHAR2(5) NOT NULL, "EDAD" NUMBER NOT NULL, "TELEFONO1" VARCHAR2(10) NOT NULL, "TELEFONO2" VARCHAR2(10), "DIRECCION" VARCHAR2(100) NOT NULL, "EMAIL1" VARCHAR2(25) NOT NULL, "EMAIL2" VARCHAR2(25), "ID_TIPO" VARCHAR2(10) NOT NULL, "USUARIO" VARCHAR2(15) NOT NULL, CONSTRAINT "TB_PERSONA_PK" PRIMARY KEY ("CEDULA"), CONSTRAINT "TB_PERSONA_FK" FOREIGN KEY ("USUARIO") Página 39 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

REFERENCES "TB_CUENTA" ("USUARIO"), CONSTRAINT "TB_PERSONA_FK1" FOREIGN KEY ("ID_TIPO") REFERENCES "TB_TIPO" ("ID_TIPO") ) CREATE TABLE "TB_COMPRA" ( "ID_COMPRA" VARCHAR2(10) NOT NULL, "ID_EMPLEADO" VARCHAR2(10) NOT NULL, "ID_PROVEEDOR" VARCHAR2(10) NOT NULL, "FECHA" VARCHAR2(15) NOT NULL, "HORA" VARCHAR2(15) NOT NULL, "TOTAL" VARCHAR2(10), CONSTRAINT "TB_COMPRA_PK" PRIMARY KEY ("ID_COMPRA"), CONSTRAINT "TB_COMPRA_FK" FOREIGN KEY ("ID_EMPLEADO") REFERENCES "TB_PERSONA" ("CEDULA"), CONSTRAINT "TB_COMPRA_FK2" FOREIGN KEY ("ID_PROVEEDOR") REFERENCES "TB_PERSONA" ("CEDULA") ) CREATE TABLE "TB_PRODUCTO" ( "ID_PRODUCTO" VARCHAR2(10) NOT NULL, "NOMBRE" VARCHAR2(20) NOT NULL, "PRECIO" VARCHAR2(10) NOT NULL, "STOCK" VARCHAR2(5) NOT NULL, CONSTRAINT "TB_PRODUCTO_PK" PRIMARY KEY ("ID_PRODUCTO") ) CREATE TABLE "TB_RESERVA" ( "ID_RESERVA" VARCHAR2(10), "ID_CLIENTE" VARCHAR2(10) NOT NULL, "FECHA" VARCHAR2(15) NOT NULL, "HORA" VARCHAR2(15) NOT NULL, "ESTADO" VARCHAR2(15), "TOTAL" VARCHAR2(10) NOT NULL, CONSTRAINT "TB_RESERVA_PK" PRIMARY KEY ("ID_RESERVA"), CONSTRAINT "TB_RESERVA_FK" FOREIGN KEY ("ID_CLIENTE") REFERENCES "TB_PERSONA" ("CEDULA") ) CREATE TABLE "TB_VENTA" ( "ID_VENTA" VARCHAR2(10) NOT NULL, "ID_CLIENTE" VARCHAR2(10) NOT NULL, "ID_EMPLEADO" VARCHAR2(10) NOT NULL, "FECHA" VARCHAR2(15) NOT NULL, "HORA" VARCHAR2(15) NOT NULL, "TOTAL" VARCHAR2(10), CONSTRAINT "TB_VENTA_PK" PRIMARY KEY ("ID_VENTA"), CONSTRAINT "TB_VENTA_FK" FOREIGN KEY ("ID_CLIENTE") REFERENCES "TB_PERSONA" ("CEDULA"), CONSTRAINT "TB_VENTA_FK2" FOREIGN KEY ("ID_EMPLEADO") REFERENCES "TB_PERSONA" ("CEDULA") ) CREATE TABLE "TB_DET_COMPRA" ( "ID_DET_COMPRA" VARCHAR2(10) NOT NULL, "ID_COMPRA" VARCHAR2(10) NOT NULL, "ID_PRODUCTO" VARCHAR2(10) NOT NULL, "CANTIDAD" VARCHAR2(10), "PRECIO_TOTAL" VARCHAR2(10), CONSTRAINT "TB_DET_COMPRA_PK" PRIMARY KEY ("ID_DET_COMPRA"), CONSTRAINT "TB_DET_COMPRA_FK" FOREIGN KEY ("ID_COMPRA") REFERENCES "TB_COMPRA" ("ID_COMPRA"), CONSTRAINT "TB_DET_COMPRA_FK2" FOREIGN KEY ("ID_PRODUCTO") Página 40 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

REFERENCES

"TB_PRODUCTO" ("ID_PRODUCTO")

) CREATE TABLE "TB_DET_RESERVA" ( "ID_DET_RESERVA" VARCHAR2(10) NOT NULL, "ID_RESERVA" VARCHAR2(10) NOT NULL, "ID_PRODUCTO" VARCHAR2(10) NOT NULL, "CANTIDAD" VARCHAR2(10), "PRECIO_TOTAL" VARCHAR2(10), CONSTRAINT "TB_DET_RESERVA_PK" PRIMARY KEY ("ID_DET_RESERVA"), CONSTRAINT "TB_DET_RESERVA_FK" FOREIGN KEY ("ID_RESERVA") REFERENCES "TB_RESERVA" ("ID_RESERVA"), CONSTRAINT "TB_DET_RESERVA_FK2" FOREIGN KEY ("ID_PRODUCTO") REFERENCES "TB_PRODUCTO" ("ID_PRODUCTO") ) CREATE TABLE "TB_DET_VENTA" ( "ID_DET_VENTA" VARCHAR2(10) NOT NULL, "ID_VENTA" VARCHAR2(10) NOT NULL, "ID_PRODUCTO" VARCHAR2(10) NOT NULL, "CANTIDAD" VARCHAR2(10), "PRECIO_TOTAL" VARCHAR2(10), CONSTRAINT "TB_DET_VENTA_PK" PRIMARY KEY ("ID_DET_VENTA"), CONSTRAINT "TB_DET_VENTA_FK" FOREIGN KEY ("ID_PRODUCTO") REFERENCES "TB_PRODUCTO" ("ID_PRODUCTO"), CONSTRAINT "TB_DET_VENTA_FK2" FOREIGN KEY ("ID_VENTA") REFERENCES "TB_VENTA" ("ID_VENTA") ) Procedures: CUENTA: create or replace package cuenta as type salida is ref cursor; procedure procedure salida); procedure procedure varchar2); procedure

inserta_cuenta(usu varchar2,pass varchar2); consulta_cuenta(usu varchar2, resultado in out modifica_cuentaUsuario(usu varchar2,pass varchar2); modifica_cuentaContrasenia(usu varchar2,pass elimina_cuenta(usu varchar2);

end cuenta; create or replace package body cuenta as procedure inserta_cuenta(usu varchar2,pass varchar2) is begin insert into tb_cuenta (usuario,contrasenia) values(usu,pass); commit; end; is

procedure consulta_cuenta(usu varchar2, resultado in out salida) begin

open resultado for select * from tb_cuenta where

usuario=usu; end; Página 41 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

procedure modifica_cuentaUsuario(usu varchar2,pass varchar2) is begin update tb_cuenta set usuario=usu where contrasenia=pass; commit; end; procedure modifica_cuentaContrasenia(usu varchar2,pass varchar2) is

begin update tb_cuenta set contrasenia=pass where usuario=usu; commit; end;

procedure elimina_cuenta(usu varchar2) is begin delete from tb_cuentawhere usuario=usu; commit; end; end cuenta;

PRODUCTO: create or replace package producto as type salida is ref cursor; procedure consulta_todo_productos(resultado in out salida); procedure modifica_stock(id varchar2,stk varchar2); procedure modifica_stockCompra(id varchar2,stk varchar2); end producto; / create or replace package body producto as procedure consulta_todo_productos(resultado in out salida) is begin open resultado for select * from tb_producto; end; procedure modifica_stock(id varchar2,stk varchar2) is begin update tb_producto set stock = stock-stk where id_producto = id;

= id;

commit; end; procedure modifica_stockCompra(id varchar2,stk varchar2) is begin update tb_producto set stock = stock+stk where id_producto commit; end; Página 42 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

end producto;

USUARIO: create or replace package usuario as type salida is ref cursor; procedure valida_usuario(usu varchar2,pass varchar2, resultado in out salida); procedure consulta_usuario(consulta varchar2 , tipo number, resultado in out salida); procedure consultar_empleados(resultado in out salida); procedure consultar_clientes(resultado in out salida); procedure consultar_proveedores(resultado in out salida); procedure listar_usuarios(resultado in out salida); procedure inserta_usuario(ced varchar2,nom varchar2,ape varchar2,gen varchar2,eda varchar2,tel1 varchar2,tel2 varchar2,dir varchar2,mail1 varchar2,mail2 varchar2,tip varchar2,usu varchar2); procedure modifica_usuario(ced varchar2,nom varchar2,ape varchar2,gen varchar2,eda varchar2,tel1 varchar2,tel2 varchar2,dir varchar2,mail1 varchar2,mail2 varchar2,tip varchar2,usu varchar2); procedure elimina_usuario(ced varchar2); end usuario; create or replace package body usuario as procedure valida_usuario(usu varchar2,pass varchar2, resultado in out salida) is begin open resultado for select * from tb_cuenta where usuario=usu and contrasenia=pass; end; procedure consulta_usuario(consulta varchar2 , tipo number, resultado in out salida) is begin if tipo = 1 then open resultado for select * from tb_persona where nombre like ''||consulta||'%' order by nombre asc; elsif tipo = 2 then open resultado for select * from tb_persona where apellido like ''||consulta||'%' order by apellido asc; elsif tipo = 3 then open resultado for select * from tb_persona where cedula like ''||consulta||'%'; elsif tipo = 4 then open resultado for select * from tb_persona where id_tipo like ''||consulta||'%' order by id_tipo asc; elsif tipo = 5 then open resultado for select * from tb_persona where usuario like ''||consulta||'%'; end if; end; procedure consultar_empleados(resultado in out salida) is begin open resultado for select * from tb_persona where id_tipo =2; Página 43 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

end; procedure consultar_clientes(resultado in out salida) is begin open resultado for select * from tb_persona where id_tipo =3; end; procedure consultar_proveedores(resultado in out salida) is begin open resultado for select * from tb_persona where id_tipo =4; end; procedure listar_usuarios(resultado in out salida) is begin open resultado for select * from tb_persona; end; procedure inserta_usuario(ced varchar2,nom varchar2,ape varchar2,gen varchar2,eda varchar2,tel1 varchar2,tel2 varchar2,dir varchar2,mail1 varchar2,mail2 varchar2,tip varchar2,usu varchar2) is begin insert into tb_persona (cedula,nombre,apellido,genero,edad,telefono1,telefono2,direccion,emai l1,email2,id_tipo,usuario) values(ced,nom,ape,gen,eda,tel1,tel2,dir,mail1,mail2,tip,usu); commit; end; procedure modifica_usuario(ced varchar2,nom varchar2,ape varchar2,gen varchar2,eda varchar2,tel1 varchar2,tel2 varchar2,dir varchar2,mail1 varchar2,mail2 varchar2,tip varchar2,usu varchar2) is begin update tb_persona set nombre=nom,apellido=ape,genero=gen,edad=eda,telefono1=tel1, telefono2=tel2, direccion=dir, email1=mail1, email2=mail2, id_tipo=tip, usuario=usu where cedula=ced; commit; end; procedure elimina_usuario(ced varchar2) is begin delete from tb_persona where cedula=ced; commit; end; end usuario;

RESERVA: create or replace package reserva as type salida is ref cursor; procedure consulta_next_id(maximo in out salida); procedure consulta_next_id_det(maximo in out salida); procedure consulta_reserva(resultado in out salida); procedure consulta_reservaPendientes(resultado in out salida); procedure consulta_reservaVendidas(resultado in out salida); procedure consulta_reservaEliminadas(resultado in out salida); Página 44 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

procedure consulta_reservaxId(id varchar2,resultado in out salida); procedure inserta_reserva(id varchar2,idcl varchar2,fe varchar2,ho varchar2,est varchar2,tot varchar2); procedure modifica_reserva(id varchar2,idcl varchar2,fe varchar2,ho varchar2,est varchar2,tot varchar2); procedure reserva_vendida(id varchar2); procedure elimina_reserva(id varchar2); procedure consulta_det_reserva(idres varchar2,resultado in out salida); procedure inserta_det_reserva(id varchar2,idreserva varchar2,idprod varchar2,cant varchar2,ptotal varchar2); procedure modifica_det_reserva(id varchar2,idreserva varchar2,idprod varchar2,cant varchar2,ptotal varchar2); procedure elimina_det_reserva(id varchar2); end reserva; / create or replace package body reserva as procedure consulta_next_id(maximo in out salida) is begin open maximo for select count(id_reserva)+1 from tb_reserva; end; procedure consulta_next_id_det(maximo in out salida) is begin open maximo for select count(id_det_reserva)+1 from tb_det_reserva; end; procedure consulta_reserva(resultado in out salida) is begin open resultado for select * from tb_reserva order by id_reserva; end; procedure consulta_reservaPendientes(resultado in out salida) is begin open resultado for select * from tb_reserva where estado='pendiente' order by id_reserva; end; procedure consulta_reservaVendidas(resultado in out salida) is begin open resultado for select * from tb_reserva where estado='vendido' order by id_reserva; end; procedure consulta_reservaEliminadas(resultado in out salida) is begin open resultado for select * from tb_reserva where estado='eliminado' order by id_reserva; end; procedure consulta_reservaxId(id varchar2,resultado in out salida) is begin open resultado for select * from tb_reserva where id_reserva=id; end; Página 45 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

procedure inserta_reserva(id varchar2,idcl varchar2,fe varchar2,ho varchar2,est varchar2,tot varchar2) is begin insert into tb_reserva (id_reserva,id_cliente,fecha,hora,estado,total) values(id,idcl,fe,ho,est,tot); commit; end; procedure modifica_reserva(id varchar2,idcl varchar2,fe varchar2,ho varchar2,est varchar2,tot varchar2) is begin update tb_reserva set id_cliente=idcl,fecha=fe,hora=ho,estado=est,total=tot where id_reserva=id; commit; end; procedure reserva_vendida(id varchar2) is begin update tb_reserva set estado='vendido' where id_reserva=id; commit; end; procedure elimina_reserva(id varchar2) is begin update tb_reserva set estado='eliminado' where id_reserva=id; commit; end; procedure consulta_det_reserva(idres varchar2,resultado in out salida) is begin open resultado for select * from tb_det_reserva where id_reserva=idres order by id_det_reserva; end; procedure inserta_det_reserva(id varchar2,idreserva varchar2,idprod varchar2,cant varchar2,ptotal varchar2) is begin insert into tb_det_reserva (id_det_reserva,id_reserva,id_producto,cantidad,precio_total) values(id,idreserva,idprod,cant,ptotal); commit; end; procedure modifica_det_reserva(id varchar2,idreserva varchar2,idprod varchar2,cant varchar2,ptotal varchar2) is begin update tb_det_reserva set id_reserva=idreserva,id_producto=idprod,cantidad=cant,precio_total=pto tal where id_det_reserva=id; commit; end; procedure elimina_det_reserva(id varchar2) is begin delete from tb_det_reservawhere id_det_reserva=id; commit; end; Página 46 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

end reserva; VENTA: create or replace package venta as type salida is ref cursor; procedure consulta_next_id(maximo in out salida); procedure consulta_next_id_det(maximo in out salida); procedure consulta_venta(resultado in out salida); procedure consulta_ventaxID(idventa varchar2,resultado in out salida); procedure inserta_venta(id varchar2,idcl varchar2,idemp varchar2,fe varchar2,ho varchar2,tot varchar2); procedure modifica_venta(id varchar2,idcl varchar2,idemp varchar2,fe varchar2,ho varchar2,tot varchar2); procedure elimina_venta(id varchar2); procedure consulta_det_venta(idventa varchar2,resultado in out salida); procedure inserta_det_venta(id varchar2,idventa varchar2,idprod varchar2,cant varchar2,ptotal varchar2); procedure modifica_det_venta(id varchar2,idventa varchar2,idprod varchar2,cant varchar2,ptotal varchar2); procedure elimina_det_venta(id varchar2); end venta; / create or replace package body venta as procedure consulta_next_id(maximo in out salida) is begin open maximo for select count(id_venta)+1 from tb_venta; end; procedure consulta_next_id_det(maximo in out salida) is begin open maximo for select count(id_det_venta)+1 from tb_det_venta; end; procedure consulta_venta(resultado in out salida) is begin open resultado for select * from tb_venta; end; procedure consulta_ventaxID(idventa varchar2,resultado in out salida) is begin open resultado for select * from tb_venta where id_venta = idventa; end; procedure inserta_venta(id varchar2,idcl varchar2,idemp varchar2,fe varchar2,ho varchar2,tot varchar2) is begin insert into tb_venta (id_venta,id_cliente,id_empleado,fecha,hora,total) values(id,idcl,idemp,fe,ho,tot); commit; end; Página 47 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

procedure modifica_venta(id varchar2,idcl varchar2,idemp varchar2,fe varchar2,ho varchar2,tot varchar2) is begin update tb_venta set id_cliente=idcl,id_empleado=idemp,fecha=fe,hora=ho,total=tot where id_venta=id; commit; end; procedure elimina_venta(id varchar2) is begin delete from tb_ventawhere id_venta=id; commit; end; procedure consulta_det_venta(idventa varchar2,resultado in out salida) is begin open resultado for select * from tb_det_venta where id_venta=idventa; end; procedure inserta_det_venta(id varchar2,idventa varchar2,idprod varchar2,cant varchar2,ptotal varchar2) is begin insert into tb_det_venta (id_det_venta,id_venta,id_producto,cantidad,precio_total) values(id,idventa,idprod,cant,ptotal); commit; end; procedure modifica_det_venta(id varchar2,idventa varchar2,idprod varchar2,cant varchar2,ptotal varchar2) is begin update tb_det_venta set id_producto=idprod,cantidad=cant,precio_total=ptotal,id_venta=idventa where id_det_venta=id; commit; end; procedure elimina_det_venta(id varchar2) is begin delete from tb_det_ventawhere id_det_venta=id; commit; end; end venta;

COMPRA: create or replace package compra as type salida is ref cursor; procedure consulta_next_id(maximo in out salida); procedure consulta_next_id_det(maximo in out salida); procedure consulta_compra(resultado in out salida); procedure consulta_compraxID(idcompra varchar2,resultado in out salida); procedure inserta_compra(id varchar2,idemp varchar2,idprov varchar2,fe varchar2,ho varchar2,tot varchar2); Página 48 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

procedure modifica_compra(id varchar2,idemp varchar2,idprov varchar2,fe varchar2,ho varchar2,tot varchar2); procedure elimina_compra(id varchar2); procedure consulta_det_compra(idcompra varchar2,resultado in out salida); procedure inserta_det_compra(id varchar2,idcompra varchar2,idprod varchar2,cant varchar2,ptotal varchar2); procedure modifica_det_compra(id varchar2,idcompra varchar2,idprod varchar2,cant varchar2,ptotal varchar2); procedure elimina_det_compra(id varchar2); end compra; / create or replace package body compra as procedure consulta_next_id(maximo in out salida) is begin open maximo for select count(id_compra)+1 from tb_compra; end; procedure consulta_next_id_det(maximo in out salida) is begin open maximo for select count(id_det_compra)+1 from tb_det_compra; end; procedure consulta_compra(resultado in out salida) is begin open resultado for select * from tb_compra; end; procedure consulta_compraxID(idcompra varchar2,resultado in out salida) is begin open resultado for select * from tb_compra where id_compra = idcompra; end; procedure inserta_compra(id varchar2,idemp varchar2,idprov varchar2,fe varchar2,ho varchar2,tot varchar2) is begin insert into tb_compra (id_compra,id_empleado,id_proveedor,fecha,hora,total) values(id,idemp,idprov,fe,ho,tot); commit; end; procedure modifica_compra(id varchar2,idemp varchar2,idprov varchar2,fe varchar2,ho varchar2,tot varchar2) is begin update tb_compra set id_empleado=idemp,id_proveedor=idprov,fecha=fe,hora=ho,total=tot where id_compra=id; commit; end; procedure elimina_compra(id varchar2) is begin delete from tb_comprawhere id_compra=id; commit; Página 49 de 50

Escuela Superior Politécnica del Litoral Siste ma de Base de Datos

end; procedure consulta_det_compra(idcompra varchar2,resultado in out salida) is begin open resultado for select * from tb_det_compra where id_compra=idcompra; end; procedure inserta_det_compra(id varchar2,idcompra varchar2,idprod varchar2,cant varchar2,ptotal varchar2) is begin insert into tb_det_compra (id_det_compra,id_compra,id_producto,cantidad,precio_total) values(id,idcompra,idprod,cant,ptotal); commit; end; procedure modifica_det_compra(id varchar2,idcompra varchar2,idprod varchar2,cant varchar2,ptotal varchar2) is begin update tb_det_compra set id_producto=idprod,cantidad=cant,precio_total=ptotal,id_compra=idcompr a where id_det_compra=id; commit; end; procedure elimina_det_compra(id varchar2) is begin delete from tb_det_comprawhere id_det_compra=id; commit; end; end compra;

Página 50 de 50

Related Documents