13
ESCUELA SUPERIOR POLITECNICA DE CHIMBORAZO FACULTAD DE INFORMÁTICA Y ELECTRÓNICA ESCUELA DE INGENIERÍA ELECTRÓNICA Y TECNOLOGIA EN COMPUTACIÓN BASE DE DATOS I PROYECTO FINAL Realizado por: Cristian Núñez 245001 Vanessa Vásconez 245030 Jessica Castillo 245014 Semestre: Quinto

Proyecto Final Base de Datos i

Embed Size (px)

Citation preview

Page 1: Proyecto Final Base de Datos i

ESCUELA SUPERIOR

POLITECNICA DE

CHIMBORAZO

FACULTAD DE INFORMÁTICA Y ELECTRÓNICA

ESCUELA DE INGENIERÍA ELECTRÓNICA

Y TECNOLOGIA EN COMPUTACIÓN

BASE DE DATOS I

PROYECTO FINAL

Realizado por:

Cristian Núñez 245001 Vanessa Vásconez 245030 Jessica Castillo 245014

Semestre: Quinto

Profesor: Ing. Ivonne Rodríguez.

Riobamba – Ecuador

Page 2: Proyecto Final Base de Datos i

Base de Datos I Proyecto Final

I.- TEMA.- SISTEMA DE CONTROL DE LA LIBRERÍA MEGABOOK

II.- PROPÓSITOS.-

Registrar las mercaderías. Registrar los productos por grupo. Registrar la mercadería con mas stock. Registrar la mercadería con menos stock. Registrar las facturas mas recientes. Registrar los pedidos con su proveedor. Registrar los pedidos pendientes Registrar marcas disponibles. Registrar las marcas con mas pedidos

III.- DESCRIPCIÓN DEL ESCENARIO.- La librería MegaBook desea automatizar un sistema de control de productos que tienen disponibles para la venta. Los proveedores son aquellos que entregan productos, los mismos que tienen un código de proveedor, nombre, dirección y un teléfono.

Se desea mostrar la lista de productos que se entrega a la librería con fecha indicada, el producto posee un código, y un nombre; cada producto posee una marca, las mismas que ya son establecidas por la base de datos y a la vez esta indistintamente puede pertenecer a otros productos, marca tendrá especificado su nombre.

Los productos se clasifican por tipos los mismos que tendrán un código, y nombre, dependiendo del tipo de producto este se asignará a una área específica que a la vez esta área estará a cargo de un empleado que se encargará de la atención al cliente mas no de la venta .

Cada vez que se venda un producto se deberá registrar la venta por medio de una factura, la misma que poseerá una fecha, estado y un total. Por cada venta se deberá registrar el precio del producto unitario, la cantidad total vendida y la fecha en la que se realiza la venta. Cada vez que se realice una venta la cantidad de productos vendidos deberá ser restado del stock de los productos

VI.- REQUERIMIENTOS DE CONSULTA.-

1.- ADOQUERY1:

-Listado de mercadería por nombre con su stock

CÓDIGO SQL:

select nombre_prod as 'PRODUCTO', descripcion_car as 'CARACTERISTICA', nombre as 'MARCA', precio ,stock

from mercaderia,marca,prod_car,caracteristica,producto

where mercaderia.cod_prod = prod_car.cod_prod and prod_car.cod_prod=producto.cod_prod

and mercaderia.cod_car=prod_car.cod_car and prod_car.cod_car=caracteristica.cod_car and mercaderia.cod_mar=marca.cod_mar

- 2 -

Page 3: Proyecto Final Base de Datos i

Base de Datos I Proyecto Final

2.- ADOQUERY2:

-Listado de productos por grupo (mediante una búsqueda)

CÓDIGO SQL:

select cod_prod as 'CODIGO', producto.cod_grup as'GRUPO',nombre_prod as 'PPRODUCTO'

from grupo, producto

where grupo.cod_grup=producto.cod_grup and nombre_grup=:grupo

3.- ADOQUERY3:

- 3 -

Page 4: Proyecto Final Base de Datos i

Base de Datos I Proyecto Final

-Presentar la mercadería con más stock

CÓDIGO SQL:

select top 1 nombre_prod as 'PRODUCTO', descripcion_car as 'CARACTERISTICA', nombre as 'MARCA',precio,stock

from mercaderia,prod_car, caracteristica,producto,marca

where mercaderia.cod_prod=prod_car.cod_prod and prod_car.cod_prod=producto.cod_prod and mercaderia.cod_car=prod_car.cod_car and prod_car.cod_car=caracteristica.cod_car and mercaderia.cod_mar=marca.cod_mar

order by stock Desc

4.- ADOQUERY4:

-Presentar la mercadería con menos stock

CÓDIGO SQL:

select top 1 nombre_prod as 'PRODUCTO', descripcion_car as 'CARACTERISTICA', nombre as 'MARCA',precio,stock

from mercaderia,prod_car, caracteristica,producto,marca

where mercaderia.cod_prod=prod_car.cod_prod and prod_car.cod_prod=producto.cod_prod and mercaderia.cod_car=prod_car.cod_car and prod_car.cod_car=caracteristica.cod_car and mercaderia.cod_mar=marca.cod_mar

order by stock asc

- 4 -

Page 5: Proyecto Final Base de Datos i

Base de Datos I Proyecto Final

5.- ADOQUERY5:

-Mostrar facturas mas recientes es decir de la ultima fecha

CÓDIGO SQL:

select nombre_ge AS 'GERENTE',num_fac AS 'FACTURA',FECHA,ESTADO,TOTAL

from proveedor,fac_proveedor

where fecha=(select top 1 fecha from fac_proveedor) and proveedor.cod_pro=fac_proveedor.cod_pro

- 5 -

Page 6: Proyecto Final Base de Datos i

Base de Datos I Proyecto Final

6.- ADOQUERY6:

-Presentar el listado de pedidos con su respectivo nombre de proveedor al que pertenece dicho pedido

CÓDIGO SQL:

SELECT COD_P AS 'CODIGO PEDIDO', NOMBRE_GE AS 'PROVEEDOR',FAC_PROVEEDOR.NUM_FAC AS 'NUMERO DE FACTURA', FECHA_P AS 'FECHA', ESTADO_P AS 'ESTADO'

FROM PEDIDO, FAC_PROVEEDOR, PROVEEDOR

WHERE PEDIDO.COD_PRO=FAC_PROVEEDOR.COD_PRO AND FAC_PROVEEDOR.COD_PRO= PROVEEDOR.COD_PRO AND PEDIDO.NUM_FAC=FAC_PROVEEDOR.NUM_FAC

7.- ADOQUERY7:

-Ver cuantos pedidos están pendientes

CÓDIGO SQL:

SELECT COUNT(COD_P)AS 'PENDIENTES'

FROM PEDIDO

WHERE ESTADO_P='P'

- 6 -

Page 7: Proyecto Final Base de Datos i

Base de Datos I Proyecto Final

8.- ADOQUERY8:

-Marcar la mercadería disponible en stock

CÓDIGO SQL:

SELECT NOMBRE,MERCADERIA.COD_MAR AS 'MARCAS DISPONIBLES'

FROM MARCA,MERCADERIA

WHERE (MARCA.COD_MAR*=MERCADERIA.COD_MAR)

- 7 -

Page 8: Proyecto Final Base de Datos i

Base de Datos I Proyecto Final

9.- ADOQUERY8:

-Marcar las mercaderías con más pedidos realizados

CÓDIGO SQL:

SELECT TOP 1 MARCA.COD_MAR AS 'CODIGO', NOMBRE AS 'MARCA',COUNT(MARCA.COD_MAR) AS 'CANTIDAD PEDIDOS'

FROM PEDIDO,CONTIENE,MERCADERIA,MARCA

WHERE PEDIDO.COD_P=CONTIENE.COD_P AND CONTIENE.COD_PROD=MERCADERIA.COD_PROD AND CONTIENE.COD_CAR=MERCADERIA.COD_CAR AND CONTIENE.COD_MAR=MERCADERIA.COD_MAR AND MERCADERIA.COD_MAR=MARCA.COD_MAR

GROUP BY MARCA.COD_MAR,NOMBRE

ORDER BY 3 DESC

- 8 -

Page 9: Proyecto Final Base de Datos i

Base de Datos I Proyecto Final

V.- ESQUEMA DE LA BASE DE DATOS.-

5.1.-MODELO CONCEPTUAL DE CDM

5.2.- MODELO PDM

- 9 -

COD_UBI = COD_UBI

COD_CAR = COD_CARCOD_PROD = COD_PROD

COD_MAR = COD_MAR

COD_P = COD_P

COD_CAR = COD_CARCOD_PROD = COD_PROD

COD_MAR = COD_MAR

COD_CAR = COD_CAR

COD_PROD = COD_PROD

COD_GRUP = COD_GRUP

COD_PRO = COD_PRONUM_FAC = NUM_FAC

COD_PRO = COD_PRO

PROVEEDOR

COD_PRO char(5)NOMBRE_GE char(20)DIRECCION_PRO char(30)TELEFONO char(5)

PEDIDO

COD_P char(5)COD_PRO char(5)NUM_FA C intFECHA_P datetimeESTADO_P char(3)

GRUPO

COD_GRUP char(5)COD_UBI char(5)NOMBRE_GRUP char(20)

FAC_PROVEEDOR

COD_PRO char(5)NUM_FA C intFECHA char(10)ESTADO char(20)TOTAL money

PRODUCTO

COD_PROD char(5)COD_GRUP char(5)NOMBRE_PROD char(20)

CARACTERISTICA

COD_CAR char(30)DESCRIPCION_CAR char(50)

MARCA

COD_MA R char(5)NOMBRE char(20)

UBICACION

COD_UBI char(5)NOMBRE_UBI char(35)

PROD_CAR

COD_CAR char(30)COD_PROD char(5)

MERCA DERIA

COD_CAR char(30)COD_PROD char(5)COD_MA R char(5)PRECIO moneySTOCK int

CONTIENE

COD_CAR char(30)COD_PROD char(5)COD_MA R char(5)COD_P char(5)CANTIDA D_P int

Relation_89

Relation_87

Relation_86

Relation_81Relation_80

Relation_77

Relation_76

TIENE

REGISTRA

FACILITA

PROVEEDOR

COD_PRONOMBRE_GEDIRECCION_PROTELEFONO

PEDIDO

COD_PFECHA_PESTADO_P

GRUPO

COD_GRUPNOMBRE_GRUP

FAC_PROVEEDOR

NUM_FACFECHAESTADOTOTAL

PRODUCTO

COD_PRODNOMBRE_PROD

CARACTERISTICA

COD_CARDESCRIPCION_CAR

MARCA

COD_MARNOMBRE

UBICACION

COD_UBINOMBRE_UBI

PROD_CAR

MERCADERIA

PRECIOSTOCK

CONTIENE

CANTIDAD_P

Page 10: Proyecto Final Base de Datos i

Base de Datos I Proyecto Final

5.3.- VISTA DEL DIAGRAMA DESDE EL DBMS (SQL Server)

- 10 -

Page 11: Proyecto Final Base de Datos i

Base de Datos I Proyecto Final

VI.- APLICACIÓN.-

- PANTALLA DE PRESENTACIÓN

-INGRESO DE LOS DATOS DE LOS NUEVOS PROVEEDORES A SU TABLA

- 11 -

Page 12: Proyecto Final Base de Datos i

Base de Datos I Proyecto Final

- INGRESO DE LOS PRODUCTOS

- 12 -