Sunteți pe pagina 1din 41

--SQL

--17/10
ALTER proc [dbo].[spbuscar_ingreso_documento]
@textobuscar varchar (20),
@textobuscar2 varchar (20)
as
select top 100 i.idingreso, p.nombre as proveedor,
i.fecha_ingreso,i.tipo_doc,i.num_doc,
i.total,i.igv,i.descuento,i.estado,v.nombre as vendedor,p.idproveedor,i.estado
from detalle_ingreso d inner join ingreso i
on d.idingreso = i.idingreso
inner join proveedor p
on i.idproveedor = p.idproveedor
inner join vendedor v
on i.idvendedor = v.idvendedor
group by
i.idingreso, v.nombre,
p.nombre,p.idproveedor,
i.fecha_ingreso,i.tipo_doc,i.num_doc,i.estado,i.total,i.igv,i.descuento,i.estado
having i.num_doc like '%'+@textobuscar2 + '%'

--04/09
ALTER proc [dbo].[spmostrar_detalle_salida_pendiente]
as
select top 100 ds.iddetalle_salida,ds.idsalida,ds.iddetalle_ingreso,ds.cantidad,
m.codigo,ds.cliente from detalle_salida ds
inner join detalle_ingreso di
on di.iddetalle_ingreso = ds.iddetalle_ingreso
inner join montura m
on m.idmontura = di.idmontura
inner join salida s
on ds.idsalida = s.idsalida
where s.num_doc = 'PENDIENTE'

ALTER proc [dbo].[spmostrar_salida]


as
select top 50 s.idsalida,s.tipo_doc,s.num_doc,(c.apellido + ' ' +c.nombre) as
cliente,s.fecha,s.observacion,v.usuario,s.idcliente from salida s
inner join vendedor v
on v.idvendedor = s.idvendedor
inner join cliente c
on c.idcliente = s.idcliente
where s.num_doc != 'PENDIENTE'
order by fecha desc

ALTER proc [dbo].[spbuscar_detalle_salida_pendiente_cliente]


@textobuscar varchar(50)
as
select ds.iddetalle_salida,ds.idsalida,ds.iddetalle_ingreso,ds.cantidad,
m.codigo,ds.cliente from detalle_salida ds
inner join detalle_ingreso di
on di.iddetalle_ingreso = ds.iddetalle_ingreso
inner join montura m
on m.idmontura = di.idmontura
inner join salida s
on s.idsalida = ds.idsalida
where ds.cliente like @textobuscar + '%' and s.num_doc = 'PENDIENTE'
order by iddetalle_salida desc
ALTER proc [dbo].[spbuscar_depurado_cliente]
@textobuscar varchar(50)
as
select V.idventa,(c.apellido + ' ' + c.nombre) as cliente,v.fecha,
v.tipo_doc,v.serie,v.num_doc,v.total,v.acta,v.saldo,v.acta_efectivo,v.acta_tarjeta,
v.tipo_tarjeta,v.ref_tarjeta,
v.pago_efectivo, v.pago_tarjeta,
v.fecha_pago,v.observacion,v.pago_ref_tarjeta,v.pago_tipo_tarjeta,
v.estado,v.referencia,v.tipo_venta,v.fecha_entrega
from venta v inner join cliente c
on c.idcliente = v.idcliente
where c.apellido + ' ' + c.nombre like @textobuscar + '%' and v.tipo_venta =
'DEPURADO'

ALTER proc [dbo].[spbuscar_depurado_documento]


@textobuscar varchar(50)
as
select v.idventa,
(c.apellido +' '+c.nombre) as cliente,v.fecha,
v.tipo_doc,v.serie,v.num_doc,v.total,v.acta,v.saldo,v.acta_efectivo,v.acta_tarjeta,
v.tipo_tarjeta,v.ref_tarjeta,
v.pago_efectivo, v.pago_tarjeta,
v.fecha_pago,v.observacion,v.pago_ref_tarjeta,v.pago_tipo_tarjeta,
v.estado,v.referencia,v.tipo_venta,v.fecha_entrega
from cliente c inner join venta v
on v.idcliente = c.idcliente
inner join vendedor t
on v.idvendedor = t.idvendedor
group by v.idventa,
(c.apellido +' '+c.nombre),v.fecha,
v.tipo_doc,v.serie,v.num_doc,v.total,v.acta,v.saldo,v.acta_efectivo,v.acta_tarjeta,
v.tipo_tarjeta,v.ref_tarjeta,
v.pago_efectivo, v.pago_tarjeta,
v.fecha_pago,v.observacion,v.pago_ref_tarjeta,v.pago_tipo_tarjeta,
v.estado,v.referencia,v.tipo_venta,v.fecha_entrega
having v.tipo_doc +' '+v.serie+ ' '+v.num_doc like @textobuscar and v.tipo_venta =
'DEPURADO'

ALTER proc [dbo].[spbuscar_depurado_fecha]


@textobuscar varchar(50) ,
@textobuscar2 varchar(50)
as
declare @masfecha datetime = dateadd(dd,1,@textobuscar2)
select v.idventa,
t.usuario as vendedor,
(c.apellido +' '+c.nombre) as cliente,
v.fecha, v.tipo_doc,v.serie, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,
v.pago_efectivo, v.pago_tarjeta,
v.fecha_pago,v.observacion,v.pago_ref_tarjeta,v.pago_tipo_tarjeta,
v.estado,v.referencia,v.tipo_venta,v.fecha_entrega
from cliente c inner join venta v
on v.idcliente = c.idcliente
inner join vendedor t
on v.idvendedor = t.idvendedor
group by v.idventa,
t.usuario,
(c.apellido +' '+c.nombre),
v.fecha, v.tipo_doc,v.serie, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,
v.pago_efectivo, v.pago_tarjeta,
v.fecha_pago,v.observacion,v.pago_ref_tarjeta,v.pago_tipo_tarjeta,
v.estado,v.referencia,v.tipo_venta,v.fecha_entrega
having V.tipo_venta = 'DEPURADO' and v.fecha >= @textobuscar and v.fecha <
@masfecha
order by v.fecha desc

--16/07
ALTER proc [dbo].[spmostrar_ingreso]
as
select top 100 i.idingreso, p.nombre as proveedor,
i.fecha_ingreso,(i.tipo_doc+' '+i.num_doc) as documento,
i.total,i.igv,i.descuento,i.estado,(v.apellidos+' '+v.nombre) as
vendedor,p.idproveedor,
tipo_doc,num_doc,p.nombre as proveedor
from detalle_ingreso d inner join ingreso i
on d.idingreso = i.idingreso
inner join proveedor p
on i.idproveedor = p.idproveedor
inner join vendedor v
on i.idvendedor = v.idvendedor
group by
i.idingreso, v.apellidos+' '+v.nombre,
p.nombre,p.idproveedor,
i.fecha_ingreso,i.tipo_doc,i.num_doc,i.estado,i.total,i.igv,i.descuento
order by i.idingreso desc

--27/06
ALTER proc [dbo].[spbuscar_ingreso_documento]
@textobuscar varchar (20),
@textobuscar2 varchar (20)
as
select top 100 i.idingreso, p.nombre as proveedor,
i.fecha_ingreso,(i.tipo_doc+' '+i.num_doc) as documento,
i.total,i.igv,i.descuento,i.estado,(v.apellidos+' '+v.nombre) as
vendedor,p.idproveedor
from detalle_ingreso d inner join ingreso i
on d.idingreso = i.idingreso
inner join proveedor p
on i.idproveedor = p.idproveedor
inner join vendedor v
on i.idvendedor = v.idvendedor
group by
i.idingreso, v.apellidos+' '+v.nombre,
p.nombre,p.idproveedor,
i.fecha_ingreso,i.tipo_doc,i.num_doc,i.estado,i.total,i.igv,i.descuento
having i.num_doc like '%'+@textobuscar2 + '%'

ALTER proc [dbo].[spbuscar_ingreso_fecha]


@textobuscar varchar (20),
@textobuscar2 varchar (20)
as
select top 100 i.idingreso, p.nombre as proveedor,
i.fecha_ingreso,(i.tipo_doc+' '+i.num_doc) as documento,
i.total,i.igv,i.descuento,i.estado,(v.apellidos+' '+v.nombre) as
vendedor,p.idproveedor
from detalle_ingreso d inner join ingreso i
on d.idingreso = i.idingreso
inner join proveedor p
on i.idproveedor = p.idproveedor
inner join vendedor v
on i.idvendedor = v.idvendedor
group by
i.idingreso, v.apellidos+' '+v.nombre,
p.nombre,p.idproveedor,
i.fecha_ingreso,i.tipo_doc,i.num_doc,i.estado,i.total,i.igv,i.descuento
having i.fecha_ingreso>=@textobuscar and i.fecha_ingreso<=@textobuscar2

ALTER proc [dbo].[spmostrar_ingreso]


as
select top 100 i.idingreso, p.nombre as proveedor,
i.fecha_ingreso,(i.tipo_doc+' '+i.num_doc) as documento,
i.total,i.igv,i.descuento,i.estado,(v.apellidos+' '+v.nombre) as
vendedor,p.idproveedor
from detalle_ingreso d inner join ingreso i
on d.idingreso = i.idingreso
inner join proveedor p
on i.idproveedor = p.idproveedor
inner join vendedor v
on i.idvendedor = v.idvendedor
group by
i.idingreso, v.apellidos+' '+v.nombre,
p.nombre,p.idproveedor,
i.fecha_ingreso,i.tipo_doc,i.num_doc,i.estado,i.total,i.igv,i.descuento
order by i.idingreso desc

alter table ingreso_efectivo


alter column monto decimal(7,2) not null

alter table caja


alter column total decimal(7,2) not null

--26/06
--REPORTE QUE ENLAZA VENTA CON TICKET DE PROVEEDOR
create proc spmostrar_doc_compra_venta--fecha
@textobuscar1 varchar(50),
@textobuscar2 varchar(50)
as
declare @masfecha datetime = dateadd(dd,1,@textobuscar2)
select top 100 v.fecha,(v.tipo_doc +' '+v.serie+' '+v.num_doc)as Doc_venta,
(i.tipo_doc +' '+i.num_doc) as Doc_compra,m.descripcion,dv.p_venta as
Venta,di.pcompra as Compra,
(dv.p_venta-di.pcompra) as G_neta,i.estado from ingreso i
inner join detalle_ingreso di
on di.idingreso = i.idingreso
inner join detalle_venta dv
on dv.iddetalle_ingreso = di.iddetalle_ingreso
inner join venta v
on v.idventa = dv.idventa
inner join montura m
on m.idmontura = di.idmontura
where i.estado != 'ANULADO' and v.estado != 'ANULADO'
and v.fecha >= @textobuscar1 and v.fecha < @masfecha
order by v.idventa desc
create proc spbuscar_doc_compra_venta--doc
@textobuscar1 varchar(50)
as
select top 100 v.fecha,(v.tipo_doc +' '+v.serie+' '+v.num_doc)as Doc_venta,
(i.tipo_doc +' '+i.num_doc) as Doc_compra,m.descripcion,dv.p_venta as
Venta,di.pcompra as Compra,
(dv.p_venta-di.pcompra) as G_neta,i.estado from ingreso i
inner join detalle_ingreso di
on di.idingreso = i.idingreso
inner join detalle_venta dv
on dv.iddetalle_ingreso = di.iddetalle_ingreso
inner join venta v
on v.idventa = dv.idventa
inner join montura m
on m.idmontura = di.idmontura
where i.estado != 'ANULADO' and v.estado != 'ANULADO'
and (v.tipo_doc +' '+v.serie+' '+v.num_doc) = @textobuscar1
order by v.idventa desc

ALTER proc [dbo].[spinsertar_caja]


@idcaja int output,
@fecha datetime,
@total decimal(7,2),
@efectivo decimal(6,2),
@tarjeta decimal(6,2),
@saldo decimal(6,2),
@idvendedor int,
@acumulado decimal(10,2),
@egreso decimal(7,2),
@informacion varchar(200)
as
insert into caja
(fecha,total,efectivo,tarjeta,saldo,idvendedor,acumulado,egreso,informacion)
values
(@fecha,@total,@efectivo,@tarjeta,@saldo,@idvendedor,@acumulado,@egreso,@informacio
n)

alter table caja


alter column egreso decimal(7,2) not null

ALTER proc [dbo].[spinsertar_egreso_efectivo]


@idegreso_efectivo int output,
@monto decimal(7,2),
@documento varchar(20),
@descripcion varchar(50),
@idvendedor int,
@fecha datetime,
@categoria varchar(20)
as
insert into egreso_efectivo(monto,documento,descripcion,idvendedor,fecha,categoria)
values(@monto,@documento,@descripcion,@idvendedor,@fecha,@categoria)

alter table egreso_efectivo


alter column monto decimal(7,2) not null

--23/05
ALTER proc [dbo].[spreporte_ventas_correlativo]
@textobuscar1 varchar(50),
@textobuscar2 varchar(50)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select v.fecha, (c.apellido + ' '+ c.nombre) as cliente, (v.tipo_doc+' '+v.serie+ '
'+v.num_doc) as Documento,
v.total,v.acta,v.saldo,v.tipo_venta,v.observacion,v.estado,v.referencia, ve.nombre
from venta v
inner join cliente c
on v.idcliente = c.idcliente
inner join vendedor ve
on ve.idvendedor = v.idvendedor
where v.fecha >= @textobuscar1 and v.fecha < @masfecha
group by
v.fecha,c.apellido,c.nombre,v.tipo_doc,v.serie,v.num_doc,v.total,v.acta,v.saldo,v.t
ipo_venta,v.observacion,v.estado,v.referencia,ve.nombre
order by v.num_doc asc

--14/04
ALTER proc [dbo].[spmostrar_ventapagos_dia]
@textobuscar varchar(50),
@textobuscar1 varchar(50)
as
--declare @masminuto varchar(50) = dateadd(MINUTE,1,@textobuscar1)
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar),
@masfecha1 varchar(50) = dateadd(dd,1,@textobuscar1)
select fecha_pago,(tipo_doc+' '+serie+' '+num_doc) as documento,pago_efectivo as
efectivo,
pago_tarjeta as tarjeta,total,acta,saldo from venta
where estado <> 'ANULADO' AND estado <> 'CANJE' and fecha_pago is not null and
fecha_pago >= @masfecha and fecha_pago < @masfecha1
union
select p.fecha_pago, p.documento,p.efectivo,p.tarjeta,v.total,v.acta,v.saldo from
pago p
inner join venta v
on v.idventa = p.idventa
where p.fecha_pago >= @masfecha and p.fecha_pago < @masfecha1
order by fecha_pago desc

ALTER proc [dbo].[spreporte_cierre_efectivo]


@textobuscar1 varchar(50),
@textobuscar2 varchar(50)
as
declare @valor decimal = 0, @masfecha datetime = dateadd(dd,1,@textobuscar2),
@masfecha1 datetime = dateadd(dd,1,@textobuscar1),
@ingreso varchar(7) = 'INGRESO',@egreso varchar(6) = 'SALIDA',@credito varchar (12)
= 'PAGOS'
select Flujo = @ingreso,v.tipo_venta as Tipo,(v.tipo_doc+' '+v.serie+'
'+v.num_doc) as Documento,v.total as Total,(v.acta_efectivo) as Efectivo,v.saldo as
Saldo,v.acta_tarjeta as Tarjeta,v.fecha from venta v
where v.estado != 'ANULADO' and v.estado !='CANJE' and v.fecha >= @masfecha1 and
fecha < @masfecha
union
select Flujo = @ingreso,v.tipo_venta as Tipo,(v.tipo_doc+' '+v.serie+' '+v.num_doc)
as Documento,@valor as Total,(pago_efectivo) as Efectivo,v.saldo as
Saldo,v.pago_tarjeta as Tarjeta,v.fecha_pago from venta v
where v.fecha_pago >= @masfecha1 and fecha_pago < @masfecha and v.estado !=
'ANULADO' and v.estado !='CANJE'
union
select Flujo = @ingreso, Tipo = @credito,dc.documento_pago as Documento,@valor as
Total, dc.efectivo as Efectivo,dc.saldo as Saldo,dc.tarjeta as
Tarjeta,dc.fecha_pago from detalle_credito dc
where fecha_pago >= @masfecha1 and fecha_pago<@masfecha and (pagado != 0 or
efectivo != 0 or tarjeta != 0)
union
select Flujo = @ingreso,ie.categoria as Tipo,ie.documento as Documento,@valor as
Total,ie.monto as Efectivo,@valor as Saldo,@valor as Tarjeta,ie.fecha from
ingreso_efectivo ie
where ie.fecha >= @masfecha1 and fecha < @textobuscar2
union
select Flujo = @ingreso,Tipo = @credito,pa.documento as Documento,v.total as Total,
pa.efectivo as Efectivo,v.saldo as Saldo,pa.tarjeta as Tarjeta,pa.fecha_pago from
pago pa
inner join venta v
on v.idventa = pa.idventa
where pa.fecha_pago >= @masfecha1 and pa.fecha_pago < @masfecha
union
select Flujo = @egreso,ee.categoria as Tipo,ee.documento as Documento,@valor as
Total,(ee.monto*-1) as Efectivo,@valor as Saldo,@valor as Tarjeta,ee.fecha from
egreso_efectivo ee
where ee.fecha >= @masfecha1 and fecha < @masfecha
union
select FLujo = @egreso,p.nombre as Tipo,(i.tipo_doc + ' ' + i.num_doc) as
Documento,@valor as Total,(i.total*-1) as Efectivo,@valor as Saldo,@valor as
Tarjeta,i.fecha_ingreso from ingreso i
inner join proveedor p
on p.idproveedor = i.idproveedor
where i.fecha_ingreso >= @masfecha1 and i.fecha_ingreso <= @textobuscar2 and
p.tipo_pago = 'EFECTIVO' and i.estado = 'EMITIDO'
order by Documento desc

--09/04
ALTER proc [dbo].[spmostrar_caja_anterior]
@textobuscar varchar(50)
as
select top 1 * from caja
--where fecha < @textobuscar
order by idcaja desc

--28/03
ALTER proc [dbo].[spmostrar_ingreso_compras]
@textobuscar varchar (50),
@textobuscar2 varchar (50)
as
declare @masfecha datetime = dateadd(dd,1,@textobuscar),
@masfecha2 datetime = dateadd(dd,1,@textobuscar2)
select i.total,i.tipo_doc,i.num_doc,i.fecha_ingreso,p.nombre as proveedor from
ingreso i
inner join proveedor p
on p.idproveedor = i.idproveedor
where p.tipo_pago = 'EFECTIVO' and i.estado = 'EMITIDO' and
i.fecha_ingreso >= @masfecha and i.fecha_ingreso < @masfecha2

--26/03
ALTER proc [dbo].[spbuscar_efectivo]
@textobuscar varchar(50)
as
--declare @textobuscar datetime = '17/08/2017'
declare @masfecha datetime = dateadd(dd,1,@textobuscar)
select (select sum(monto) from ingreso_efectivo ie where ie.fecha >= @masfecha) as
ingreso,
(select sum(monto) from egreso_efectivo ee where ee.fecha >= @masfecha) as egreso,
(select sum(p.efectivo) from pago p where p.fecha_pago >= @masfecha) as pagos,
(select sum(dc.efectivo) from detalle_credito dc where dc.fecha_pago >= @masfecha)
as creditos,
sum(acta_efectivo) as efectivo_venta,
(select sum(i.total) from ingreso i inner join proveedor p
on p.idproveedor = i.idproveedor where p.tipo_pago = 'EFECTIVO' and i.estado =
'EMITIDO' and i.fecha_ingreso >= @masfecha) as pago_lentes,
(select sum(pago_efectivo) from venta where fecha_pago>= @masfecha) as
cancelaciones from venta
where fecha >= @masfecha AND estado <> 'ANULADO'

--24/03 --2update
ALTER proc [dbo].[spbuscar_detalle_credito_entrefechas]
@textobuscar1 varchar (50),
@textobuscar2 varchar (50)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar1),
@masfecha2 varchar(50) = dateadd(dd,1,@textobuscar2)
select
dc.idcredito,dc.iddetalle_credito,dc.fecha_pago,dc.documento_pago,dc.efectivo,dc.ta
rjeta,(v.tipo_doc +' '+v.serie+' '+v.num_doc) as credito
,dc.pagado,dc.saldo,dc.cuota,dc.num_cuota from detalle_credito dc
inner join credito c
on c.idcredito = dc.idcredito
inner join venta v
on v.idventa = c. idventa
where dc.fecha_pago >= @masfecha and dc.fecha_pago<=@masfecha2
and (pagado != 0 or efectivo != 0 or tarjeta != 0)

ALTER proc [dbo].[spmostrar_ingreso_efectivoentrefechas]


@textobuscar varchar (50),
@textobuscar2 varchar (50)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar),
@masfecha2 varchar(50) = dateadd(dd,1,@textobuscar2)
select idingreso_efectivo,monto,documento,descripcion,fecha,categoria,tarjeta from
ingreso_efectivo
where fecha >= @masfecha and fecha<@masfecha2 --VERIFICAR FECHA DE MASFECHA

ALTER proc [dbo].[spmostrar_egreso_efectivoentrefechas]


@textobuscar varchar (50),
@textobuscar2 varchar (50)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar),
@masfecha2 varchar(50) = dateadd(dd,1,@textobuscar2)
select idegreso_efectivo,monto,documento,descripcion,fecha,categoria from
egreso_efectivo
where fecha >= @masfecha and fecha< @masfecha2 --VERIFICAR FECHA DE MASFECHA

ALTER proc [dbo].[spmostrar_ventapagos_dia]


@textobuscar varchar(50),
@textobuscar1 varchar(50)
as
--declare @masminuto varchar(50) = dateadd(MINUTE,1,@textobuscar1)
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar),
@masfecha1 varchar(50) = dateadd(dd,1,@textobuscar1)
select fecha_pago,(tipo_doc+' '+serie+' '+num_doc) as documento,pago_efectivo as
efectivo,
pago_tarjeta as tarjeta,total,acta,saldo from venta
where estado <> 'ANULADO' AND estado <> 'CANJE' and fecha_pago is not null and
fecha_pago >= @masfecha and fecha_pago <= @masfecha1
union
select p.fecha_pago, p.documento,p.efectivo,p.tarjeta,v.total,v.acta,v.saldo from
pago p
inner join venta v
on v.idventa = p.idventa
where p.fecha_pago >= @masfecha and p.fecha_pago <= @masfecha1
order by fecha_pago desc

ALTER proc [dbo].[spmostrar_ventavalida_dia]


@textobuscar varchar(50),
@textobuscar1 varchar(50)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar),
@masfecha1 varchar(50) = dateadd(dd,1,@textobuscar1)
select fecha,(tipo_doc + ' '+ serie+' ' +num_doc) as documento,total,acta,
saldo,acta_efectivo,acta_tarjeta
from venta
where estado <> 'ANULADO' AND estado <> 'CANJE' and fecha >= @masfecha and fecha <=
@masfecha1
--where estado <> 'ANULADO' AND estado <> 'CANJE' and fecha >= @textobuscar and
fecha <= @textobuscar1
order by idventa desc

alter proc [dbo].[spbuscar_empresa]


@textobuscar varchar(50)
as
select idempresa,logo,nombre,ruc from empresa
where nombre like @textobuscar + '%'
order by idempresa desc

--20/03
ALTER proc [dbo].[spreporte_credito_fechas]
@textobuscar1 varchar(20),
@textobuscar2 varchar(20)
as
select c.cliente,c.documento,v.total,v.acta,v.saldo,c.cuotas,c.monto_cuota,i.nombre
as institucion,
c.fecha,c.observacion from credito c
inner join institucion i
on i.idinstitucion = c.idinstitucion
inner join venta v
on v.idventa = c.idventa
where c.fecha >= @textobuscar1 and c.fecha <= @textobuscar2
and v.saldo > 0
order by institucion, documento asc

--16/03
create proc spreporte_ventas_correlativo
@textobuscar1 varchar(50),
@textobuscar2 varchar(50)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select v.fecha, (c.apellido + ' '+ c.nombre) as cliente, (v.tipo_doc+' '+v.serie+ '
'+v.num_doc) as Documento,
v.total,v.acta,v.saldo,v.tipo_venta,v.observacion,v.estado,v.referencia, ve.nombre
from venta v
inner join cliente c
on v.idcliente = v.idcliente
inner join vendedor ve
on ve.idvendedor = v.idvendedor
where v.fecha >= @textobuscar1 and v.fecha < @masfecha
order by v.num_doc asc

--15/03
ALTER proc [dbo].[spreporte_saldo_fechas]
@textobuscar1 varchar(50),
@textobuscar2 varchar(50)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select v.fecha,(c.apellido +' '+c.nombre)as nombre,
(v.tipo_doc +' '+v.serie+' '+v.num_doc)as documento,v.total,v.acta,v.saldo,
v.observacion,(c.celular+' '+c.telefono) as telefono from venta v
inner join cliente c
on c.idcliente = v.idcliente
where SALDO > 0 and fecha >= @textobuscar1 and fecha < @masfecha
--where SALDO > 0 and fecha >= '01/10/2017' and fecha < '01/11/2018'
and tipo_venta != 'DEPURADO' and tipo_venta != 'CREDITO'
AND estado != 'ANULADO'
order by V.fecha asc

ALTER proc [dbo].[spreporte_egreso_ingreso]


@textobuscar varchar (50),
@textobuscar2 varchar (50)
as
declare @ingreso varchar(10) = 'INGRESO', @egreso varchar(10) = 'EGRESO',@masfecha
datetime = dateadd(dd,1,@textobuscar2)
select @ingreso AS tipo,monto, documento, descripcion,fecha from ingreso_efectivo
where fecha >= @textobuscar and fecha< @masfecha
union
select @EGRESO as tipo ,monto, documento, descripcion,fecha from egreso_efectivo
where fecha >= @textobuscar and fecha< @masfecha
order by tipo

ALTER proc [dbo].[spmostrar_ingreso_efectivoentrefechas]


@textobuscar varchar (50),
@textobuscar2 varchar (50)
as
declare @masfecha datetime = dateadd(dd,1,@textobuscar2)
select idingreso_efectivo,monto,documento,descripcion,fecha,categoria,tarjeta from
ingreso_efectivo
where fecha >= @textobuscar and fecha<@masfecha

ALTER proc [dbo].[spmostrar_egreso_efectivoentrefechas]


@textobuscar varchar (50),
@textobuscar2 varchar (50)
as
declare @masfecha datetime = dateadd(dd,1,@textobuscar2)
select idegreso_efectivo,monto,documento,descripcion,fecha,categoria from
egreso_efectivo
where fecha >= @textobuscar and fecha< @masfecha

create proc spreporte_ingreso_fechas


@textobuscar1 varchar(50),
@textobuscar2 varchar(50)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select fecha,documento,descripcion,monto,categoria from ingreso_efectivo
where fecha >= @textobuscar1 and fecha < @masfecha
order by fecha desc

create proc spreporte_egreso_fechas


@textobuscar1 varchar(50),
@textobuscar2 varchar(50)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select fecha,documento,descripcion,monto,categoria from egreso_efectivo
where fecha >= @textobuscar1 and fecha < @masfecha
order by fecha desc

ALTER proc [dbo].[spreporte_monturas_vendidas]


@textobuscar1 varchar(50),
@textobuscar2 varchar(50)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select v.fecha,(v.tipo_doc+ ' '+v.serie+ ' ' + v.num_doc) as
documento,m.descripcion, dv.cantidad, tipo_venta,m.categoria from venta v
inner join detalle_venta dv
on v.idventa = dv.idventa
inner join detalle_ingreso di
on di.iddetalle_ingreso = dv.iddetalle_ingreso
inner join montura m
on m.idmontura = di.idmontura
where m.presentacion = 'MONTURA' and tipo_venta != 'ANULADO' AND v.tipo_venta !=
'DEPURADO' and m.descripcion != 'MONTURA DE CLIENTE'
and v.fecha >= @textobuscar1 and v.fecha < @masfecha

--10/03
ALTER proc [dbo].[spbuscar_saldo_venta]
@textobuscar varchar(50),
@textobuscar2 varchar(50)
as
declare @masfecha datetime = dateadd(dd,1,@textobuscar2)
select v.idventa,
(c.apellido +' '+c.nombre) as cliente,
v.fecha, (v.tipo_doc + ' '+v.serie+' '+ v.num_doc) as documento,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,
t.usuario as vendedor
from detalle_venta d inner join venta v
on d.idventa = v.idventa
inner join cliente c
on v.idcliente = c.idcliente
inner join vendedor t
on v.idvendedor = t.idvendedor
group by v.idventa,
t.usuario,
(c.apellido +' '+c.nombre),
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta, v.serie,v.tipo_venta,v.estado
having v.saldo > 0 and v.fecha >= @textobuscar and v.fecha <= @masfecha and
v.tipo_venta = 'VENTA' and v.estado != 'ANULADO'
union
select v.idventa,
(c.apellido +' '+c.nombre) as cliente,
v.fecha, (v.tipo_doc + ' '+v.serie+' '+ v.num_doc) as documento,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,
t.usuario as vendedor
from adelanto a inner join venta v
on a.idventa = v.idventa
inner join cliente c
on v.idcliente = c.idcliente
inner join vendedor t
on v.idvendedor = t.idvendedor
group by v.idventa,
t.usuario,
(c.apellido +' '+c.nombre),
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,v.serie,v.tipo_venta,v.estado
having v.saldo > 0 and v.tipo_venta = 'VENTA' and v.fecha >= @textobuscar and
v.fecha <= @masfecha and v.estado != 'ANULADO'
order by v.idventa desc

ALTER proc [dbo].[spbuscar_saldo_documento]


@textobuscar varchar(50)
as
select top 50 v.idventa,
(c.apellido +' '+c.nombre) as cliente,
v.fecha, (v.tipo_doc + ' '+v.serie+' '+ v.num_doc) as documento,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,
t.usuario as vendedor
from detalle_venta d inner join venta v
on d.idventa = v.idventa
inner join cliente c
on v.idcliente = c.idcliente
inner join vendedor t
on v.idvendedor = t.idvendedor
group by v.idventa,
t.usuario,
(c.apellido +' '+c.nombre),
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta, v.serie,v.tipo_venta,v.estado
having v.saldo > 0 and v.tipo_doc+' '+v.serie+' '+ v.num_doc like @textobuscar
+'%' and v.tipo_venta = 'VENTA' and v.estado != 'ANULADO'
union
select v.idventa,
(c.apellido +' '+c.nombre) as cliente,
v.fecha, (v.tipo_doc + ' '+v.serie+' '+ v.num_doc) as documento,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,
t.usuario as vendedor
from adelanto a inner join venta v
on a.idventa = v.idventa
inner join cliente c
on v.idcliente = c.idcliente
inner join vendedor t
on v.idvendedor = t.idvendedor
group by v.idventa,
t.usuario,
(c.apellido +' '+c.nombre),
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,v.serie,v.tipo_venta,v.estado
having v.saldo > 0 and v.tipo_doc+' '+v.serie+' '+ v.num_doc like @textobuscar
+'%' and v.tipo_venta = 'VENTA' and v.estado != 'ANULADO'
order by v.idventa desc

ALTER proc [dbo].[spbuscar_saldo_cliente]


@textobuscar varchar(50)
as
select top 50 v.idventa,
(c.apellido +' '+c.nombre) as cliente,
v.fecha, (v.tipo_doc + ' '+v.serie+' '+ v.num_doc) as documento,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,
t.usuario as vendedor
from detalle_venta d inner join venta v
on d.idventa = v.idventa
inner join cliente c
on v.idcliente = c.idcliente
inner join vendedor t
on v.idvendedor = t.idvendedor
group by v.idventa,
t.usuario,
(c.apellido +' '+c.nombre),
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta, v.serie,v.tipo_venta,v.estado
--having v.saldo > 0 and v.tipo_venta = 'VENTA' and V.estado != 'ANULADO'
having v.saldo > 0 and c.apellido + ' ' + c.nombre like @textobuscar + '%' and
v.tipo_venta = 'VENTA' and V.estado != 'ANULADO'
union
select top 50 v.idventa,
(c.apellido +' '+c.nombre) as cliente,
v.fecha, (v.tipo_doc + ' '+v.serie+' '+ v.num_doc) as documento,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,
t.usuario as vendedor
from adelanto a inner join venta v
on a.idventa = v.idventa
inner join cliente c
on v.idcliente = c.idcliente
inner join vendedor t
on v.idvendedor = t.idvendedor
group by v.idventa,
t.usuario,
(c.apellido +' '+c.nombre),
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,v.serie,v.tipo_venta,v.estado
--having v.saldo > 0 and v.tipo_venta = 'VENTA' and V.estado != 'ANULADO'
having v.saldo > 0 and c.apellido + ' ' + c.nombre like @textobuscar + '%' and
v.tipo_venta = 'VENTA' and V.estado != 'ANULADO'
order by v.idventa desc

ALTER proc [dbo].[speditar_medida]


@idmedida int,
@esf varchar(6),
@cil varchar(5),
@adicion varchar(5),
@medida varchar(20)
as
update medida set
esf=@esf,
cil=@cil,
adicion = @adicion,
medida = @medida
where idmedida = @idmedida

ALTER proc [dbo].[spinsertar_medida]


@idmedida int output,
@esf varchar(6),
@cil varchar(5),
@adicion varchar(5),
@medida varchar(20)
as
insert into medida(esf,cil,adicion,medida)
values (@esf,@cil,@adicion,@medida)

ALTER proc [dbo].[spreporte_credito_institucion]


@textobuscar int
as
select distinct idcredito,idventa,i.nombre,fecha,cliente,total,cuotas,
(select top 1 num_cuota from detalle_credito where idcredito = c.idcredito order by
num_cuota desc)+1 AS ult_cuota,monto_cuota
from credito c inner join institucion i
on c.idinstitucion = i.idinstitucion
where c.estado != 'PAGADO' and i.idinstitucion = @textobuscar

ALTER proc [dbo].[spbuscar_hc_cliente]


@textobuscar int
as
select idhc,fecha,edad,(nombre +' '+ apellido) as nombre,
odesf,odcil,odeje,odadd,odcb,oddiam,
oiesf,oicil,oieje,oiadd,oicb,oidiam,
diplejos,dipcerca,avodlejos,avoilejos,avodsc,avoisc,
diagnostico,especialista,observacion from hc
where idcliente = @textobuscar
order by fecha desc

--01/02
--cambiar tipo de dato
alter table ingreso
alter column fecha_ingreso datetime not null

ALTER proc [dbo].[spmostrar_ingreso_compras]


@textobuscar varchar (50),
@textobuscar2 varchar (50)
as
--declare @masfecha datetime = dateadd(dd,1,@textobuscar2)
select i.total,i.tipo_doc,i.num_doc,i.fecha_ingreso,p.nombre as proveedor from
ingreso i
inner join proveedor p
on p.idproveedor = i.idproveedor
where p.tipo_pago = 'EFECTIVO' and i.estado = 'EMITIDO' and
i.fecha_ingreso >= @textobuscar and i.fecha_ingreso < @textobuscar2
--29/01
create proc spreporte_monturas_vendidas
@textobuscar varchar(50)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar)
select v.fecha,(v.tipo_doc+ ' '+v.serie+ ' ' + v.num_doc) as
documento,m.descripcion, dv.cantidad, tipo_venta,m.categoria from venta v
inner join detalle_venta dv
on v.idventa = dv.idventa
inner join detalle_ingreso di
on di.iddetalle_ingreso = dv.iddetalle_ingreso
inner join montura m
on m.idmontura = di.idmontura
where m.presentacion = 'MONTURA' and tipo_venta != 'ANULADO' AND v.tipo_venta !=
'DEPURADO' and m.descripcion != 'MONTURA DE CLIENTE'
and v.fecha >= @textobuscar and v.fecha < @masfecha

--20/01
ALTER proc [dbo].[spmostrar_ingreso_compras]
@textobuscar varchar (50),
@textobuscar2 varchar (50)
as
--declare @masfecha datetime = dateadd(dd,1,@textobuscar2)
select i.total,i.tipo_doc,i.num_doc,i.fecha_ingreso,p.nombre as proveedor from
ingreso i
inner join proveedor p
on p.idproveedor = i.idproveedor
where p.tipo_pago = 'EFECTIVO' and i.estado = 'EMITIDO' and
fecha_ingreso >= @textobuscar and fecha_ingreso <= @textobuscar2--@masfecha

--17/01
ALTER proc [dbo].[spbuscar_efectivo]
@textobuscar varchar(50)
as
--declare @textobuscar datetime = '17/08/2017'
select (select sum(monto) from ingreso_efectivo ie where ie.fecha >= @textobuscar)
as ingreso,
(select sum(monto) from egreso_efectivo ee where ee.fecha >= @textobuscar) as
egreso,
(select sum(p.efectivo) from pago p where p.fecha_pago >= @textobuscar) as pagos,
(select sum(dc.efectivo) from detalle_credito dc where dc.fecha_pago >=
@textobuscar) as creditos,
sum(acta_efectivo) as efectivo_venta,
(select sum(i.total) from ingreso i inner join proveedor p
on p.idproveedor = i.idproveedor where p.tipo_pago = 'EFECTIVO' and i.estado =
'EMITIDO' and i.fecha_ingreso >=@textobuscar) as pago_lentes,
(select sum(pago_efectivo) from venta where fecha_pago>= @textobuscar) as
cancelaciones from venta
where fecha > = @textobuscar AND estado <> 'ANULADO'

--16/01
ALTER proc [dbo].[spreporte_cierre_efectivo]
@textobuscar1 varchar(50),
@textobuscar2 varchar(50)
as
declare @valor decimal = 0, @masfecha datetime = dateadd(dd,1,@textobuscar2),
@ingreso varchar(7) = 'INGRESO',@egreso varchar(6) = 'SALIDA',@credito varchar (12)
= 'PAGOS'
select Flujo = @ingreso,v.tipo_venta as Tipo,(v.tipo_doc+' '+v.serie+'
'+v.num_doc) as Documento,v.total as Total,(v.acta_efectivo) as Efectivo,v.saldo as
Saldo,v.acta_tarjeta as Tarjeta,v.fecha from venta v
where v.estado != 'ANULADO' and v.estado !='CANJE' and v.fecha >= @textobuscar1 and
fecha <= @masfecha
union
select Flujo = @ingreso,v.tipo_venta as Tipo,(v.tipo_doc+' '+v.serie+' '+v.num_doc)
as Documento,@valor as Total,(pago_efectivo) as Efectivo,v.saldo as
Saldo,v.pago_tarjeta as Tarjeta,v.fecha_pago from venta v
where v.fecha_pago >= @textobuscar1 and fecha_pago <= @masfecha and v.estado !=
'ANULADO' and v.estado !='CANJE'
union
select Flujo = @ingreso, Tipo = @credito,dc.documento_pago as Documento,@valor as
Total, dc.efectivo as Efectivo,dc.saldo as Saldo,dc.tarjeta as
Tarjeta,dc.fecha_pago from detalle_credito dc
where fecha_pago >= @textobuscar1 and fecha_pago<=@textobuscar2 and (pagado != 0 or
efectivo != 0 or tarjeta != 0)
union
select Flujo = @ingreso,ie.categoria as Tipo,ie.documento as Documento,@valor as
Total,ie.monto as Efectivo,@valor as Saldo,@valor as Tarjeta,ie.fecha from
ingreso_efectivo ie
where ie.fecha >= @textobuscar1 and fecha <= @textobuscar2
union
select Flujo = @ingreso,Tipo = @credito,pa.documento as Documento,v.total as Total,
pa.efectivo as Efectivo,v.saldo as Saldo,pa.tarjeta as Tarjeta,pa.fecha_pago from
pago pa
inner join venta v
on v.idventa = pa.idventa
where pa.fecha_pago >= @textobuscar1 and pa.fecha_pago <= @textobuscar2
union
select Flujo = @egreso,ee.categoria as Tipo,ee.documento as Documento,@valor as
Total,(ee.monto*-1) as Efectivo,@valor as Saldo,@valor as Tarjeta,ee.fecha from
egreso_efectivo ee
where ee.fecha >= @textobuscar1 and fecha <= @textobuscar2
union
select FLujo = @egreso,p.nombre as Tipo,(i.tipo_doc + ' ' + i.num_doc) as
Documento,@valor as Total,(i.total*-1) as Efectivo,@valor as Saldo,@valor as
Tarjeta,i.fecha_ingreso from ingreso i
inner join proveedor p
on p.idproveedor = i.idproveedor
where i.fecha_ingreso >= @textobuscar1 and i.fecha_ingreso <= @textobuscar2 and
p.tipo_pago = 'EFECTIVO' and i.estado = 'EMITIDO'
order by Documento desc

--15/01
create proc spmostrar_ingreso_compras
@textobuscar varchar (50),
@textobuscar2 varchar (50)
as
declare @masfecha datetime = dateadd(dd,1,@textobuscar2)
select i.total,i.tipo_doc,i.num_doc,i.fecha_ingreso,p.nombre as proveedor from
ingreso i
inner join proveedor p
on p.idproveedor = i.idproveedor
where p.tipo_pago = 'EFECTIVO' and i.estado = 'EMITIDO' and
fecha_ingreso >= @textobuscar and fecha_ingreso <= @masfecha

ALTER proc [dbo].[speditar_proveedor]


@idproveedor int,
@nombre varchar(20),
@ruc varchar(11),
@informacion varchar (50),
@telefono varchar (20),
@tipo_pago varchar(10),
@dia_pago varchar(10)
as
update proveedor set nombre = @nombre, ruc = @ruc, informacion =@informacion,
telefono = @telefono, tipo_pago = @tipo_pago,dia_pago = @dia_pago
where idproveedor = @idproveedor

ALTER proc [dbo].[spinsertar_proveedor]


@idproveedor int output,
@nombre varchar(20),
@ruc varchar(11),
@informacion varchar (50),
@telefono varchar (20),
@tipo_pago varchar(10),
@dia_pago varchar(10)
as
insert into proveedor (nombre, ruc, informacion, telefono,tipo_pago,dia_pago)
values (@nombre, @ruc, @informacion, @telefono,@tipo_pago,@dia_pago)

--agregar a tabla proveedor columnas:


--tipo_pago varchar(10) null: efectivo/semanal
--dia_pago varchar(10) null: si es semanal: LUNES, MARTE,...

create proc spreporte_proveedor_compras


@textobuscar1 varchar(20),
@textobuscar2 varchar(20),
@textobuscar int
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select i.fecha_ingreso,i.tipo_doc,i.num_doc,i.igv,i.descuento,i.total,p.nombre as
proveedor,i.estado from ingreso i
inner join proveedor p
on i.idproveedor = p.idproveedor
where i.idproveedor = @textobuscar
--and i.fecha_ingreso >= '01/12/2017' and i.fecha_ingreso < '30/01/2018'
and i.estado = 'EMITIDO'
and fecha_ingreso >= @textobuscar1 and fecha_ingreso < @masfecha

--09/01
ALTER proc [dbo].[spbuscar_venta_referencia]
@textobuscar varchar(50)
as
select top 50 v.idventa,
(c.apellido +' '+c.nombre) as cliente,
v.tipo_doc,v.serie,v.num_doc,v.fecha,v.idcliente
from cliente c inner join venta v
on v.idcliente = c.idcliente
where v.estado != 'ANULADO' and v.estado != 'CANJE' and v.tipo_venta != 'DEPURADO'
AND v.tipo_doc +' '+v.serie+ ' '+v.num_doc like @textobuscar + '%'
order by v.fecha desc

ALTER proc [dbo].[spmostrar_correlativo]


@tipo_doc varchar (10)
as
select top 50 tipo_doc as Tipo,serie as Serie,
--max(num_doc) as Correlativo from venta
num_doc as Correlativo from venta
where tipo_doc like @tipo_doc
--group by tipo_doc,serie,num_doc
order by serie desc, CAST (num_doc AS DECIMAL) desc
go

--08/01
create proc spreporte_tarjeta
@textobuscar1 varchar (50),
@textobuscar2 varchar (50)
as
declare @masfecha datetime = dateadd(dd,1,@textobuscar2)
select fecha,(tipo_doc+' '+serie+' '+num_doc) as documento,total,acta_tarjeta as
venta,tipo_tarjeta as tarjeta,ref_tarjeta as referencia from venta
where acta_tarjeta > 0
--and fecha >= '01/12/2017' and fecha < '01/01/2018'
and fecha >= @textobuscar1 and fecha < @masfecha
union
select fecha_pago,(tipo_doc+' '+serie+' '+num_doc) as documento,total,pago_tarjeta
as venta,pago_tipo_tarjeta as tarjeta,pago_ref_tarjeta as referencia from venta
where pago_tarjeta > 0
--and fecha_pago >= '01/12/2017' and fecha_pago < '01/01/2018'
and fecha_pago >= @textobuscar1 and fecha_pago < @masfecha
order by fecha asc

--29/12
ALTER proc [dbo].[spmostrar_venta]
as
select top 50 v.idventa,
(c.apellido +' '+c.nombre) as cliente,
v.fecha,v.tipo_doc,v.serie,
v.num_doc,v.total,v.acta,v.saldo,v.acta_efectivo,v.acta_tarjeta,v.tipo_tarjeta,v.re
f_tarjeta,
--pago de la venta
v.fecha_pago,v.pago_efectivo,v.pago_tarjeta,v.observacion,v.pago_ref_tarjeta,v.pago
_tipo_tarjeta,t.usuario as vendedor
from cliente c inner join venta v
on v.idcliente = c.idcliente
inner join vendedor t
on v.idvendedor = t.idvendedor
group by v.idventa,
t.usuario,
(c.apellido +' '+c.nombre),
v.fecha,v.tipo_doc,v.serie,v.num_doc,v.total,v.acta,v.saldo,v.acta_efectivo,v.acta_
tarjeta,v.tipo_tarjeta,v.ref_tarjeta,
--pago de la venta
v.fecha_pago,v.pago_efectivo,v.pago_tarjeta,v.observacion,v.pago_ref_tarjeta,v.pago
_tipo_tarjeta,v.estado
--having v.estado = 'OK'
ORDER by idventa desc

--28/12
ALTER proc [dbo].[spmostrar_taller_fechas_entregar]
as
select top 50
t.idtaller,iddetalle_taller,dt.estado,t.documento,t.cliente,t.fecha,dt.fecha_entreg
a,dt.producto,dt.montura,dt.observacion,dt.datos,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where dt.estado != 'POR ENTREGAR' and dt.estado != 'ENTREGADO'
order by t.fecha desc

ALTER proc [dbo].[spmostrar_taller]


as
select top 50
t.idtaller,iddetalle_taller,dt.estado,t.documento,t.cliente,t.fecha,dt.fecha_entreg
a,dt.producto,dt.montura,dt.observacion,dt.datos,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where dt.estado != 'ENTREGADO'
order by t.fecha desc

ALTER proc [dbo].[spbuscar_taller_porentregar]


@textobuscar1 varchar(20),
@textobuscar2 varchar(20)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select
t.idtaller,iddetalle_taller,dt.estado,t.documento,t.cliente,t.fecha,dt.fecha_entreg
a,dt.producto,dt.montura,dt.observacion,dt.datos,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where dt.estado = 'POR ENTREGAR' AND t.fecha >= @textobuscar1 and t.fecha <=
@masfecha
order by t.fecha desc

ALTER proc [dbo].[spbuscar_taller_pedido_fechas]


@textobuscar1 varchar (20),
@textobuscar2 varchar (20)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select
t.idtaller,iddetalle_taller,dt.estado,t.documento,t.cliente,t.fecha,dt.fecha_entreg
a,dt.producto,dt.montura,dt.observacion,dt.datos,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where dt.estado = 'PEDIDO' and t.fecha >= @textobuscar1 and t.fecha <= @masfecha
order by t.fecha desc

ALTER proc [dbo].[spbuscar_taller_fechas_entregar]


@textobuscar1 varchar(20),
@textobuscar2 varchar(20)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select
t.idtaller,iddetalle_taller,dt.estado,t.documento,t.cliente,t.fecha,dt.fecha_entreg
a,dt.producto,dt.montura,dt.observacion,dt.datos,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where dt.estado != 'POR ENTREGAR' and dt.estado != 'ENTREGADO' and t.fecha >=
@textobuscar1 and t.fecha <= @masfecha
order by t.fecha desc

ALTER proc [dbo].[spbuscar_taller_entregado]


@textobuscar1 varchar(20),
@textobuscar2 varchar(20)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select
t.idtaller,iddetalle_taller,dt.estado,t.documento,t.cliente,t.fecha,dt.fecha_entreg
a,dt.producto,dt.montura,dt.observacion,dt.datos,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where dt.estado = 'ENTREGADO' AND t.fecha >= @textobuscar1 and t.fecha <= @masfecha
order by fecha desc

ALTER proc [dbo].[spbuscar_taller_fabricacion_fechas]


@textobuscar1 varchar (20),
@textobuscar2 varchar (20)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select top 50
t.idtaller,iddetalle_taller,dt.estado,t.documento,t.cliente,t.fecha,dt.fecha_entreg
a,dt.producto,dt.montura,dt.observacion,dt.datos,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where dt.estado = 'FABRICACION' and t.fecha >= @textobuscar1 and t.fecha <=
@masfecha
order by t.fecha desc

ALTER proc [dbo].[spmostrar_taller]


as
select top 50
t.idtaller,iddetalle_taller,dt.estado,t.documento,t.cliente,t.fecha,dt.fecha_entreg
a,dt.producto,dt.montura,dt.observacion,dt.datos,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
order by t.fecha desc

ALTER proc [dbo].[spbuscar_taller_documento]


@textobuscar varchar(50)
as
select top 20
t.idtaller,iddetalle_taller,dt.estado,t.documento,t.cliente,t.fecha,dt.fecha_entreg
a,dt.producto,dt.montura,dt.observacion,dt.datos,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where documento like @textobuscar + '%'
order by fecha desc

ALTER proc [dbo].[spbuscar_taller_cliente]


@textobuscar varchar(50)
as
select top 20
t.idtaller,iddetalle_taller,dt.estado,t.documento,t.cliente,t.fecha,dt.fecha_entreg
a,dt.producto,dt.montura,dt.observacion,dt.datos,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where cliente like @textobuscar + '%'
order by t.fecha desc

ALTER proc [dbo].[spbuscar_taller_fechas]


@textobuscar1 varchar(20),
@textobuscar2 varchar(20)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select
t.idtaller,iddetalle_taller,dt.estado,t.documento,t.cliente,t.fecha,dt.fecha_entreg
a,dt.producto,dt.montura,dt.observacion,dt.datos,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where t.fecha >= @textobuscar1 and t.fecha <= @masfecha
order by t.fecha desc

ALTER proc [dbo].[spbuscar_detalle_credito_entrefechas]


@textobuscar1 varchar (50),
@textobuscar2 varchar (50)
as
select
dc.idcredito,dc.iddetalle_credito,dc.fecha_pago,dc.documento_pago,dc.efectivo,dc.ta
rjeta,(v.tipo_doc +' '+v.serie+' '+v.num_doc) as credito
,dc.pagado,dc.saldo,dc.cuota,dc.num_cuota from detalle_credito dc
inner join credito c
on c.idcredito = dc.idcredito
inner join venta v
on v.idventa = c. idventa
where dc.fecha_pago >= @textobuscar1 and dc.fecha_pago<=@textobuscar2
and (pagado != 0 or efectivo != 0 or tarjeta != 0)

ALTER PROC [dbo].[speditar_venta_depurado]


@textobuscar int,
@referencia varchar(50),
@estado varchar(10),
@fecha_entrega datetime
as
update venta set tipo_venta = 'DEPURADO',
observacion = @referencia +' '+ observacion,
estado = @estado,
fecha_entrega = @fecha_entrega
where idventa = @textobuscar

agregar columna en detalle_credito: ref_tarjeta varchar 20 null

ALTER proc [dbo].[spbuscar_detalle_credito_fecha]


@textobuscar1 varchar(50),
@textobuscar2 varchar (50)
as
select
dc.iddetalle_credito,dc.idcredito,cr.fecha,cr.documento,cr.cliente,dc.num_cuota,
dc.documento_pago,dc.pagado,dc.saldo,dc.cuota,dc.efectivo,dc.tarjeta,dc.ref_tarjeta
from detalle_credito dc
inner join credito cr
on cr.idcredito = dc.idcredito
where pagado > 0 and dc.fecha_pago >= @textobuscar1 and dc.fecha_pago <=
@textobuscar2

ALTER proc [dbo].[spbuscar_detalle_credito_mes]


@textobuscar1 varchar(2),
@textobuscar2 varchar (4),
@textobuscar3 int
as
select
dc.iddetalle_credito,dc.idcredito,cr.fecha,cr.documento,cr.cliente,dc.num_cuota,
dc.documento_pago,dc.pagado,dc.saldo,dc.cuota,dc.efectivo,dc.tarjeta,dc.ref_tarjeta
from detalle_credito dc
inner join credito cr
on cr.idcredito = dc.idcredito
where pagado > 0 and month(dc.fecha_pago)=@textobuscar1 and
year(dc.fecha_pago)=@textobuscar2
and cr.idinstitucion = @textobuscar3

ALTER proc [dbo].[spinsertar_detalle_credito]


@iddetalle_credito int output,
@idcredito int,
@num_cuota int,
@fecha_pago datetime,
@documento_pago varchar(20),
@pagado decimal(6,2),
@saldo decimal(6,2),
@cuota decimal(6,2),
@efectivo decimal(6,2),
@tarjeta decimal(6,2),
@ref_tarjeta varchar(20)
as
insert into
detalle_credito(idcredito,num_cuota,fecha_pago,documento_pago,pagado,saldo,cuota,ef
ectivo,tarjeta,ref_tarjeta)
values
(@idcredito,@num_cuota,@fecha_pago,@documento_pago,@pagado,@saldo,@cuota,@efectivo,
@tarjeta,@ref_tarjeta)

--27/12
create proc speditar_detalle_ingreso_ingreso
@textobuscar1 int,
@textobuscar2 int
as
update detalle_ingreso
set
stock_final = stock_final + @textobuscar1,
ubicacion = 'TIENDA'
where iddetalle_ingreso = @textobuscar2
go

ALTER proc [dbo].[spbuscar_venta_detalle]


@textobuscar int
as
declare @descuento decimal = 0
select v.idventa,a.idadelanto as iddetalle_ingreso,a.idadelanto as idingreso,
a.cantidad as cantidad,
a.descripcion as descripcion,
a.pventa as precio,
@descuento as descuento,
a.estado as estado,
a.fecha_venta as fecha from venta v
inner join adelanto a
on a.idventa = v.idventa
where v.idventa = @textobuscar
union
select v.idventa,di.iddetalle_ingreso,di.idingreso,dv.cantidad as cantidad,
m.descripcion as descripcion,dv.p_venta as precio,
dv.descuento as descuento,
di.ubicacion as estado,v.fecha as fecha from venta v
inner join detalle_venta dv
on dv.idventa = v.idventa
inner join detalle_ingreso di
on dv.iddetalle_ingreso = di.iddetalle_ingreso
inner join montura m
on di.idmontura = m.idmontura
where v.idventa = @textobuscar

--17/08
create proc speditar_detalle_salida
@idsalida int,
@iddetalle_salida int
as
update detalle_salida
set idsalida = @idsalida
where iddetalle_salida = @iddetalle_salida
--16/08
modificar tabla detalle_taller:
iddetalle_taller
idtaller
producto varchar(100) null
estado varchar(20) no null
observacion varchar(50) null
montura varchar(50) null
fecha_entrega
fecha_entregado
datos varchar(100) null
idhc int null
--cambiar od y oi

--14/08
ALTER proc [dbo].[spbuscar_medida_cliente]
@textobuscar int
as
select top 50 idcliente,fecha,apellido+' '+nombre as
Paciente,odesf,odcil,odeje,odadd,oiesf,oicil,oieje,oiadd,diplejos,dipcerca,idhc
from hc
where idcliente = @textobuscar
order by fecha desc

--07/08 2
ALTER proc [dbo].[spreporte_venta_vendedor]
@textobuscar varchar(50) ,
@textobuscar2 varchar(50)
as
declare @masfecha datetime = dateadd(dd,1,@textobuscar2)
select ve.nombre as vendedor,v.tipo_venta,
sum(v.total) as total, sum(v.acta) as acta, sum(v.saldo) as
saldo--,sum(v.acta_efectivo + v.pago_efectivo) as
efectivo,sum(v.acta_tarjeta+v.pago_tarjeta) as tarjeta
from venta v
inner join vendedor ve
on v.idvendedor = ve.idvendedor
where v.fecha >= @textobuscar and fecha < @masfecha and tipo_venta != 'GARANTIA'
GROUP BY v.idvendedor,v.tipo_venta,ve.nombre
order by nombre,tipo_venta desc

ALTER proc [dbo].[spreporte_venta_vendedor]


@textobuscar varchar(50) ,
@textobuscar2 varchar(50)
as
declare @masfecha datetime = dateadd(dd,1,@textobuscar2)
select t.usuario as vendedor,v.tipo_venta,
sum(v.total) as total, sum(v.acta) as acta, sum(v.saldo) as
saldo,sum(v.acta_efectivo + v.pago_efectivo) as
efectivo,sum(v.acta_tarjeta+v.pago_tarjeta) as tarjeta from venta v
inner join vendedor t
on v.idvendedor = t.idvendedor
where v.fecha >= @textobuscar and v.fecha < @masfecha
group by usuario,v.tipo_venta,v.fecha,v.estado
--,total,acta,saldo,acta_efectivo,acta_tarjeta,pago_efectivo,pago_tarjeta
having v.tipo_venta = 'VENTA' or v.tipo_venta = 'CREDITO' OR v.tipo_venta =
'RAPIDA' and v.estado != 'ANULADO' AND V.estado != 'CANJE'
order by T.usuario desc
--07/08
ALTER proc [dbo].[spbuscar_saldo_cliente]
@textobuscar varchar(50)
as
select top 50 v.idventa,
t.usuario as vendedor,
(c.apellido +' '+c.nombre) as cliente,
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta, v.serie
from detalle_venta d inner join venta v
on d.idventa = v.idventa
inner join cliente c
on v.idcliente = c.idcliente
inner join vendedor t
on v.idvendedor = t.idvendedor
group by v.idventa,
t.usuario,
(c.apellido +' '+c.nombre),
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta, v.serie,v.tipo_venta,v.estado
having v.saldo > 0 and c.apellido + ' ' + c.nombre like @textobuscar + '%' and
v.tipo_venta = 'VENTA' and V.estado != 'ANULADO'
union
select top 50 v.idventa,
t.usuario as vendedor,
(c.apellido +' '+c.nombre) as cliente,
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,v.serie
from adelanto a inner join venta v
on a.idventa = v.idventa
inner join cliente c
on v.idcliente = c.idcliente
inner join vendedor t
on v.idvendedor = t.idvendedor
group by v.idventa,
t.usuario,
(c.apellido +' '+c.nombre),
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,v.serie,v.tipo_venta,v.estado
having v.saldo > 0 and c.apellido + ' ' + c.nombre like @textobuscar + '%' and
v.tipo_venta = 'VENTA' and V.estado != 'ANULADO'
order by v.idventa desc

ALTER proc [dbo].[spbuscar_saldo_venta]


@textobuscar varchar(50),
@textobuscar2 varchar(50)
as
declare @masfecha datetime = dateadd(dd,1,@textobuscar2)
select v.idventa,
t.usuario as vendedor,
(c.apellido +' '+c.nombre) as cliente,
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta, v.serie
from detalle_venta d inner join venta v
on d.idventa = v.idventa
inner join cliente c
on v.idcliente = c.idcliente
inner join vendedor t
on v.idvendedor = t.idvendedor
group by v.idventa,
t.usuario,
(c.apellido +' '+c.nombre),
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta, v.serie,v.tipo_venta,v.estado
having v.saldo > 0 and v.fecha >= @textobuscar and v.fecha <= @masfecha and
v.tipo_venta = 'VENTA' and v.estado != 'ANULADO'
union
select v.idventa,
t.usuario as vendedor,
(c.apellido +' '+c.nombre) as cliente,
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,v.serie
from adelanto a inner join venta v
on a.idventa = v.idventa
inner join cliente c
on v.idcliente = c.idcliente
inner join vendedor t
on v.idvendedor = t.idvendedor
group by v.idventa,
t.usuario,
(c.apellido +' '+c.nombre),
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,v.serie,v.tipo_venta,v.estado
having v.saldo > 0 and v.tipo_venta = 'VENTA' and v.fecha >= @textobuscar and
v.fecha <= @masfecha and v.estado != 'ANULADO'
order by v.idventa desc

ALTER proc [dbo].[spbuscar_saldo_documento]


@textobuscar varchar(50)
as
select top 50 v.idventa,
t.usuario as vendedor,
(c.apellido +' '+c.nombre) as cliente,
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta, v.serie
from detalle_venta d inner join venta v
on d.idventa = v.idventa
inner join cliente c
on v.idcliente = c.idcliente
inner join vendedor t
on v.idvendedor = t.idvendedor
group by v.idventa,
t.usuario,
(c.apellido +' '+c.nombre),
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta, v.serie,v.tipo_venta,v.estado
having v.saldo > 0 and v.tipo_doc+' '+v.serie+' '+ v.num_doc like @textobuscar
+'%' and v.tipo_venta = 'VENTA' and v.estado != 'ANULADO'
union
select top 50 v.idventa,
t.usuario as vendedor,
(c.apellido +' '+c.nombre) as cliente,
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,v.serie
from adelanto a inner join venta v
on a.idventa = v.idventa
inner join cliente c
on v.idcliente = c.idcliente
inner join vendedor t
on v.idvendedor = t.idvendedor
group by v.idventa,
t.usuario,
(c.apellido +' '+c.nombre),
v.fecha, v.tipo_doc, v.num_doc,
v.total, v.acta, v.saldo, v.acta_efectivo,
v.acta_tarjeta,v.tipo_tarjeta,v.ref_tarjeta,v.serie,v.tipo_venta,v.estado
having v.saldo > 0 and v.tipo_doc+' '+v.serie+' '+ v.num_doc like @textobuscar
+'%' and v.tipo_venta = 'VENTA' and v.estado != 'ANULADO'
order by v.idventa desc

--04/08
create proc spbuscar_ingreso_venta
@textobuscar varchar(20)
as
select * from ingreso
where num_doc = @textobuscar

ALTER proc [dbo].[spmostrar_caja_anterior]


@textobuscar varchar(50)
as
select top 1 * from caja
where fecha < @textobuscar
order by idcaja desc

--26/07
ALTER proc [dbo].[spbuscar_efectivo]
@textobuscar varchar(50)
as
select (select sum(monto) from ingreso_efectivo ie where ie.fecha >= @textobuscar)
as ingreso,
(select sum(monto) from egreso_efectivo ee where ee.fecha >= @textobuscar) as
egreso,
(select sum(p.efectivo) from pago p where p.fecha_pago >= @textobuscar) as pagos,
(select sum(dc.efectivo) from detalle_credito dc where dc.fecha_pago >=
@textobuscar) as creditos,
sum(acta_efectivo) as efectivo_venta,
(select sum(pago_efectivo) from venta where fecha_pago>= @textobuscar) as
cancelaciones from venta
where fecha > = @textobuscar

ALTER proc [dbo].[spmostrar_ventapagos_dia]


@textobuscar varchar(50),
@textobuscar1 varchar(50)
as
declare @masminuto varchar(50) = dateadd(MINUTE,1,@textobuscar1)
select fecha_pago,(tipo_doc+' '+serie+' '+num_doc) as documento,pago_efectivo as
efectivo,
pago_tarjeta as tarjeta,total,acta,saldo from venta
where estado <> 'ANULADO' AND estado <> 'CANJE' and fecha_pago is not null and
fecha_pago >= @textobuscar and fecha_pago <= @masminuto
union
select p.fecha_pago, p.documento,p.efectivo,p.tarjeta,v.total,v.acta,v.saldo from
pago p
inner join venta v
on v.idventa = p.idventa
where p.fecha_pago >= @textobuscar and p.fecha_pago <= @masminuto
order by fecha_pago desc
go

create proc sppagar_venta


@idventa int,
@acta decimal(6,2),
--@saldo money,
@monto decimal(6,2)
as
update venta set
acta = @acta+@monto,
saldo = total- @acta-@monto
where idventa = @idventa

ALTER proc [dbo].[sppagar_saldo_venta]


@idventa int,
@acta decimal(6,2),
--@saldo money,
@fecha_pago datetime,
@pago_efectivo decimal(6,2),
@pago_tarjeta decimal(6,2),
@pago_ref_tarjeta varchar(20),
@pago_tipo_tarjeta varchar(20)
as
update venta set
acta = @acta+@pago_efectivo+@pago_tarjeta,
saldo = total- @acta-@pago_efectivo-@pago_tarjeta,
fecha_pago = @fecha_pago,
pago_efectivo = @pago_efectivo,
pago_tarjeta = @pago_tarjeta,
pago_ref_tarjeta = @pago_ref_tarjeta,
pago_tipo_tarjeta = @pago_tipo_tarjeta
where idventa = @idventa
go

create proc spbuscar_pago


@textobuscar int
as
select fecha_pago,documento,efectivo,tarjeta,tipo_tarjeta,ref_tarjeta from pago
where idventa= @textobuscar
go

create proc spinsertar_pago


@idpago int output,
@idventa int,
@efectivo decimal(6,2),
@tarjeta decimal(6,2),
@tipo_tarjeta varchar(20),
@ref_tarjeta varchar(20),
@fecha_pago datetime,
@documento varchar(50)
as
insert into
pago(idventa,efectivo,tarjeta,tipo_tarjeta,ref_tarjeta,fecha_pago,documento)
values(@idventa,@efectivo,@tarjeta,@tipo_tarjeta,@ref_tarjeta,@fecha_pago,@document
o)
go

--25/17
ALTER proc [dbo].[spbuscar_efectivo]
@textobuscar varchar(50)
as
select (select sum(monto) from ingreso_efectivo ie where ie.fecha >= @textobuscar)
as ingreso,
(select sum(monto) from egreso_efectivo ee where ee.fecha >= @textobuscar) as
egreso,
sum(acta_efectivo) as efectivo_venta,
(select sum(pago_efectivo) from venta where fecha_pago>= @textobuscar) as
cancelaciones,
(select sum(efectivo) as credito from detalle_credito where fecha_pago
>=@textobuscar) from venta
where fecha > = @textobuscar

--24/17
ALTER PROC [dbo].[spbuscar_credito_cliente_porcobrar]
@textobuscar varchar(50)
as
select
c.idcliente,c.idventa,c.idcredito,c.cliente,c.documento,c.total,c.cuotas,c.monto_cu
ota,i.nombre as institucion,
c.fecha,
(select top 1 pagado from detalle_credito where idcredito = c.idcredito order by
num_cuota desc) as pagado,c.observacion from credito c
inner join institucion i
on i.idinstitucion = c.idinstitucion
where cliente like @textobuscar + '%' and c.estado = 'POR COBRAR'
--MODIFICAR A POR COBRAR = EN VEZ DE !=

--19/17
create proc spreporte_montura_campa�a
as
select i.fecha_ingreso,i.tipo_doc,i.num_doc,
m.codigo,di.stock_final,di.cantidad_campa�a,m.descripcion,m.marca from
detalle_ingreso di
inner join montura m
on di.idmontura = m.idmontura
inner join ingreso i
on i.idingreso = di.idingreso
where cantidad_campa�a > 0 and stock_final > 0
go

create proc speditar_articulo_campa�a


@textobuscar1 int,
@textobuscar2 int
as
update detalle_ingreso
set cantidad_campa�a = @textobuscar1
where iddetalle_ingreso = @textobuscar2
go

create proc speliminar_articulo_campa�a


@textobuscar int
as
update detalle_ingreso
set cantidad_campa�a = 0
where iddetalle_ingreso = @textobuscar
go

--18/07
ALTER proc [dbo].[spmostrar_montura_campa�a] --corregir mostrar
as
select di.iddetalle_ingreso,di.idingreso,i.fecha_ingreso,i.tipo_doc,i.num_doc,
m.codigo,di.stock_final,di.cantidad_campa�a,m.descripcion,m.marca from
detalle_ingreso di
inner join montura m
on di.idmontura = m.idmontura
inner join ingreso i
on i.idingreso = di.idingreso
where cantidad_campa�a > 0 and stock_final > 0

CREATE PROC spbuscar_credito_cliente_porcobrar


@textobuscar varchar(50)
as
select
c.idcliente,c.idventa,c.idcredito,c.cliente,c.documento,c.total,c.cuotas,c.monto_cu
ota,i.nombre as institucion,
c.fecha,
(select top 1 pagado from detalle_credito where idcredito = c.idcredito order by
num_cuota desc) as pagado,c.observacion from credito c
inner join institucion i
on i.idinstitucion = c.idinstitucion
where cliente like @textobuscar + '%' and c.estado != 'POR COBRAR'
go

create proc spbuscar_credito_documento_porcobrar


@textobuscar varchar(50)
as
select
c.idcliente,c.idventa,c.idcredito,c.cliente,c.documento,c.total,c.cuotas,c.monto_cu
ota,i.nombre as institucion,
c.fecha,
(select top 1 pagado from detalle_credito where idcredito = c.idcredito order by
num_cuota desc) as pagado,c.observacion from credito c
inner join institucion i
on i.idinstitucion = c.idinstitucion
where documento like '%'+@textobuscar + '%' and c.estado != 'POR COBRAR'
go

create proc spbuscar_credito_fechas_porcobrar


@textobuscar1 varchar(20),
@textobuscar2 varchar(20)
as
select
c.idcliente,c.idventa,c.idcredito,c.cliente,c.documento,c.total,c.cuotas,c.monto_cu
ota,i.nombre as institucion,
c.fecha,
(select top 1 pagado from detalle_credito where idcredito = c.idcredito order by
num_cuota desc) as pagado,c.observacion from credito c
inner join institucion i
on i.idinstitucion = c.idinstitucion
where fecha >= @textobuscar1 and fecha <= @textobuscar2 and c.estado != 'POR
COBRAR'
go

create proc spbuscar_credito_institucion_porcobrar


@textobuscar varchar(20),
@textobuscar1 varchar(20),
@textobuscar2 varchar(20)
as
select
c.idcliente,c.idventa,c.idcredito,c.cliente,c.documento,c.total,c.cuotas,c.monto_cu
ota,i.nombre as institucion,
c.fecha,
(select top 1 pagado from detalle_credito where idcredito = c.idcredito order by
num_cuota desc) as pagado,c.observacion from credito c
inner join institucion i
on i.idinstitucion = c.idinstitucion
where fecha >= @textobuscar1 and fecha <= @textobuscar2 and i.nombre like
@textobuscar + '%' and c.estado != 'POR COBRAR'
GO

ALTER proc [dbo].[spinsertar_credito]


@idcredito int =null output,
@idventa int,
@idcliente int,
@cliente varchar(50),
@documento varchar(20),
@total decimal(6,2),
@cuotas int,
@monto_cuota decimal(6,2),
@idinstitucion int,
@fecha date,
@observacion varchar(50),
@estado varchar(10)
as
insert into
credito(idventa,idcliente,cliente,documento,total,cuotas,monto_cuota,idinstitucion,
fecha,observacion,estado)
values
(@idventa,@idcliente,@cliente,@documento,@total,@cuotas,@monto_cuota,@idinstitucion
,@fecha,@observacion,@estado)
set @idcredito = @@IDENTITY

--14/07
CREATE PROC spbuscar_venta_observacion
@textobuscar varchar(50),
@textobuscar1 varchar(50),
@textobuscar2 varchar(50)
as
select V.idventa,(c.apellido + ' ' + c.nombre) as cliente,v.fecha,
v.tipo_doc,v.serie,v.num_doc,v.total,v.acta,v.saldo,v.acta_efectivo,v.acta_tarjeta,
v.tipo_tarjeta,v.ref_tarjeta,v.observacion,v.estado,V.tipo_venta,v.fecha_entrega
from venta v inner join cliente c
on c.idcliente = v.idcliente
where v.observacion like '%'+@textobuscar+ '%' and v.estado != 'ANULADO' and
v.estado != 'CANJE' and fecha >= @textobuscar1 and fecha <= @textobuscar2

ALTER proc [dbo].[speditar_venta_credito]


@textobuscar decimal(6,2),
@textobuscar2 decimal (6,2),
@textobuscar1 int
as
update venta set acta = @textobuscar,
saldo = @textobuscar2
where idventa = @textobuscar1

--13/07
ALTER proc [dbo].[spreporte_cierre_efectivo]
@textobuscar1 varchar(50),
@textobuscar2 varchar(50)
as
declare @valor decimal = 0, @masfecha datetime = dateadd(dd,1,@textobuscar2),
@ingreso varchar(7) = 'INGRESO',@egreso varchar(6) = 'SALIDA',@credito varchar (12)
= 'AMORTIZACION'
select Flujo = @ingreso,v.tipo_venta as Tipo,(v.tipo_doc+' '+v.serie+'
'+v.num_doc) as Documento,v.total as Total,(v.acta_efectivo) as Efectivo,v.saldo as
Saldo,v.acta_tarjeta as Tarjeta,v.fecha from venta v
where v.estado != 'ANULADO' and v.estado !='CANJE' and v.fecha >= @textobuscar1 and
fecha <= @masfecha
union
select Flujo = @ingreso,v.tipo_venta as Tipo,(v.tipo_doc+' '+v.serie+' '+v.num_doc)
as Documento,@valor as Total,(pago_efectivo) as Efectivo,v.saldo as
Saldo,v.pago_tarjeta as Tarjeta,v.fecha_pago from venta v
where v.fecha_pago >= @textobuscar1 and fecha_pago <= @masfecha and v.estado !=
'ANULADO' and v.estado !='CANJE'
union
select Flujo = @ingreso, Tipo = @credito,dc.documento_pago as Documento,@valor as
Total, dc.efectivo as Efectivo,dc.saldo as Saldo,dc.tarjeta as
Tarjeta,dc.fecha_pago from detalle_credito dc
where fecha_pago >= @textobuscar1 and fecha_pago<=@textobuscar2 and (pagado != 0 or
efectivo != 0 or tarjeta != 0)
union
select Flujo = @ingreso,ie.categoria as Tipo,ie.documento as Documento,@valor as
Total,ie.monto as Efectivo,@valor as Saldo,@valor as Tarjeta,ie.fecha from
ingreso_efectivo ie
where ie.fecha >= @textobuscar1 and fecha <= @textobuscar2
union
select Flujo = @egreso,ee.categoria as Tipo,ee.documento as Documento,@valor as
Total,(ee.monto*-1) as Efectivo,@valor as Saldo,@valor as Tarjeta,ee.fecha from
egreso_efectivo ee
where ee.fecha >= @textobuscar1 and fecha <= @textobuscar2
order by Documento desc

--12/07
ALTER proc [dbo].[spmostrar_ventavalida_dia]
@textobuscar varchar(50),
@textobuscar1 varchar(50)
as
--declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar),
--@masfecha1 varchar(50) = dateadd(dd,1,@textobuscar1)
select fecha,(tipo_doc + ' '+ serie+' ' +num_doc) as documento,total,acta,
saldo,acta_efectivo,acta_tarjeta
from venta
--where estado <> 'ANULADO' AND estado <> 'CANJE' and fecha >= @textobuscar and
fecha <= @masfecha1
where estado <> 'ANULADO' AND estado <> 'CANJE' and fecha >= @textobuscar and fecha
<= @textobuscar1
order by idventa desc
--11/07
select * from montura --cambiar varios por montura en montura de cliente
where descripcion like '%'+'MONTURA'+'%'
GO
UPDATE montura
set presentacion = 'MONTURA'
where idmontura = 5045

--10/07
ALTER proc [dbo].[spmostrar_detalle_venta]
@textobuscar int
as
select d.iddetalle_ingreso,m.idmontura,d.cantidad,m.descripcion,
d.p_venta,d.descuento,v.fecha,
((d.p_venta*d.cantidad)-d.descuento) as
subtotal,di.ubicacion,d.medida,d.presentacion
from detalle_venta d inner join detalle_ingreso di
on d.iddetalle_ingreso = di.iddetalle_ingreso
inner join venta v
on v.idventa = d.idventa
inner join montura m
on di.idmontura=m.idmontura
where d.idventa=@textobuscar

ALTER proc [dbo].[spinsertar_detalle_venta]


@iddetalle_venta int output,
@idventa int,
@iddetalle_ingreso int,
@cantidad int,
@p_venta decimal(6,2),
@descuento decimal(6,2),
@medida varchar (60),
@presentacion varchar(20)
as
insert into
detalle_venta(idventa,iddetalle_ingreso,cantidad,p_venta,descuento,medida,presentac
ion)
values
(@idventa,@iddetalle_ingreso,@cantidad,@p_venta,@descuento,@medida,@presentacion)

--agregar campo a tabla detalle_venta: medida y presentacion varchar(100)

ALTER proc [dbo].[spbuscar_medida_cliente]


@textobuscar int
as
select top 50 idcliente,fecha,apellido+' '+nombre as
Paciente,odesf,odcil,odeje,odadd,oiesf,oicil,oieje,oiadd,diplejos,dipcerca from hc
where idcliente = @textobuscar
order by fecha desc

ALTER proc [dbo].[spbuscar_articulo_venta_codigo] --tambien en descripcion


@textobuscar varchar(50)
as
select top 50 d.iddetalle_ingreso,m.idmontura, m.codigo, m.descripcion,
d.stock_final,
d.pcompra,d.pventa,i.fecha_ingreso,i.tipo_doc,i.num_doc,m.presentacion
from montura m inner join detalle_ingreso d
on m.idmontura=d.idmontura
inner join ingreso i
on d.idingreso= i.idingreso
where m.codigo like @textobuscar +'%' and i.estado != 'ANULADO'
and d.stock_final >0
order by iddetalle_ingreso desc

--06/07
create proc speliminar_montura_campa�a
@textobuscar int
as
update detalle_ingreso
set cantidad_campa�a = 0
where iddetalle_ingreso = @textobuscar
go

create proc spingresar_montura_campa�a


@textobuscar1 int,
@textobuscar2 int
as
update detalle_ingreso
set cantidad_campa�a = @textobuscar1
where iddetalle_ingreso = @textobuscar2
go

create proc spmostra_montura_campa�a


as
select di.iddetalle_ingreso,di.idingreso,i.fecha_ingreso,i.tipo_doc,i.num_doc,
m.codigo,m.descripcion,m.marca,di.cantidad_campa�a from detalle_ingreso di
inner join montura m
on di.idmontura = m.idmontura
inner join ingreso i
on i.idingreso = di.idingreso
where cantidad_campa�a > 0
go

ALTER proc [dbo].[spbuscar_articulo_venta_codigo] --modificar descripcion tambien


@textobuscar varchar(50)
as
select top 50 d.iddetalle_ingreso,m.idmontura, m.codigo, m.descripcion,
d.stock_final,
d.pcompra,d.pventa,i.fecha_ingreso,i.tipo_doc,i.num_doc,m.presentacion
from montura m inner join detalle_ingreso d
on m.idmontura=d.idmontura
inner join ingreso i
on d.idingreso= i.idingreso
where m.codigo like @textobuscar +'%' and i.estado != 'ANULADO'
and d.stock_final >0
order by iddetalle_ingreso desc

ALTER proc [dbo].[spinsertar_venta_canje]


@idventa int output,
@idcliente int,
@idvendedor int,
@fecha date,
@tipo_doc varchar(20),
@num_doc varchar(20),
@serie varchar(4),
@total decimal(6,2),
@referencia varchar(20),
@observacion varchar (100)
as
insert into venta
(idcliente,idvendedor,fecha,tipo_doc,num_doc,serie,total,acta,saldo,estado,referenc
ia,observacion)
values
(@idcliente,@idvendedor,@fecha,@tipo_doc,@num_doc,@serie,@total,@total,0,'CANJE',@r
eferencia,@observacion)
--obtenemos el codigo autogenerado
--set @idventa = @@IDENTITY

create proc spbuscar_detalle_credito_mes


@textobuscar1 varchar(2),
@textobuscar2 varchar (4),
@textobuscar3 int
as
select
dc.iddetalle_credito,dc.idcredito,cr.fecha,cr.documento,cr.cliente,dc.num_cuota,
dc.documento_pago,dc.pagado,dc.saldo,dc.cuota,dc.efectivo,dc.tarjeta from
detalle_credito dc
inner join credito cr
on cr.idcredito = dc.idcredito
where pagado > 0 and month(dc.fecha_pago)=@textobuscar1 and
year(dc.fecha_pago)=@textobuscar2
and cr.idinstitucion = @textobuscar3

ALTER proc [dbo].[spbuscar_detalle_credito_entrefechas]


@textobuscar1 varchar (50),
@textobuscar2 varchar (50)
as
select * from detalle_credito
where fecha_pago >= @textobuscar1 and fecha_pago<=@textobuscar2
and (pagado != 0 or efectivo != 0 or tarjeta != 0)

create proc spbuscar_detalle_credito_fecha


@textobuscar1 varchar(50),
@textobuscar2 varchar (50)
as
select
dc.iddetalle_credito,dc.idcredito,cr.fecha,cr.documento,cr.cliente,dc.num_cuota,dc.
documento_pago,dc.pagado,dc.saldo,dc.cuota,dc.efectivo,dc.tarjeta from
detalle_credito dc
inner join credito cr
on cr.idcredito = dc.idcredito
where pagado > 0 and dc.fecha_pago >= @textobuscar1 and dc.fecha_pago <=
@textobuscar2

ALTER proc [dbo].[spbuscar_articulo_venta_descripcion]


@textobuscar varchar(50)
as
select top 50 d.iddetalle_ingreso,m.idmontura, m.codigo, m.descripcion,
d.stock_final, d.pcompra,d.pventa
from montura m inner join detalle_ingreso d
on m.idmontura=d.idmontura
inner join ingreso i
on d.idingreso= i.idingreso
where m.descripcion like @textobuscar + '%' and i.estado<>'ANULADO'
and d.stock_final >0
order by d.iddetalle_ingreso desc

--23/06
create proc spbuscar_ingreso_pendiente_fecha
@textobuscar1 varchar(50),
@textobuscar2 varchar(50)
as
select
i.idingreso,i.fecha_ingreso,i.num_doc,m.descripcion,di.stock_inicial,i.idproveedor,
p.nombre from ingreso i
inner join detalle_ingreso di
on di.idingreso = i.idingreso
inner join montura m
on m.idmontura = di.idmontura
inner join proveedor p
on p.idproveedor = i.idproveedor
where estado = 'PENDIENTE' and fecha_ingreso >= @textobuscar1 and fecha_ingreso <=
@textobuscar2
ORDER BY num_doc asc

ALTER proc [dbo].[spbuscar_ingreso_pendiente]


as
select
i.idingreso,i.fecha_ingreso,i.num_doc,m.descripcion,di.stock_inicial,i.idproveedor,
p.nombre from ingreso i
inner join detalle_ingreso di
on di.idingreso = i.idingreso
inner join montura m
on m.idmontura = di.idmontura
inner join proveedor p
on p.idproveedor = i.idproveedor
where estado = 'PENDIENTE'
ORDER BY num_doc asc

create proc spreporte_articulos_vendidos


@textobuscar1 varchar(50),
@textobuscar2 varchar(100)
as
select m.idmontura,di.iddetalle_ingreso,di.idingreso,v.fecha,
(v.tipo_doc+' ' + v.serie+' '+ v.num_doc) as documento,m.descripcion,
m.presentacion,di.pcompra,di.pventa,di.stock_final,dv.p_venta from montura m
inner join detalle_ingreso di
on di.idmontura = m.idmontura
inner join detalle_venta dv
on dv.iddetalle_ingreso = di.iddetalle_ingreso
inner join venta v
on dv.idventa = v.idventa
where descripcion like '%'+@textobuscar2+'%' and
fecha >= @textobuscar1 and fecha <= @textobuscar1
order by fecha desc

create proc speliminar_detalle_ingreso


@textobuscar int
as
delete from detalle_ingreso
where iddetalle_ingreso = @textobuscar
create proc speliminar_ingreso
@textobuscar int
as
delete from ingreso
where idingreso = @textobuscar

--antiguos
ALTER proc [dbo].[spbuscar_hc_cliente]
@textobuscar int
as
select idhc,fecha,edad,
odesf,odcil,odeje,odadd,odcb,oddiam,
oiesf,oicil,oieje,oiadd,oicb,oidiam,
diplejos,dipcerca,avodlejos,avoilejos,avodsc,avoisc from hc
where idcliente = @textobuscar
order by fecha desc
go

create proc spbuscar_cliente


@textobuscar varchar(100)
as
select * from cliente
where apellido+' '+nombre = @textobuscar
go

ALTER proc [dbo].[spbuscar_ingreso_id]


@textobuscar varchar(20)
as
select idingreso from ingreso
where num_doc = @textobuscar and estado != 'ANULADO'

ALTER proc [dbo].[spmostrar_ingreso]


as
select top 50 i.idingreso, (v.apellidos+' '+v.nombre) as vendedor,
p.nombre as proveedor,p.idproveedor as idproveedor,
i.fecha_ingreso,i.tipo_doc,i.num_doc,i.estado,
i.total,i.igv,i.descuento
from detalle_ingreso d inner join ingreso i
on d.idingreso = i.idingreso
inner join proveedor p
on i.idproveedor = p.idproveedor
inner join vendedor v
on i.idvendedor = v.idvendedor
group by
i.idingreso, v.apellidos+' '+v.nombre,
p.nombre,p.idproveedor,
i.fecha_ingreso,i.tipo_doc,i.num_doc,i.estado,i.total,i.igv,i.descuento
order by i.idingreso desc

ALTER proc [dbo].[spbuscar_detalle_credito_entrefechas]


@textobuscar1 varchar (50),
@textobuscar2 varchar (50)
as
select * from detalle_credito
where fecha_pago >= @textobuscar1 and fecha_pago<=@textobuscar2
and (pagado != 0 or efectivo != 0)

ALTER proc [dbo].[spmostrar_taller_fechas_entregar]


as
select top 50
t.idtaller,iddetalle_taller,t.documento,t.cliente,dt.MONTURA,dt.OD,dt.OI,dt.fecha_e
ntrega,dt.fecha_entregado,dt.estado,dt.observacion,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where dt.estado != 'POR ENTREGAR' and dt.estado != 'ENTREGADO'
order by t.fecha desc

ALTER proc [dbo].[spbuscar_taller_porentregar]


@textobuscar1 varchar(20),
@textobuscar2 varchar(20)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select
t.idtaller,iddetalle_taller,t.documento,t.cliente,dt.MONTURA,dt.OD,dt.OI,dt.fecha_e
ntrega,dt.fecha_entregado,dt.estado,dt.observacion,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where dt.estado = 'POR ENTREGAR' AND t.fecha >= @textobuscar1 and t.fecha <=
@masfecha
order by t.fecha desc

ALTER proc [dbo].[spbuscar_taller_cliente]


@textobuscar varchar(50)
as
select
t.idtaller,iddetalle_taller,t.documento,t.cliente,dt.MONTURA,dt.OD,dt.OI,dt.fecha_e
ntrega,dt.fecha_entregado,dt.estado,dt.observacion,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where cliente like @textobuscar + '%'
order by t.fecha desc

ALTER proc [dbo].[spbuscar_taller_fechas]


@textobuscar1 varchar(20),
@textobuscar2 varchar(20)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select
t.idtaller,iddetalle_taller,t.documento,t.cliente,dt.MONTURA,dt.OD,dt.OI,dt.fecha_e
ntrega,dt.fecha_entregado,dt.estado,dt.observacion,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where t.fecha >= @textobuscar1 and t.fecha <= @masfecha
order by t.fecha desc

ALTER proc [dbo].[spbuscar_taller_fechas_entregar]


@textobuscar1 varchar(20),
@textobuscar2 varchar(20)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select
t.idtaller,iddetalle_taller,t.documento,t.cliente,dt.MONTURA,dt.OD,dt.OI,dt.fecha_e
ntrega,dt.fecha_entregado,dt.estado,dt.observacion,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where dt.estado != 'POR ENTREGAR' and dt.estado != 'ENTREGADO' and t.fecha >=
@textobuscar1 and t.fecha <= @masfecha
order by t.fecha desc

ALTER proc [dbo].[spbuscar_taller_pedido_fechas]


@textobuscar1 varchar (20),
@textobuscar2 varchar (20)
as
declare @masfecha varchar(50) = dateadd(dd,1,@textobuscar2)
select
t.idtaller,iddetalle_taller,t.documento,t.cliente,dt.MONTURA,dt.OD,dt.OI,dt.fecha_e
ntrega,dt.fecha_entregado,dt.estado,dt.observacion,v.usuario from taller t
inner join vendedor v
on t.idvendedor = v.idvendedor
INNER join venta ve
on ve.idventa = t.idventa
inner join detalle_taller dt
on dt.idtaller = t.idtaller
where dt.estado = 'PEDIDO' and t.fecha >= @textobuscar1 and t.fecha <= @masfecha
order by t.fecha desc

ALTER proc [dbo].[spinsertar_detalle_credito]


@iddetalle_credito int output,
@idcredito int,
@num_cuota int,
@fecha_pago datetime,
@documento_pago varchar(20),
@pagado decimal(6,2),
@saldo decimal(6,2),
@cuota decimal(6,2),
@efectivo decimal(6,2),
@tarjeta decimal(6,2)
as
insert into
detalle_credito(idcredito,num_cuota,fecha_pago,documento_pago,pagado,saldo,cuota,ef
ectivo,tarjeta)
values
(@idcredito,@num_cuota,@fecha_pago,@documento_pago,@pagado,@saldo,@cuota,@efectivo,
@tarjeta)
ALTER proc [dbo].[spbuscar_detalle_credito_entrefechas]
@textobuscar1 varchar (50),
@textobuscar2 varchar (50)
as
select * from detalle_credito
where fecha_pago >= @textobuscar1 and fecha_pago<=@textobuscar2
and pagado != 0 and efectivo != 0

create proc speditar_detalle_ingreso_id


@textobuscar1 int,
@textobuscar2 int
as
update detalle_ingreso
set idingreso = @textobuscar1
where iddetalle_ingreso = @textobuscar2

ALTER proc [dbo].[spmostrar_detalle_ingreso]


@textobuscar int
as
select d.iddetalle_ingreso,d.idingreso,d.idmontura,m.descripcion, d.pcompra,
d.pventa,
d.stock_inicial, d.stock_final, d.ubicacion,(d.stock_inicial*d.pcompra) as Subtotal
from detalle_ingreso d inner join montura m
on d.idmontura = m.idmontura
where d.idingreso = @textobuscar

SQL: CREAR TRIGGER RESTABLECER STOCK EN CADA BASE DE DATOS


MODIFICAR BUSCAR INGRESO: AGREGAR DESCUENTO E IGV
REVISAR VISTA DE MOSTRAR_DETALLE_INGRESO

crear registro en tabla ingreso: NUM_DOC = PENDIENTE AND ESTADO = PENDIENTE


REVISAR PARPADEO DE PANTALLA
agregar flechas para pasar de txtbox
cambiar procesos mostrar a 50 registros

GUARDAR BASE DE DATOS ANUAL COPIANDO UNA BASE DE DATOS LIMPIA CADA A�O
botones 90,30 letra tahoma negrita 9

CREAR UNA VENTA DE INICIO CON OBSERVACION: "CREDITOS POR COBRAR" PARA CREDITOS
ANTERIORES
y crear institucion: CREDITOS POR COBRAR

--agregar venta con observacion: "CREDITOS POR COBRAR" con fecha antigua para
ingresar los creditos

--REGISTRAR SALIDA num_doc = PENDIENTE / OBSERVACION = ARTICULOS POR INGRESAR


--SE CREO LA TABLA PAGO REVISAR EL DIAGRAMA Y ENLAZAR CON FK

--CAMBIAR ESTADO DE INGRESO A INGRESADO CON FECHA ANTERIOR A LA FECHA DE LA


ACTUALIZACION PARA INGRESAR COSTO EN CAJA

ESTADO DE REGISTORS:
ADELANTO: PENDIENTE- PEDIDO -INGRESADO
TALLER: FABRICACION-PEDIDO-TALLER-POR ENTREGAR-ENTREGADO
ESTADO VENTA: OK-PEDIDO/CANJE-ANULADO
TIPO VENTA: GARANTIA(0)-CREDITO-VENTA-RAPIDA-DEPURADO
detalle_ingreso:UBICACION = ALMACEN, TIENDA
CREDITO: PAGADO - POR COBRAR - DEPURADO
INGRESO: ANULADO - EMITIDO - INGRESADO
EGRESO_EFECTIVO:OPERATIVO - ADMINISTRATIVO
PROVEEDORES - BANCOS - PERSONAL
detalle_ingreso:ubicacion: PENDIENTE- TIENDA-VENDIDO
proveedor: tipo_pago: EFECTIVO - SEMANAL
dia_pago: LUNES, MARTES, ...

REQUISITOS
WINDOWS INSTALLER 4.5
NETFRAMEWORK 3.5 SP1
REPORT VIEWER
SQL SERVER MANAGEMENT STUDIO 8
WINDOWS POWERSHELL (WINDOWS MANAGEMENT CORE FOR XP)
COLOCAR IDIOMA ESPA�OL (ESPA�A)

CONEXION
Data Source=PROGRESO\SQL;Initial Catalog=dbinventario;Integrated Security=True
se cambio a user
Data Source=PROGRESO;Initial Catalog=dbinventario;Integrated Security=True;User
ID=Charlie;Password = 3842
actual:
Data Source=PROGRESO;Initial Catalog=dbinventario;Integrated Security = true

progreso
\\Progreso\Users\User\Desktop\Deploy\
Data Source=PROGRESO;Initial Catalog=dbinventario;Integrated Security = true

eden
c:\Users\User\Desktop\Deploy\
Data Source=EDEN\SQL;Initial Catalog=dbinventario;Integrated Security = true

fama
c:\Users\User\Desktop\Deploy\
Data Source=OPTICAFAMA\SQL;Initial Catalog=dbinventario;Integrated Security = true

ACER
\\Progresoc\Users\User\Desktop\Deploy\
Data Source=PROGRESOC\PROGRESOC;Initial Catalog=dbinventario;Integrated Security =
true

SULLANA
PROGRESO SALUD
c:\Users\User\Desktop\Deploy\
Data Source=PROGRESO\PROGRESO;Initial Catalog=dbinventario;Integrated Security =
true --no conecta, se cambio a PROGRESO, TAMPOCO,
--SE REVISO Y FALTA PROBAR

TRUJILLO
c:\Users\User\Desktop\Deploy\
Data Source=TRUJILLO\SQLEXPRESS;Initial Catalog=dbinventario;Integrated Security =
true

S-ar putea să vă placă și