Manual Tecnico de una base de datos
-
Upload
rabocse-ydderf -
Category
Documents
-
view
12 -
download
0
description
Transcript of Manual Tecnico de una base de datos
Universidad Nacional de Ingeniería
Recinto Universitario Simón Bolívar
Facultad de Electrotecnia y Computación
Ingeniería en Computación
Administradores de Base de Datos
Nombre del Proyecto: Sistema de Control de Inventario de Materia
Prima de Distribuidora el Carmen S.A.
MANUAL TÉCNICO
Integrantes: Liesel Carolina Cruz Contreras 2009-29757
Freddy René Escobar Ortíz 2009-29731
Docente: Geovani Sáenz
Grupo : 4T3 Co.
Base de Datos: Sistema_Inventario_Discarsa
Procedimientos Almacenados:
PROCEDIMIENTO ALMACENADO: Actualizar_Cantidad_Existente
Funcion: Actualiza la cantidad de materia prima que se está extrayendo
en la tabla existencia.
Parámetros: @Cod_Mat = Codigo de la Materia Prima que se va actualizar
@Cant_Extraida= Cantidad de materia prima que se le va a
restar al registro
Donde se utiliza: Se usa en el procedimiento almacenado de
insertar_salida_material. En la aplicación esto es cuando el
usuario está registrando una nueva selida de materia prima
Procedimiento Almacenado: Actualizar_Entrada_Materia
Funcion: Actualiza el registro de existencia que se está usando
actualmente cuando se ha extraído toda la cantidad, se carga
un nuevo registro procedente de una Entrada_de Material. Al
mismo tiempo actualiza en la tabla Entrada_Material que el
ultimo registro que se usó, ahora pasa a estar “AGOTADO”.
Parámetros: @Id_Ent_M -> Clave Principal de la Entrada Material que se ha
agotado, la que se va a reemplazar.
@Cantida -> Cantidad que se está extrayendo para restarla en
Entrada_Material.
Donde se utiliza: Lo usamos dentro del procedimiento de
Insertar_Salida_Material cuando se agota un registro de
existencia, entonces mandamos a registrar uno nuevo.
Procedimiento Almacenado: Calcular_Costo_Total_De_1Entrada
Objetivo: Calcular el costo total de una entrada, es decir sumar todos
los costos de sus sub-registros de Materias Primas.
Parámetros: @NoEntrada -> El numero de la entrada de la cual queremos
sumar sus registros.
Donde se utiliza: Lo usamos en la aplicación, para visualizar los totales
de cada una de las salidas.
Procedimiento Almacenado: Costo_de_Produccion_Insertar
Objetivo: Insertar un nuevo registro en la tabla Costo_de_Produccion
Parámetros:
Donde se utiliza: En la aplicación, cuando el usuario registra una nueva hoja de costos.
Procedimiento Almacenado: Costo_Salida_Insertar
Objetivo: Inserta un nuevo registro en la tabla Costo_Salida
Parámetros: @No_Salida -> Numero de Salida que está relacionado a una
hoja de costos
Donde se utiliza: En la aplicación para agregar una nueva hoja de costos
Procedimiento Almacenado: Devolucion_Mostrar_Datos_De_1Devolucion
Objetivo: Sirve para mostrar los subregistros de una Devolucion
Parámetros: @No-> Numero de la devolucion de la cual vamos a conseguir
suus subregistros
Donde se utiliza: En la aplicación cuando vamos a modificar o eliminar
una DEvolucion, entonces mandamos primero a visualizarla.
Procedimiento Almacenado: Devolucion_Insertar
Objetivo: Inserta un nuevo registro en la tabla Devolucion
Parámetros: @No_Devoluc numeric(5), Nuevo numero de devolucion
@Fecha date, , Fecha de la devolucion
@No_Op varchar(10) ,Orden de Produccion de la cual se
esta devolviendo material
Donde se utiliza: Cuando se registra una devolucion
Procedimiento Almacenado: Devolucion_Actualizar
Objetivo: Sirve para actualizar un registro de la tabla devolucion
Parámetros: @Fecha,@No_OP -> Valores a insertar en el registro que tieni
llave princial= NoDev
Procedimiento Almacenado: Devolucion_Eliminar
Objetivo: Elimina un registro de la Tabla devolucion
Parámetros: @No_Devolucion -> Numero de la devolucion que vamos a
eliminar.
Donde se utiliza: En la aplicación, para la opcion de eliminar una
devolucion
Procedimiento Almacenado: Devolucion_Material_Actualizar
Objetivo: Sirve para actualizar un registro de la tabla
devolucion_material
Parámetros: @No_Dev,@Cod_M,@Cant,@Cost. -> Valores a insertar en el
registro que tieni llave foránea= NoDev
Procedimiento Almacenado: Devolucion_Material_Insertar
Objetivo: Insertar un nuevo registro en la tabla Devolucion_Maaterial
Parámetros:@No_Devolucion int, Numero de la devolucion a la que pertenece
@Cod_Materia int, codigo de materi que se está devolviendo
@Cant float, cantida de materia que se devuelve
@Costo float el costo de la materia
Donde se utiliza: Cuando se ingresa un nuevo registro de DEvolucion
Material
Procedimiento Almacenado: Devolver_Existencia
Objetivo: Devolver al Registro de Entrada Material una cantidad de
material que se ha devuelto
Parámetros:
@No_OP varchar(20), Orden de produccion de la cual se devuelve el
material
@Cod_Mat int, Codigo de material que se devuelve
@Prec float, precio del material en el momento que fue sacada de
bodega
@Cant float cantidad de material que se devuelve
Donde se utiliza: Cuando registramos una devolucion de materiales
Procedimiento Almacenado: Entrada_Insertar
Objetivo: Inserta un nuevo registro en la tabla Entrada
Parámetros: @No_Entrada numeric(5), Numero de la entrada
@FecHa date, Fecha de la entrada
@ID_Proveedor numeric(4) Proveedor al que se le hizo la
compra
Donde se utiliza: Cuando se registra una entrada
Procedimiento Almacenado: Entrada_Material_Insertar
Objetivo: Inserta un nuevo registro en la tabla Entrada_Material,
Verifica si hay registro existente en Existencia, la tabla
que contiene las materias primas de las cuales actualmente se
está extrayendo, si no existe se inserta.
Parámetros: @No_Entrada numeric, Numero de la entrada
@Cod_Materia numeric, Coodigo del material que entra
@Costo_Unitario float, Costo al que entra
@Cantidad float Cantida qu entra
Donde se utiliza: Cuando se registra una entrada
Procedimiento Almacenado: Get_Cod_Salida
Objetivo: Consigue todos los codigos de materiales que corresponden a
las salidas de una orden de produccion
Parámetros: @No_OP varchar(20) Numero de la orden de produccion
Donde se utiliza: Cuando el usuario va ingresar devoluciones, sirve para
cargar los codigos de los materiales que salieron.
Procedimiento Almacenado: Get_Materiales_Salida
Objetivo: Consigue Todos los campos que le interesan al usuario sobre
las salidas de material de una orden de produccion: Codigo de
Materia,Nombre,Presentacion,Cantidad,CostoUnitario,CostoTotal
Parámetros: @No_OP varchar(20) Numero de la orden de produccion
Donde se utiliza: Cuando el usuario va ingresar devoluciones, sirve para
cargar los datos de los materiales que salieron.
Procedimiento Almacenado: GetRequisasFromOP
Objetivo: Consigue todos los numeros de requisa vinculados a una Orden de
Produccion
Parámetros: @No_OP as varchar(50) Numero de la orden de produccion
Donde se utiliza: Cuando el usuario desea ingresar una hoja de costos,
esto le sirve para agregar las requisas de salida que se
usaron
Procedimiento Almacenado: Material_Actualizar
Objetivo: Actualizar un registro de Material con clave principal=
@Cod_Mat
Parámetros:
@Cod_Mat numeric,
@Nomb varchar(50),
@Pres varchar(10)
Donde se utiliza: Cuando el usuario quiere modificar algun dato de una
materia prima
Procedimiento Almacenado: Material_Buscar
Objetivo: Procedimiento que busca un Materila a partir de un codigo de
material
Parámetros: @Cod_Mater int
Donde se utiliza: No se usa en la aplicación
Procedimiento Almacenado: Material_Buscar_Palabra
Objetivo: Buscar una materia prima que coincida con la palabra que se
recibe como parametro
Parámetros: @Palabra as varchar(30) ->Palabra que coincide con el nombre
de un material
Donde se utiliza: No se usa en la aplicacion
Procedimiento Almacenado: Material_Buscar_Por_Inicial
Objetivo: Procedimiento que busca los materiales cuyo nombre comience
con un a letra que recibe.
Parámetros: @Letra_Inicio as varchar -> Letra con la que empieza el
material
Donde se utiliza:No se usa en la aplicación
Procedimiento Almacenado: Materia_Buscar_Presentación
Objetivo:Procedimiento almacenado que busca todos los materiales con
presetacion igual al parametro que recibe.
Parámetros: @Present
Donde se utiliza:No se utiliza
Procedimiento Almacenado: Material_Buscar_Rango
Objetivo:Procedimiento que busca todos los materiales que tienen codigo
de materia entre un rango recibido, se reciben dos variables
@Cod_Mater_From y @Cod_Mater_To que son los rangos.
Parámetros: @Cod_Mater_From int, Rango Menor
@Cod_Mater_To int Rango Mayor
Donde se utiliza: no se usa en la aplicación
Procedimiento Almacenado: Material_Eliminar
Objetivo: Elimina un registro de la Tabla Material
Parámetros: @Cod -> Numero de material que vamos a eliminar.
Donde se utiliza: En la aplicación, para la opcion de eliminar un
material
Procedimiento Almacenado: Material_Insertar
Objetivo: Inserta un nuevo registro en la tabla Material
Parámetros: @Cod integer, Codigo del MAterial
@Nomb varchar(100), Nombre del material
@Presentacion varchar(10) Presentaicon del material
Donde se utiliza: Cuando se registr un Material
Procedimiento Almacenado: Material_Mostrar_Entradas_De_Uno_Por_Fechas
Objetivo: Muestra todas las entradas de una materia prima en un rango de
fecha
Parámetros:
@Cod_Materia numeric, Materia prima que se quiere visualizar
@fecha1 datetime, Rango de Fecha Minimo
@fecha2 datetime Rango de Fecha Máximo
Donde se utiliza: En la parte de visualizacion. Cuando el usuario quiera
ver un reporte.
Procedimiento almacenado: Materia_Buscar_Presentación
Objetivo: Procedimiento almacenado que busca todos los materiales que
son bolsas.
Parámetros: No recibe parametros
Donde se utiliza: En la parte de visualizción-Reportes
Procedimiento almacenado: Materia_Buscar_Presentación
Objetivo: Procedimiento almacenado que busca todos los materiales que t
tengan la presentacion recibida
Prámetros: @Presentacion
Donde se utiliza: En la parte de visualizción-Reportes
Procedimiento almacenado: Material_Ver_Etiquetas_BolsasPapel
Objetivo: Procedimiento almacenado que busca todos los materiales cuyo
Que sean bolsas de apel
Prámetros: no recibe.
Donde se utiliza: En la parte de visualizción-Reportes
Procedimiento almacenado: Material_Visualizar
Objetivo:Procedimiento que visualiza la tabla Material con todos sus
campos
Parámetros:No recibe
Donde se utiliza: En la parte de visualizción-Reportes
Procedimiento almacenado: Orden_Produccion_Actualizar
Objetivo: Sirve para actualizar un registro de la tabla Orden_Produccion
con una llave principal = @No_OP
Parámetros: @No_OP varchar(10), codigo de orden
@Lot varchar(50), codigo de lote
@Prod varchar(100) producto a elaborar
Donde se utiliza: Para modifiar una orde de produccion existente
Procedimiento Almacenado: Orden_Produccion_Insertar
Objetivo: Inserta un nuevo registro en la tabla Orden_Produccion
Parámetros: @No_OP varchar(10), codigo de orden
@Lot varchar(50), codigo de lote
@Prod varchar(100) producto a elaborar
Donde se utiliza: Cuando se registra una Orden de Produccion
Procedimiento almacenado:
Orden_Produccion_Mostrar_Datos_De_1OdenProduccion
Objetivo:Procedimiento que visualiza un Registro de la tabla
Orden_Produccion con todos sus campos
Parámetros:@No -> Codigo de la orden de produccion que se quiere
visualizar
Donde se utiliza: En la parte de visualizción-Reportes
Procedimiento Almacenado: Producto_Terminado_Actualizar
Objetivo: Actualizar un registro de Producto_Terminado con clave
principal= @Cod_Prod
Parámetros:
@Cod_Prod numeric,
@Nomb varchar(50),
@Pres varchar(10)
Donde se utiliza: Cuando el usuario quiere modificar algun dato de un
producto terminado
Procedimiento Almacenado:
Producto_Terminado_Mostrar_Datos_1ProductoTerminado
Objetivo:Procedimiento que visualiza un Registro de la tabla
ProductoTerminado con todos sus campos
Parámetros:@Codigo -> Codigo del producto terminado que se quiere
visualizar
Donde se utiliza: En la parte de visualizción-Reportes
Procedimiento Almacenado: Proveedor_Actualizar
Objetivo: Procedimiento que actualiza todos los campos de un registro
a partir de su clave principal
Parámetro: @Id_prov int, Clave Principal del Proveedor
@Nomb varchar(50), Nombre del Proveedor
@Pro varchar(50) Nombre del Propietario del Proveedor
Donde se utiliza: Cundo el usuario quiere modificar la informacion de un
proveedor
Procedimiento Almacenado: Proveedor_Actulizar_Ubicacion
Objetivo: Procedimiento que actualiza todos los campos de un registro
De la ubicaion del proveedor a partir de su clave principal
Parámetro: @ID numeric(5) , Identificador del proveedor
@NuevaDireccion varchar (50), Nuevos datos
@NuevoPais varchar (15),
@NuevoCiudad varchar (15)
Donde se utiliza: Cundo el usuario quiere modificar la informacion de un
proveedor
Procedimiento Almacenado:
Proveedor_Mostrar_Entradas_Por_Un_Proveedor_En_Fechas]
Objetivo: Procedimiento que muestra todas las compras hechas a un
proveedor en un rango de fechas recibido
Parametros:
@IDP AS numeric, Proveedor
@FECHA1 AS DATE, Fecha minimo
@FECHA2 AS DATE Fecha maximo
Donde se utiliza: En la parte de visualizción-Reportes
Procedimiento Almacenado:
Proveedor_Mostrar_Entradas_Por_Un_Proveedor_Ulitmos_15Dias
Objetivo: Procedimiento que nos visualiza las entradas de un proveedor de
los ultmos 15 dias
Parámetros: @IdProveedor numeric id del proveedor
Donde se utiliza: En la parte de visualizción-Reportes
Procedimiento Almacenado: Salida_Insertar
Objetivos: Inserta un registro en la tabla Salida
Parámetros: @No_Salida int, Id de la Salida
@Fecha date, Fecha de la Salida
@No_OP varchar(20) Numero de orden de produccio que
solicita la salida
Donde se utiliza: Cuando el usuario esta registrando una salida de
material
Procedimiento Almacenado: Salida_Material_Insertar
Objetivos: Procedimiento de vital importancia en nuestro sistema, es el
que guarda las salidas de materia prima y les asigna es costo unitario a
los materiales de acuerdo al costo de existencia actual
Parámetros: @No_Salida NUMERIC, Numero de salida vinculada
@Cod_Mat NUMERIC, Material que se esta sacando
@Cantidad NUMERIC, Cantidad de material extraído
@Descripcion varchar(30) si el material es para
produccion o para limpieza del laboratorio
Donde se utiliza: Cuando el usuario está registrando una nueva salida de
material.
Procedimeinto Almacenado: Ubicacion_Get
Objetivos: Consigue la ubicación de un proveedor, en tres campos,
Pais,Ciudad,Direccion
Parámetros: @IdProv as bigint Identificador del Proveedor
Donde se utiliza: En la opcion de modificar y eliminar proveedor
Para visualizar antes de eliminar.
Procedimeinto Almacenado:SP_GetFecha_From_Entrada
Objetivos: Consigue la fecha de una entrada de material
Parámetros: @Cod_Entra numeric Codigo de la entrada que se desea obtener
la fecha
Donde se utiliza: Cuando estamos consiguendo la entrada con la fecha mas
anterior y asi hacer que ese material salga antes que los que
tienen fecha mas reciente.
Cursores:
Cursor: Cursor_CambiarPresentacion
Objetivo del Cursor: Modificar una Presentacion deseada por otra en toda
la tabla de materiales
Instrucción Select:
select Cod_Materia,Presentacion
from Material
where Presentacion=@Presentacion_Actual
Actualizacion del Registro:
update Material
set Presentacion =@Presentacion_Nueva
where Cod_Materia =@Cod_Materia
Donde se utiliza: En la Tabla Material, cuando el proveedor quiere hacer
le cambio explicado en el objetivo del cursor.
Cursor: Cursor_Entradas_Dolares
Objetivo del Cursor: Cursor para mostrar las entradas
de materia prime segun el tipo de cambio actual, el cual debe
ser especificado
Instrucción Select:
select Entrada.No_Entrada,Entrada_Material .Costo_Unitario
,Material.Nombre
from Material inner join Entrada_Material on MAterial.Cod_Materia
=Entrada_Material .Cod_Materia
inner join Entrada on Entrada_Material .No_Entrada
=Entrada.No_Entrada
Impresión en Pantalla:
set @Costo_Dolar= @Costo_Unit/@Tipo_Cambio;
print 'Entrada: '
print @No_Ent
print 'Material: '
print @Nombre
print 'Costo_Cordoba:'
print @Costo_Unit
print 'Costo_Dolar:'
print @Costo_Dolar
print '---------------------------------------------'
Cursor: Cursor_Imprime_Proveedores
Objetivo del Cursor: Imprime informacion de los Proveedores con sus
Proppietarios
Instrucción Select:
declare Cursor_Proveedores cursor for
select P.Nombre,P.Propietario,U.Direccion
from Proveedor P inner join Ubicacion U on P.ID_Proveedor=U.ID_Proveedor
Impresión:
open Cursor_Proveedores
fetch next from Cursor_Proveedores
into @Nomb,@Propie,@Dir
while @@FETCH_STATUS =0
begin
print 'El Proveedor: '+@Nomb+' con propietario ' +@Propie +'
está ubicado en ' +@Dir
fetch next from Cursor_Proveedores
into @Nomb,@Propie,@Dir
end
Cursor: Cursor_Modificar_Telefono
Objetivo del Cursor: Procedimiento que usa un cursor para modificar los
registros de la tabla Telefonos, para agregar algun nuevo digito, o un
nuevo codigo de área a los numeros de telefono de un país.
Instrucción Select:
declare cursor_telefono cursor for
select P.ID_Proveedor,T.ID_Tel,T.No_Telefono
from Ubicacion F inner join Proveedor P on F.ID_Proveedor
=P.ID_Proveedor inner join Telefonos T on P.ID_Proveedor =T.ID_Proveedor
where F.Pais =@Pais
Actualizacion del Registro:
while @@FETCH_STATUS =0
begin
set @Tel_char = Cast(@Agregar as varchar(5)) + CAST (@No_Tel
as varchar(12))
update Telefonos
set No_Telefono = CAST (@Tel_char as bigint)
where ID_Tel = @ID_Tel
fetch next from cursor_telefono
into @ID_Prov,@ID_Tel,@No_Tel end
Triggers:
Trigger: TR_Entrada
Objetivo: Copiar en otra tabla los registros originales cuando se elimine
o actualice en la tabala entrada.
Donde se utiliza: En la tabla entrada, cuando se va elimnar o actualizar
registros de la tabla
Instrucciones:
after delete,update -> para especificar cuando se va desencadenar la
accion
set nocount on
insert into DEL_Entrada (No_Entrada ,ID_Proveedor ,Fecha )
Insertamos en la tabla de Respaldo
select No_Entrada,ID_Proveedor,Fecha / seleccionamos los valores de
la tabla deleted(tabla del sistema)
from deleted
Trigger: TR_Entrada_Material
Objetivo: Copiar en otra tabla los registros originales cuando se elimine
o actualice en la tabala entrada_material
Donde se utiliza: En la tabla entrada_material, cuando se va elimnar o
actualizar registros de la tabla
Instrucciones:
after delete,update -> para especificar cuando se va desencadenar la
accion
insert into DEL_Entrada_Material /Insertamos en tabla de respaldo
(No_Entrada,Cod_Materia,Costo_Unitario,Cantidad,Estado)
/Seleccionamos los valores de la tabla deleted(tabla del sistema)
select No_Entrada,Cod_Materia,Costo_Unitario,Cantidad_TOTAL ,Estado
from deleted
Trigger: TR_Salida
Objetivo: Copiar en otra tabla los registros originales cuando se elimine
o actualice en la tabala salida.
Donde se utiliza: En la tabla salida, cuando se va elimnar o actualizar
registros de la tabla
Instrucciones:
after delete,update -> para especificar cuando se va desencadenar la
accion
insert into DEL_Salida(No_Salida,Fecha,No_OP) /insertamos en tabla de
respaldo
select No_Salida,Fecha,No_OP /seleccionamos los valores de la tabla
deleted(tabla del sistema)
from deleted
Trigger: TR_Salida_Material
Objetivo: Copiar en otra tabla los registros originales cuando se elimine
o actualice en la tabala salida_material
Donde se utiliza: En la tabla salida_material, cuando se va elimnar o
actualizar registros de la tabla
Instrucciones:
after delete,update -> para especificar cuando se va desencadenar la
accion
insert into
DEL_Salida_Material(No_Salida,No_Entrada,Cod_Materia,Costo_Unitario,Canti
dad,Descripcion) /Insertamos en una tabla de respaldo
select No_Salida,ID_Entrada
,Cod_Materia,Costo_Unitario,Cantidad,Descripcion
from deleted /seleccionamos los datos de la tabla deleted(tabla del
sistema)
Trigger: TR_Seguridad_Entrada
Objetivo: Restringir las operacions de Insertar,Modificar,Eliminar de la
tabla Entrada
Donde se usa: En la tabla entrada, cuando el usuario quiere ingresar un
nuevo registro y no tiene permisos.
Instrucciones:
Create trigger [dbo].[TR_Seguridad_Entrada]
on [dbo].[Entrada]->Especificamos la tabla
after insert,delete,update ->Especificamos las operaiciones
as
begin
set nocount on
RAISERROR('No Puedes Ingresar Datos en la Tabla Entrada',16,1)
/Mensaje de error
ROLLBACK TRANSACTION /Cancelamos la transaccion
end
Trigger: TR_Seguridad_Entrada_Material
Objetivo: Restringir las operacions de Insertar,Modificar,Eliminar de la
tabla Entrada_Material
Donde se usa: En la tabla entrada_material, cuando el usuario quiere
ingresar un nuevo registro y no tiene permisos.
Instrucciones:
Create trigger [dbo].[TR_Seguridad_Entrada_Material]
on [dbo].[Entrada_Material]->Especificamos la tabla
after insert,delete,update ->Especificamos las operaiciones
as
begin
set nocount on
RAISERROR('No Puedes Ingresar Datos en la Tabla
Entrada_Material',16,1) /Mensaje de error
ROLLBACK TRANSACTION /Cancelamos la transaccion
End
Vistas:
Vista: Materiales
Objetivo: Mostrar todos los registros con todos los campos de la tabla
materiales
Donde se usa: Para crear un Reporte de Materiales
Vista: Productos_Terminados
Objetivo: Mostrar todos los registros con todos los campos de la tabla
productos terminados
Donde se usa: Para crear un Reporte de Productos Terminados
Vista: Proveedores
Objetivo: Mostrar todos los registros con todos los campos de la tabla
proveedor
Donde se usa: Para crear un Reporte de Proveedores
Vista: Hoja de Costos
Objetivo: Mostrar los registros que componen una hoja de costos
Donde se usa: Para crear un Reporte de Hoja de Costos
Tablas que utiliza:
Costo_de_Procuccion,Costos_Salidas,Orden_Produccion,Salida,Producto_Termi
nado
Vista: Salidas Material
Objetivo: Mostrar los registros que componen una requisa de salida
Donde se usa: Para crear un Reporte de Requisa de Salida
Tablas que utiliza: Orden_Produccion,Salida,Salida_Material,Material
Vista: Entradas_Materiales
Objetivo: Mostrar los registros que componen una requisa de entrada
Donde se usa: Para crear un Reporte de Requisa de Entrada
Tablas que utiliza: Proveedor,Entrada,Entrada_Material,Material
Vista: Devoluciones_Material
Objetivo: Mostrar los registros que componen una Devolucion de Material
Donde se usa: Para crear un Reporte de Devoluciones
Tablas que utiliza:
Orden_Produccion,Devolucion,DEvolucion_Material,Material