Para realizar los siguientes ejercicios, se recomienda descargar los archivos BDFacturacion_DML y BDFacturacion_DDL que se encuentran en la categoria
--Listar todas las categorías
declare @codigo as varchar(4)
declare @nombre as varchar(50)declare CursorCategoria cursor for
select * from tbCategoria
open CursorCategoria
print 'LISTA DE CATEGORIAS'
print '==================='
fetch CursorCategoria into @codigo,@nombre
while (@@fetch_status=0) begin
print @codigo +' '+ @nombre fetch CursorCategoria into @codigo,@nombreend
close CursorCategoria
deallocate CursorCategoria
--Listar las facturas(número,total) con su respectivos clientes
declare @cliente as varchar(50)
declare @factura as varchar(10)
declare @total as varchar(10)declare @cont as int
declare CursorFacura cursor for select tbCliente.nombreCliente,tbFactura.numeroFactura,tbFactura.totalFactura
from tbCliente
inner join tbFactura on tbCliente.codigoCliente=tbFactura.codigoCliente
open CursorFacura
set @cont=1
print ' LISTA DE FACTURAS POR CLIENTE'
print ' ============================='
fetch CursorFacura into @cliente,@factura,@total
while (@@fetch_status=0)begin
print 'Cliente '+convert(varchar(3),@cont)+ ': ' + @cliente
print ' Factura #'+@factura+' Total S/.'+ @total
print ''
fetch CursorFacura into @cliente,@factura,@total
set @cont=@cont+1end
close CursorFacura
deallocate CursorFacura
--Listar las facturas(número,total) con su respectivos clientes y el detalle
declare @cliente as varchar(50)
declare @factura as varchar(10)
declare @total as varchar(10)declare @cont as int
declare CursorFacura cursor for
select tbCliente.nombreCliente,tbFactura.numeroFactura,tbFactura.totalFactura
from tbCliente
inner join tbFactura on tbCliente.codigoCliente=tbFactura.codigoCliente
open CursorFacura
set @cont=1
print 'LISTA DE FACTURAS POR CLIENTE'
print '============================='
fetch CursorFacura into @cliente,@factura,@total
while (@@fetch_status=0)begin
print 'Cliente '+convert(varchar(3),@cont)+': '+ @cliente
print ' Factura #'+@factura+' Total S/.'+ @total
print ' DETALLE DE LA FACTURA # '+ @factura
print ' ------------------------------'
declare @producto as varchar(30)
declare @cantidad as varchar(10)
declare @precio as varchar(10)
declare @importe as varchar(10)
declare CursorDetalle cursor for
select tbProducto.nombreProducto,tbDetalleFactura.cantidadProducto,tbProducto.precioProducto,
tbDetalleFactura.importeProducto
from tbProducto
inner join tbDetalleFactura on tbProducto.codigoProducto=tbDetalleFactura.codigoProducto
where tbDetalleFactura.numeroFactura = @factura
open CursorDetalle
fetch CursorDetalle into @producto,@cantidad,@precio,@importe
while (@@fetch_status=0)begin
print ' Producto: '+ @producto
print ' Precio: S/.'+ @precio+' Cantidad: '+@cantidad+' Importe: S/.'+ @importe
fetch CursorDetalle into @producto,@cantidad,@precio,@importe
end
close CursorDetalle
deallocate CursorDetalle
print ''
fetch CursorFacura into @cliente,@factura,@total
set @cont=@cont+1end
close CursorFacura
deallocate CursorFacura
BASE DE DATOS, de este blog.
--Listar todas las categorías
declare @codigo as varchar(4)
declare @nombre as varchar(50)declare CursorCategoria cursor for
select * from tbCategoria
open CursorCategoria
print 'LISTA DE CATEGORIAS'
print '==================='
fetch CursorCategoria into @codigo,@nombre
while (@@fetch_status=0) begin
print @codigo +' '+ @nombre fetch CursorCategoria into @codigo,@nombreend
close CursorCategoria
deallocate CursorCategoria
--Listar las facturas(número,total) con su respectivos clientes
declare @cliente as varchar(50)
declare @factura as varchar(10)
declare @total as varchar(10)declare @cont as int
declare CursorFacura cursor for select tbCliente.nombreCliente,tbFactura.numeroFactura,tbFactura.totalFactura
from tbCliente
inner join tbFactura on tbCliente.codigoCliente=tbFactura.codigoCliente
open CursorFacura
set @cont=1
print ' LISTA DE FACTURAS POR CLIENTE'
print ' ============================='
fetch CursorFacura into @cliente,@factura,@total
while (@@fetch_status=0)begin
print 'Cliente '+convert(varchar(3),@cont)+ ': ' + @cliente
print ' Factura #'+@factura+' Total S/.'+ @total
print ''
fetch CursorFacura into @cliente,@factura,@total
set @cont=@cont+1end
close CursorFacura
deallocate CursorFacura
--Listar las facturas(número,total) con su respectivos clientes y el detalle
declare @cliente as varchar(50)
declare @factura as varchar(10)
declare @total as varchar(10)declare @cont as int
declare CursorFacura cursor for
select tbCliente.nombreCliente,tbFactura.numeroFactura,tbFactura.totalFactura
from tbCliente
inner join tbFactura on tbCliente.codigoCliente=tbFactura.codigoCliente
open CursorFacura
set @cont=1
print 'LISTA DE FACTURAS POR CLIENTE'
print '============================='
fetch CursorFacura into @cliente,@factura,@total
while (@@fetch_status=0)begin
print 'Cliente '+convert(varchar(3),@cont)+': '+ @cliente
print ' Factura #'+@factura+' Total S/.'+ @total
print ' DETALLE DE LA FACTURA # '+ @factura
print ' ------------------------------'
declare @producto as varchar(30)
declare @cantidad as varchar(10)
declare @precio as varchar(10)
declare @importe as varchar(10)
declare CursorDetalle cursor for
select tbProducto.nombreProducto,tbDetalleFactura.cantidadProducto,tbProducto.precioProducto,
tbDetalleFactura.importeProducto
from tbProducto
inner join tbDetalleFactura on tbProducto.codigoProducto=tbDetalleFactura.codigoProducto
where tbDetalleFactura.numeroFactura = @factura
open CursorDetalle
fetch CursorDetalle into @producto,@cantidad,@precio,@importe
while (@@fetch_status=0)begin
print ' Producto: '+ @producto
print ' Precio: S/.'+ @precio+' Cantidad: '+@cantidad+' Importe: S/.'+ @importe
fetch CursorDetalle into @producto,@cantidad,@precio,@importe
end
close CursorDetalle
deallocate CursorDetalle
print ''
fetch CursorFacura into @cliente,@factura,@total
set @cont=@cont+1end
close CursorFacura
deallocate CursorFacura
No hay comentarios:
Publicar un comentario