Base de datos venta factura
Enviado por John0099 • 13 de Enero de 2018 • 1.386 Palabras (6 Páginas) • 579 Visitas
...
USE [Venta_factura]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[PRAL_MANTENEDOR]
@ID_cliente = 1,
@ID_comuna = 1,
@Direccion = N'LAS PALOMAS',
@Telefono = N'+5691234567',
@Rut = N'1-9',
@Nombre_cliente = N'JUAN CARLOS',
@opc = 1
SELECT 'Return Value' = @return_value
GO
Resultado:
[pic 8]
Que mediante la query:
SELECT ID_CLIENTE, COMUNA.NOMBRE_COMUNA,DIRECCION,TELEFONO, RUT,NOMBRE_CLIENTE FROM CLIENTE
inner join COMUNA on (COMUNA.ID_COMUNA = CLIENTE.ID_COMUNA)
Nos muestra la comuna a la cual pertenece ese cliente.
[pic 9]
Podemos encapsular esta vista mediante:
CREATE VIEW vista_clientes AS
SELECT ID_CLIENTE, COMUNA.NOMBRE_COMUNA,DIRECCION,TELEFONO, RUT,NOMBRE_CLIENTE FROM CLIENTE
inner join COMUNA on (COMUNA.ID_COMUNA = CLIENTE.ID_COMUNA)
tendremos el mismo resultado llamando a la vista (que se encuentra en nuestra base de datos), de la siguiente forma:
select * from vista_clientes
2. Realizar venta de productos de un cliente x,
2.1 Incorporar venta del cliente en tabla Factura. Enviar datos respectivos. (15 PUNTOS).
2.2 Incorporar productos en tabla detalle_venta. Enviar id_producto, cantidad. Se debe verificar que el stock sea superior a lo vendido antes de grabar los datos en detalle_venta, en caso de no cumplir, enviar mensaje respectivo. (30 PUNTOS)
Resolveremos estos puntos a continuación.
Para realizar este punto creamos 2 procedimientos almacenados llamados PRAL_LLENAR_FACTURA Y PRAL_LLENAR_DETALLE.
Usando PRAL_LLENAR_FACTURA
[pic 10]
En un comienzo la tabla se ve como arriba, se encuentra vacía, no existiendo ninguna factura.
Ahora ejecutamos PRAL_LLENAR_FACTURA entregándole los parámetros.
USE [Venta_factura]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[PRAL_LLENAR_FACTURA]
@ID_factura = 1,
@ID_pago = 1,
@ID_cliente = 1,
@Fecha = '12-04-2015'
SELECT 'Return Value' = @return_value
GO
Ahora los datos quedan como en la imagen inferior, faltando por ingresar el total, neto y el iva, los cuales seran calculados despues de ingresar los dados a detalle.
[pic 11]
---------------------------------------------------------------
Ahora usando PRAL_LLENAR_DETALLE, llenaremos la TABLA DETALLE, para continuar con el proceso de venta.
Ejecutamos nuestro procedimiento almacenado de la siguiente forma:
USE [Venta_factura]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[PRAL_LLENAR_DETALLE]
@ID_producto = 1,
@ID_factura = 1,
@Cantidad = 5
SELECT 'Return Value' = @return_value
GO
lo que nos entrega el siguiente resultado.
[pic 12]
Como se puede ver en la imagen, se hicieron los cálculos respectivos en la tabla FACTURA.
Quedando la tabla DETALLE de la siguiente manera:
[pic 13]
Siendo los datos de la tabla PRODUCTO los siguientes:
[pic 14]
Calculo: detalle tiene 5 ´productos (id_producto 1), cada uno con el valor de $600.- lo que da un total de $3.000.- que corresponde al valor NETO.
IVA = $3.000 * 19% lo que da un total de $570.-
Total = $3.000.- + $570.- lo que demuestra que nuestros procedimientos funcionan correctamente.
Agregaremos otro producto a nuestro detalle para la venta, por lo tanto ejecutaremos nuestro procedimiento almacenado PRAL_LLENAR_DETALLE:
USE [Venta_factura]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[PRAL_LLENAR_DETALLE]
@ID_producto = 2,
@ID_factura = 1,
@Cantidad = 2
SELECT 'Return Value' = @return_value
GO
El resultado es que tenemos el producto 1 y el producto 2 en una sola factura, la factura
...