Sie sind auf Seite 1von 22

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

1. INTRODUCCIN
Una base de datos es un lugar de almacenamiento de datos. Como en un archivo de datos, una base de datos no presenta informacin directamente al usuario; el usuario ejecuta una aplicacin que tiene acceso a los datos de la base de datos y los presenta al usuario en un formato inteligible. Los sistemas de bases de datos son ms eficaces que los archivos de datos, ya que los datos estn mejor organizados. En una base de datos bien diseada, no hay elementos de datos duplicados que el usuario o la aplicacin deba actualizar al mismo tiempo. Los elementos de datos estn agrupados en una nica estructura o registro, y se pueden definir relaciones entre dichas estructuras y registros. La Base de Datos que presentamos est con Data Verdadera obtenida en la Tienda de Artefactos DMedroa SAC, ya que esta BD pertenece a un Sistema de Inventarios que ellos poseen. Presentamos los CONSULTAS que creemos lo ms importantes, viendo las necesidad que necesitaba este negocio y las facilidad que les brindaba el Sistema de Inventarios que poseen. La Base de Datos Original se encuentra en formato DBF y ha sido trasladada a Sql, para materia de estudio e investigacin

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

Proyecto de Base de Datos Sistema de Inventarios y Facturacin

El presente trabajo tiene por finalidad mostrar la construccin y uso eficiente de una base de datos a trabes del modelamiento, siguiendo con un profundo anlisis todas las necesidades que el usuario pueda tener en cualquier momento.

Hemos tomado la Plantilla de Desarrollo de un Sistema de Inventarios y Facturacin que se encuentra trabajando en una tienda de Electrodomsticos DMedroa SAC, que se encuentra ubicado en la Av. Abancay. El sistema que poseen ellos es un Sistema de Inventarios y Facturacin totalmente abierto que se adapta a las necesidades de cualquier negocio, y es por eso que tambin resulta interesante el estudio y la ingestacin de la estructura de de su Base de Datos.

La Base de Datos Original se encuentra en formato DBF, pero la cual hemos pasado a SQL para seguir todas las instrucciones que nos ha enseado el Curso de Base de Datos. LISTADO DE TABLAS Nivel 1: tabla que representa a la familia de productos que tenemos en nuestro inventario. Nivel2 : tabla que representa a la subfamilia de productos que tenemos en nuestro inventario. Nivel 3: tabla que representa al grupo de productos que tenemos en nuestro inventario. Nivel 4: tabla que representa a los items de productos listos para la compra y venta q tenemos en nuestro inventario. Proveedores . Clientes.

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

Usuarios : es decir las personas que tiene acceso y manejo del sistema, asi como los responsables de facturacin. Compras : tabla donde se registra los datos principales de una operacin de compras. Detalles_compra : tabla donde se registra los detalles de movimiento de items efectuados por una compra. Ventas : tabla donde registra los datos principales de una operacin de ventas. Detalles_venta : tabla donde se registra los detalles de movimiento de items efectuados por una venta. Este Diseo se basa en el tpico sistema de Inventarios y Facturacin que puede ser til para cualquier empresa. Los items tienen esta forma peculiar de registro para poder establecer jerarquias de orden. ANALISIS DEL SISTEMA Diagrama de Caso de Uso : Cliente solicitando producto, empleando atendiendo el pedido

solicita producto

cliente verifica entrega

usuario vendedor cancela el pedido

recoge la info del pedido

verifica producto en stock

entregando la mercaderia

preparando el pedido calculando el importe

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

Diagrama de Caso de Uso : Empleado o encargado de la compras para el almacen interactuando con el proveedor de productos ( tiene la misma estructura del primer diagrama ya que se cumple las misma funciones pero solo que en diferentes ambientes)

solicita producto

Usuario - Vendedor verifica entrega

Proveedor cancela el pedido

recoge la info del pedido

verifica producto en stock

entregando la mercaderia

preparando el pedido calculando el importe

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

1.1. MODELAMIENTO EN ERWIN PLATINUM 4.0 1.1.1. DIAGRAMA ENTIDAD/ RELACION


nivel1 compras_proveedor proveedor detalles_compras compras

nivel2

compras_usuario

nivel3 ventas_usuario usuario

ventas nivel4

ventas_cliente detalles_ventas cliente

1.1.2. DIAGRAMA LGICO

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

proveedor nivel1 idfamilia familia detalles_compras nivel2 idsubfamilia subfamilia idfamilia (FK) iditem (FK) idcompra (FK) item punit cant total compras idcompra nrodoc idusuario fecha importe igv total tcambio moneda tipo_pago tipocompra tipodoc idproveedor estado compras_proveedor idcompra (FK) idproveedor (FK) idproveedor proveedor direccion distrito provincia ruc telefono fax email rubro contacto telfcontacto cargo

compras_usuario idcompra (FK) idusuario (FK)

nivel3 idgrupo grupo idsubfamilia (FK)

usuario ventas_usuario ventas idventa nrodoc idusuario fecha importe igv total tcambio moneda tipo_pago tipoventa tipodoc idclie estado idventa (FK) idusuario (FK) idusuario usuario direccion distrito telefono movil puesto dni login password email

nivel4 iditem item idgrupo (FK) prec_compra prec_venta stock_ini fecha_stock_ini stock_actual medida

cliente idclie nombre ruc dni direccion distrito provincia telefono fax email banco contacto ctacte sector aval rucaval telefaval contacto1 telefcontact1 contacto2 telefcontacto2

detalles_ventas iditem (FK) idventa (FK) item punit cant total

ventas_cliente idventa (FK) idclie (FK)

1.1.3. DIAGRAMA FISICO


proveedor nivel1 idfamilia: char(18) familia: char(18) nivel4_compras nivel2 idsubfamilia: char(18) subfamilia: char(18) idfamilia: char(18) iditem: char(18) idcompra: char(18) item: varchar(20) punit: int cant: int total: int compras idcompra: char(18) nrodoc: char(18) idusuario: char(18) fecha: char(18) importe: char(18) igv: char(18) total: char(18) tcambio: char(18) moneda: char(18) tipo_pago: char(18) tipocompra: char(18) tipodoc: char(18) idproveedor: char(18) estado: char(18) compras_proveedor idcompra: char(18) idproveedor: char(18) idproveedor: char(18) proveedor: char(18) direccion: char(18) distrito: varchar(20) provincia: varchar(20) ruc: char(18) telefono: char(18) fax: varchar(20) email: varchar(20) rubro: char(18) contacto: varchar(20) telfcontacto: varchar(20) cargo: varchar(20)

compras_usuario idcompra: char(18) idusuario: char(18)

nivel3 idgrupo: char(18) grupo: char(18) idsubfamilia: char(18)

usuario ventas_usuario ventas idventa: char(18) nrodoc: char(18) idusuario: char(18) fecha: char(18) importe: char(18) igv: char(18) total: char(18) tcambio: char(18) moneda: char(18) tipo_pago: char(18) tipoventa: char(18) tipodoc: char(18) idclie: char(18) estado: varchar(20) idventa: char(18) idusuario: char(18) idusuario: char(18) usuario: char(18) direccion: char(18) distrito: varchar(20) telefono: char(18) movil: varchar(20) puesto: char(18) dni: char(18) login: char(18) password: char(18) email: char(18)

nivel4 iditem: char(18) item: varchar(20) idgrupo: char(18) prec_compra: char(18) prec_venta: char(18) stock_ini: char(18) fecha_stock_ini: char(18) stock_actual: char(18) medida: int

cliente idclie: char(18) nombre: char(18) ruc: char(18) dni: varchar(20) direccion: char(18) distrito: varchar(20) provincia: varchar(20) telefono: char(18) fax: varchar(20) email: varchar(20) banco: varchar(20) contacto: char(18) ctacte: varchar(20) sector: varchar(20) aval: char(18) rucaval: char(18) telefaval: char(18) contacto1: char(18) telefcontact1: char(18) contacto2: char(18) telefcontacto2: char(18)

nivel4_ventas iditem: char(18) idventa: char(18) item: varchar(20) punit: int cant: int total: int

ventas_cliente idventa: char(18) idclie: char(18)

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

2. CREACIN DE LA BASE DE DATOS EN MICROSOFT SQL SERVER 2000 PERSONAL

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

3. SQL
3.1. LDD (LENGUAJE DE DEFINICIN DE DATOS) 3.1.1. SQL- - CREACIN DE LA BASE DE DATOS

CREATE DATABASE PROYECTO ON PRIMARY (NAME = PROYECTO_data, FILENAME = 'd:\Archivos de Programa\Microsoft SQL Server\MSSQL\Data\PROYECTO_Data.mdf', SIZE = 8, MAXSIZE = 20, FILEGROWTH = 20% ) LOG ON (NAME = PROYECTO_log, FILENAME = 'd:\Archivos de Programa\Microsoft SQL Server\MSSQL\Data\PROYECTO_log.Ldf', SIZE = 5, MAXSIZE = 8, FILEGROWTH = 1MB )

3.1.2.

SQL- - CREACIN DE LAS TABLAS

CREATE TABLE nivel1 ( idfamilia char(18) NOT NULL, familia char(18) NULL) CREATE TABLE nivel2 ( idsubfamilia char(18) NOT NULL, subfamilia char(18) NULL, idfamilia char(18) NOT NULL) CREATE TABLE nivel3 ( idgrupo char(18) NOT NULL, grupo char(18) NULL, idsubfamilia char(18) NOT NULL)

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

CREATE TABLE nivel4 ( iditem char(18) NOT NULL, item varchar(20) NULL, idgrupo char(18) NOT NULL, prec_compra char(18) NULL, prec_venta char(18) NULL, stock_ini char(18) NULL, fecha_stock_ini char(18) NULL, stock_actual char(18) NULL, medida int NULL) CREATE TABLE proveedor ( idproveedor char(18) NOT NULL, proveedor char(18) NULL, direccion char(18) NULL, distrito varchar(20) NULL, provincia varchar(20) NULL, ruc char(18) NULL, telefono char(18) NULL, fax varchar(20) NULL, email varchar(20) NULL, rubro char(18) NULL, contacto varchar(20) NULL, telfcontacto varchar(20) NULL, cargo varchar(20) NULL) CREATE TABLE cliente ( idclie char(18) NOT NULL, nombre char(18) NULL, ruc char(18) NULL, dni varchar(20) NULL, direccion char(18) NULL, distrito varchar(20) NULL, provincia varchar(20) NULL, telefono char(18) NULL, fax varchar(20) NULL, email varchar(20) NULL, banco varchar(20) NULL, contacto char(18) NULL, ctacte varchar(20) NULL, sector varchar(20) NULL, aval char(18) NULL, rucaval char(18) NULL,

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

telefaval char(18) NULL, contacto1 char(18) NULL, telefcontact1 char(18) NULL, contacto2 char(18) NULL, telefcontacto2 char(18) NULL) CREATE TABLE compras ( idcompra char(18) NOT NULL, nrodoc char(18) NULL, idusuario char(18) NULL, fecha char(18) NULL, importe char(18) NULL, igv char(18) NULL, total char(18) NULL, tcambio char(18) NULL, moneda char(18) NULL, tipo_pago char(18) NULL, tipocompra char(18) NULL, tipodoc char(18) NULL, idproveedor char(18) NULL, estado char(18) NULL) CREATE TABLE ventas ( idventa char(18) NOT NULL, nrodoc char(18) NULL, idusuario char(18) NULL, fecha char(18) NULL, importe char(18) NULL, igv char(18) NULL, total char(18) NULL, tcambio char(18) NULL, moneda char(18) NULL, tipo_pago char(18) NULL, tipoventa char(18) NULL, tipodoc char(18) NULL, idclie char(18) NULL, estado varchar(20) NULL) CREATE TABLE usuario ( idusuario char(18) NOT NULL, usuario char(18) NULL, direccion char(18) NULL, distrito varchar(20) NULL, telefono char(18) NULL, movil varchar(20) NULL,

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

puesto dni login password email

char(18) NULL, char(18) NULL, char(18) NULL, char(18) NULL, char(18) NULL)

CREATE TABLE compras_usuario ( idcompra char(18) NOT NULL, idusuario char(18) NOT NULL) CREATE TABLE ventas_usuario ( idventa char(18) NOT NULL, idusuario char(18) NOT NULL) CREATE TABLE ventas_cliente ( idventa char(18) NOT NULL, idclie char(18) NOT NULL) CREATE TABLE nivel4_ventas ( iditem char(18) NOT NULL, idventa char(18) NOT NULL, item varchar(20) NULL, punit int NULL, cant int NULL, total int NULL) CREATE TABLE nivel4_compras ( iditem char(18) NOT NULL, idcompra char(18) NOT NULL, item varchar(20) NULL, punit int NULL, cant int NULL, total int NULL CREATE TABLE compras_proveedor ( idcompra char(18) NOT NULL, idproveedor char(18) NOT NULL) 3.1.3. SQL - CREACIN DE CLAVES PRIMARAS

ALTER TABLE compras ADD PRIMARY KEY (idcompra)

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

ALTER TABLE ventas ADD PRIMARY KEY (idventa) ALTER TABLE compras_proveedor ADD PRIMARY KEY (idcompra, idproveedor) ALTER TABLE usuario ADD PRIMARY KEY (idusuario) ALTER TABLE compras_usuario ADD PRIMARY KEY (idcompra, idusuario) ALTER TABLE ventas_usuario ADD PRIMARY KEY (idventa, idusuario) ALTER TABLE ventas_cliente ADD PRIMARY KEY (idventa, idclie) ALTER TABLE nivel4_ventas ADD PRIMARY KEY (iditem, idventa) ALTER TABLE nivel4_compras ADD PRIMARY KEY (iditem, idcompra) 3.1.4. SQL - CREACIN DE CLAVES FORNEAS

ALTER TABLE nivel2 ADD FOREIGN KEY (idfamilia) REFERENCES nivel1 go ALTER TABLE nivel3 ADD FOREIGN KEY (idsubfamilia) REFERENCES nivel2 go ALTER TABLE nivel4 ADD FOREIGN KEY (idgrupo) REFERENCES nivel3 go

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

ALTER TABLE compras_proveedor ADD FOREIGN KEY (idproveedor) REFERENCES proveedor go ALTER TABLE compras_proveedor ADD FOREIGN KEY (idcompra) REFERENCES compras go ALTER TABLE compras_usuario ADD FOREIGN KEY (idusuario) REFERENCES usuario go ALTER TABLE compras_usuario ADD FOREIGN KEY (idcompra) REFERENCES compras go ALTER TABLE ventas_usuario ADD FOREIGN KEY (idusuario) REFERENCES usuario go ALTER TABLE ventas_usuario ADD FOREIGN KEY (idventa) REFERENCES ventas go ALTER TABLE ventas_cliente ADD FOREIGN KEY (idclie) REFERENCES cliente go ALTER TABLE ventas_cliente ADD FOREIGN KEY (idventa) REFERENCES ventas

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

go ALTER TABLE nivel4_ventas ADD FOREIGN KEY (idventa) REFERENCES ventas go ALTER TABLE nivel4_ventas ADD FOREIGN KEY (iditem) REFERENCES nivel4 go ALTER TABLE nivel4_compras ADD FOREIGN KEY (idcompra) REFERENCES compras go ALTER TABLE nivel4_compras ADD FOREIGN KEY (iditem) REFERENCES nivel4 go

3.2. LMD (LENGUAJE DE MANIPULACIN DE DATOS) 3.2.1. SQL- - INTRODUCCIN DE REGISTROS EN LA BASE DE DATOS

3.2.2. SQL - CONSULTAS

Consulta que muestra todas las compras anuladas

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

consulta que nos muestra la Cantidad de Dinero en Compras por Subfamilias

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

Consulta que muestra la cantidad de dinero en ventas por subfamilias

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

Consulta que muestra los detalles de ventas con las familias, subfamilias y items correspondientes, as como tambin el total en cantidad vendidas y el stock actual

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

Consulta que muestra los detalles de compras con sus items correspondientes, el total en cantidad compradas y el stock actual

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

Consulta que muestra nuestros proveedores asi como la cantidad en dinero que hemos comprado, mostrando el importe, igv y total ordenados por monto de mayor a menor, q al final nos puede servir para el Registro de Compras

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

Consulta que muestra nuestros clientes asi como la cantidad en dinero que hemos vendido, mostrando el importe, igv y total ordenados por cliente, esto nos sirve para generar el Registro de Ventas

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS

consulta que muestra las ventas del mes de Enero y ordenado por clientes

UNIVERSIDAD NACIONAL DEL CALLAO

ING. DE SISTEMAS