Nuevo
Nuevo
Nuevo
Cusco - 2012
DESARROLLO DEL SISTEMA (CODIGOS, INTERFACES, REPORTES) 1.- Finalidad de la BASE DE DATOS (Funciones del sistema). FUNCIONES DEL SISTEMA DE PAGOS, COBRANZA, FACTURAS, RECIBOS Funcin Contable del SISTEMA DE COBRANZA DE AGUA:
Controlar el registro de usuarios y medidores Registrar el consumo mensual del cliente Calcular el pago a realizar por cada usuario segn consumo Emitir recibos por cliente considerando sectores Controlas pagos atrasado (Clientes con deudas) Controlar ingreso total por pagos de clientes (mensual, trimestral) Controlar y registrar quejas de averas y fallas de servicio
Medidores
COMPUTACION E INFORMATICA
Pgina 2
Personal
Consumo
Recibos
Sectores
COMPUTACION E INFORMATICA
Pgina 3
pagos atrasados
pagos de clientes
averas
fallas
COMPUTACION E INFORMATICA
Pgina 4
COMPUTACION E INFORMATICA
Pgina 5
COMPUTACION E INFORMATICA
Pgina 6
COMPUTACION E INFORMATICA
Pgina 7
COMPUTACION E INFORMATICA
Pgina 8
Pgina 9
MEDIDOR
CONSUMO
COMPUTACION E INFORMATICA
Pgina 10
RECIBOS
SECTORES
DEUDAS
PAGOS CLIENTE
COMPUTACION E INFORMATICA
Pgina 11
AVERIAS
FALLAS
2.3 Modelo Fsico de la Base de Datos (Sintaxis T-SQL) (Tablas, Vistas, Procedimientos, Disparadores, create database BD_Bentu_Mel_Yuve use BD_Bentu_Mel_Yuve create TABLE T_usuario( DNI_Usuario char(8) PRIMARY KEY , Nombre varchar(max) , A_paterno varchar(max), A_materno varchar(max) , Telefono float , Direccion varchar(max), Id_Sector char(5), Id_Medidor char(5) ) ALTER TABLE T_usuario WITH CHECK ADD T_usuario_T_Sector FOREIGN KEY(Id_Sector) REFERENCES T_Sector (Id_Sector) GO ALTER TABLE T_usuario WITH CHECK ADD T_usuario_T_Medidor FOREIGN KEY(Id_Medidor) REFERENCES T_Medidor (Id_Medidor) --Procedimientos almacenados create procedure P_usuario @DNI_Usuario char(8), @Nombre varchar(max) , @A_paterno varchar(max),
COMPUTACION E INFORMATICA
CONSTRAINT
CONSTRAINT
Pgina 12
@A_materno varchar(max) , @Telefono float , @Direccion varchar(max) , @Occion int as begin if @Occion =1 begin insert into T_usuario values (@DNI_Usuario,@Nombre,@A_paterno,@A_materno,@Telefono,@Direccion) end if @Occion =2 begin update T_usuario set nombre=@Nombre , A_paterno=@A_paterno, A_materno=@A_materno, Telefono=@Telefono, Direccion=@Direccion where DNI_Usuario=@DNI_Usuario end end if @Occion =3 begin DELETE T_usuario WHERE DNI_Usuario=@DNI_Usuario end go execute P_usuario '12345678','bagos','candia','chacmana','789874','av.manancanchu',1 select * from T_usuario create TABLE T_Personal( DNI_Personal char(8) PRIMARY KEY , Nombre varchar(max) , A_paterno varchar(max), A_materno varchar(max) , Telefono float , Direccion varchar(max), Id_Medidor char(5), NroRecibo char(5) ) ALTER TABLE T_Personal WITH CHECK ADD T_Personal_T_Consumo FOREIGN KEY(Id_Medidor) REFERENCES T_Medidor (Id_Medidor) GO
CONSTRAINT
create TABLE T_Medidor( Id_Medidor char(5) PRIMARY KEY , Descripcion varchar(max), ) create TABLE T_Consumo( Descripcion varchar(max), Fecha date, Categoria varchar(max),
COMPUTACION E INFORMATICA
Pgina 13
Tarifa float, Importe float, DNI_Usuario char(8), Id_Medidor char(5) ) ALTER TABLE T_Consumo WITH CHECK ADD CONSTRAINT T_Consumo_T_usuario FOREIGN KEY(DNI_Usuario) REFERENCES T_usuario (DNI_Usuario) GO ALTER TABLE T_Consumo WITH CHECK ADD CONSTRAINT T_usuario_T_Consumo FOREIGN KEY(Id_Medidor) REFERENCES T_Medidor (Id_Medidor) GO create TABLE T_Recibos( NroRecibo char(5) PRIMARY KEY , Fecha date , RUC char(11) , Descripcion varchar(max), Facturacion float, F_proxima date, F_vencimiento date, Monto float, DNI_Usuario char(8) ) ALTER TABLE T_Recibos WITH CHECK ADD CONSTRAINT T_Recibos_T_usuario FOREIGN KEY(DNI_Usuario) REFERENCES T_usuario (DNI_Usuario) GO create TABLE T_Sector( Id_Sector char(5) PRIMARY KEY , Nombre varchar(max), Descripcion varchar(max), ) create table T_Deudas ( Id_Deuda char(5) PRIMARY KEY , Monto VARCHAR(MAX), Fecha date, Interes VARCHAR(MAX), F_Limite varchar(max), NroRecibo char(5), DNI_Usuario char(8) ) ALTER TABLE T_Deudas WITH CHECK ADD CONSTRAINT T_Deudas_T_usuario FOREIGN KEY(DNI_Usuario) REFERENCES T_usuario (DNI_Usuario) GO ALTER TABLE T_Deudas WITH CHECK ADD CONSTRAINT T_Deudas_T_Recibos FOREIGN KEY(NroRecibo) REFERENCES T_Recibos (NroRecibo) GO create TABLE T_Pagos( Id_pagos char(5) PRIMARY KEY , Monto varchar(max), Obserbacion varchar(max), Fecha date,
COMPUTACION E INFORMATICA
Pgina 14
Lugar varchar (max), DNI_Usuario char(8), ) ALTER TABLE T_Pagos WITH CHECK ADD CONSTRAINT T_Pagos_T_usuario FOREIGN KEY(DNI_Usuario) REFERENCES T_usuario (DNI_Usuario) GO create TABLE T_Averaias( Id_Averias char(5) PRIMARY KEY , F_Reporte varchar(max), F_Reparacion varchar(max), Id_Medidor char(5), DNI_Usuario char(8) ) ALTER TABLE T_Averaias WITH CHECK ADD CONSTRAINT T_Averaias_T_usuario FOREIGN KEY(DNI_Usuario) REFERENCES T_usuario (DNI_Usuario) GO ALTER TABLE T_Averaias WITH CHECK ADD CONSTRAINT T_Averaias_T_Medidor FOREIGN KEY(Id_Medidor) REFERENCES T_Medidor (Id_Medidor) GO create TABLE T_Fallas( Id_Falla char(5) PRIMARY KEY , F_Reporte varchar(max), F_Reparacion varchar(max), Id_Medidor char(5), DNI_Usuario char(8) ) ALTER TABLE T_fallas WITH CHECK ADD CONSTRAINT T_fallas_T_usuario FOREIGN KEY(DNI_Usuario) REFERENCES T_usuario (DNI_Usuario) GO ALTER TABLE T_fallas WITH CHECK ADD CONSTRAINT T_fallas_T_Medidor FOREIGN KEY(Id_Medidor) REFERENCES T_Medidor (Id_Medidor) GO
COMPUTACION E INFORMATICA
Pgina 15
--PROCEDIMIENTOS ALMACENADOS
PROCEDIMIENTO DE LA T_Usuario:
create procedure P_usuario @DNI_Usuario char(8), @Nombre varchar(max) , @A_paterno varchar(max), @A_materno varchar(max) , @Telefono float , @Direccion varchar(max) , @Id_Sector char(5), @Id_Medidor char(5), @Occion int as begin --registar if @Occion =1 begin insert into T_usuario values (@DNI_Usuario,@Nombre,@A_paterno,@A_materno,@Telefono,@Direccion,@Id_S ector,@Id_Medidor) end --modificar if @Occion =2 begin update T_usuario set nombre=@Nombre , A_paterno=@A_paterno, A_materno=@A_materno, Telefono=@Telefono, Direccion=@Direccion, Id_Sector=@Id_Sector, Id_Medidor=@Id_Medidor where DNI_Usuario=@DNI_Usuario end end --eliminar if @Occion =3 begin DELETE T_usuario WHERE DNI_Usuario=@DNI_Usuario end --consulatar if @Occion =4 begin select *from T_usuario end go execute P_usuario '12345678','bagos','candia','chacmana','789874','av.manancanchu','s000 1','m0001',1 select * from T_usuario
COMPUTACION E INFORMATICA
Pgina 16
PROCEDIMIENTO DE LA T_Medidor:
create procedure P_Medidor @Id_Medidor char(5), @Descripcion varchar(max), @Occion int --registrar as begin --registar if @Occion =1 begin insert into T_Medidor values (@Id_Medidor,@Descripcion) end --modificar if @Occion =2 begin update T_Medidor set Descripcion = @Descripcion where Id_Medidor=@Id_Medidor end end execute P_Medidor 'm0001','nueva',1 select * from T_Medidor
PROCEDIMIENTO DE LA T_Consumo:
create procedure P_Consumo @Descripcion varchar(max), @Fecha date, @Categoria varchar(max), @Tarifa float, @Importe float, @DNI_Usuario char(8), @Id_Medidor char(5) @Occion int as begin --registar if @Occion =1 begin insert into T_Consumo values (@Descripcion,@Fecha,@Categoria,@Tarifa,@Importe,@DNI_Usuario,@Id_Medi dor ) end --consulatar if @Occion =2 begin select *from T_Consumo end go execute P_Consumo 'consumo de agua','10/10/10','baja','10','20','25252525','m0001',1 select * from T_Consumo
COMPUTACION E INFORMATICA
Pgina 17
PROCEDIMIENTO DE LA T_Recibos:
create procedure P_Recibos @NroRecibo char(5), @Fecha date , @RUC char(11) , @Descripcion varchar(max), @Facturacion float, @F_proxima date, @F_vencimiento date, @Monto float, @DNI_Usuario char(8), @Occion int as begin --registar if @Occion =1 begin insert into T_Recibos values (@NroRecibo,@Fecha,@RUC,@Descripcion,@Facturacion,@F_proxima,@F_vencim iento,@Monto,@DNI_Usuario) end --modificar if @Occion =2 begin update T_Recibos set Fecha=@Fecha, RUC=@RUC, Descripcion=@Descripcion, Facturacion=@Facturacion, F_proxima=@F_proxima, F_vencimiento=@F_vencimiento, Monto=@Monto, DNI_Usuario=@DNI_Usuario where NroRecibo=@NroRecibo end --eliminar if @Occion =3 begin DELETE T_Recibos WHERE NroRecibo=@NroRecibo end end execute P_Consumo '00001','10/10/10','20124578962','consumo de agua','20','12/11/12','12/12/12','20','1457895',1 select * from T_Recibos
COMPUTACION E INFORMATICA
Pgina 18
PROCEDIMIENTO DE LA T_Sectores:
create procedure P_Sector @Id_Sector char(5) , @Nombre varchar(max), @Descripcion varchar(max), @Occion int as begin --registar if @Occion =1 begin insert into T_Sector values (@Id_Sector,@Nombre,@Descripcion) end --modificar if @Occion =2 begin update T_Sector set Nombre=@Nombre , Descripcion=@Descripcion where Id_Sector=@Id_Sector end --eliminar if @Occion =3 begin DELETE T_Sector WHERE Id_Sector=@Id_Sector end end execute P_Sector 'tica tica','acidental',1 select * from T_Sector
PROCEDIMIENTO DE LA T_Deudas:
create procedure P_Deudas @Id_Deuda char(5) , @Monto VARCHAR(MAX), @Fecha date, @Interes VARCHAR(MAX), @F_Limite varchar(max), @NroRecibo char(5), @DNI_Usuario char(8), @Occion int as begin --registar if @Occion =1 begin insert into T_Deudas values (@Id_Deuda,@Monto,@Fecha,@Interes,@F_Limite,@NroRecibo,@DNI_Usuario) end --modificar if @Occion =2 begin update T_Deudas set Monto=@Monto ,
COMPUTACION E INFORMATICA
Pgina 19
Fecha=@Fecha, Interes=@Interes, F_Limite=@F_Limite, NroRecibo=@NroRecibo where Id_Deuda=@Id_Deuda end --eliminar if @Occion =3 begin DELETE T_Deudas end end
WHERE Id_Deuda=@Id_Deuda
WHERE Id_pagos=@Id_pagos
PROCEDIMIENTO DE Averias:
create procedure P_Averaias @Id_Averias char(5), @F_Reporte varchar(max), @F_Reparacion varchar(max), @Id_Medidor char(5), @DNI_Usuario char(8), @Occion int as begin --registar if @Occion =1 begin
COMPUTACION E INFORMATICA
Pgina 20
insert into T_Averaias values (@Id_Averias,@F_Reporte,@F_Reparacion,@Id_Medidor,@DNI_Usuario) end --modificar if @Occion =2 begin update T_Averaias set F_Reporte=@F_Reporte , F_Reparacion=@F_Reparacion, Id_Medidor=@Id_Medidor, DNI_Usuario=@DNI_Usuario where Id_Averias=@Id_Averias end --eliminar if @Occion =3 begin DELETE T_Averaias WHERE Id_Averias=@Id_Averias end end execute P_Averaias 'a0001','10/10/10','10/12/10','m0001','47388364',1 select * from T_Sector
PROCEDIMIENTO DE Fallas:
create procedure P_Fallas @Id_Falla char(5), @F_Reporte varchar(max), @F_Reparacion varchar(max), @Id_Medidor char(5), @DNI_Usuario char(8), @Occion int as begin --registar if @Occion =1 begin insert into T_Fallas values (@Id_Falla ,@F_Reporte,@F_Reparacion,@Id_Medidor,@DNI_Usuario) end --modificar if @Occion =2 begin update T_Fallas set F_Reporte=@F_Reporte , F_Reparacion=@F_Reparacion, Id_Medidor=@Id_Medidor, DNI_Usuario=@DNI_Usuario where Id_Falla=@Id_Falla end --eliminar if @Occion =3 begin DELETE T_Fallas WHERE Id_Falla=@Id_Falla end end execute P_Fallas 'f0001','10/10/10','10/12/10','m0001','47388364',1 select * from T_Fallas
COMPUTACION E INFORMATICA
Pgina 21
COMPUTACION E INFORMATICA
Pgina 22
COMPUTACION E INFORMATICA
Pgina 23
COMPUTACION E INFORMATICA
Pgina 24
Diseo de interfaces
COMPUTACION E INFORMATICA
Pgina 25