Está en la página 1de 4

-- EN CantidadFunIngresada DE LA ORDEN DE COMPRA, VA LA SUMA DE TODOS LOS IPB

INGRESADOS CANTIDAD FUNCIONAL

--SELECT Estado, CantidadFunIngresada, CantidadFuncional,


CantidadDigIngresada, TTCantDistrib
----- UPDATE CAB SET CantidadFunIngresada = 150, CantidadFuncional= 150,
CantidadDigIngresada= 150, TTCantDistrib= -150
----- UPDATE CAB SET Estado = 'E'
--From dbo.Erp_Inv_OrdenCompra_TRA Cab
-- WHERE Numero= '7554'
-- AND Codigo = '101100003'
--use PINASRICASXASS11
--USE FRUTSESAXASS11
/*
Select ESTADO, *
-- UPDATE CAB SET ESTADO ='P'
From dbo.Erp_Inv_OrdenCompra_tra cab
WHERE Numero IN ( Select id_fila
From dbo.Erp_Inv_OrdenCompra_Cab Cab
WHERE documento= '0007595')

Select ESTADO, *
-- UPDATE CAB SET ESTADO ='P'
From dbo.Erp_Inv_OrdenCompra_Cab Cab
WHERE documento= '0007595'

*/
go
-- sp_who kill 53
declare @OrdenCompra nvarchar (7) --,@Tipo Nvarchar(5), @Mes nvarchar(2),
@Numero int, @Documento nvarchar(7)
declare @IPB nvarchar (7) --,@Tipo Nvarchar(5), @Mes nvarchar(2),
@Numero int, @Documento nvarchar(7)
declare @SubTotalOrden numeric(18, 2)
declare @TotalOrden numeric(18, 2)
declare @Precio numeric(18, 6)
declare @Codigo nvarchar(12)
declare @Cantidad numeric(16, 6)
declare @Bodega int

select @OrdenCompra = '0003328'


select @IPB = '0002325'
--select @IPB = '0002452'
--select @IPB = '0002455'
--select @IPB = '0002504'

select @TotalOrden = 0

select @Codigo = '101020003'


select @Cantidad = 450.0
select @Precio = 0.960488889-- 1.208000--3.940000000-- 4.88, 6.459912,
5.629956

--select @Codigo = '7012166'


--select @Cantidad = 6000
--select @Precio = 0.72
--select @Codigo = '7012168'
--select @Cantidad = 6000
--select @Precio = 0.080

select @Bodega = 24

-------------------------
--- orden de compra
-------------------------
--SELECT cab.CantidadFuncional, cab.Precio_Unidad, cab.Precio,cab.Iva,
cab.TTImpuesto, *--, CAB.TTImpuesto = (((cab.CantidadFuncional * @Precio) * 12) /
100)
UPDATE CAB SET cab.Precio_Unidad = @Precio, cab.Precio = @Cantidad * @Precio,
cab.CantidadFuncional = @Cantidad , cab.CantidadDigitada= @Cantidad ,
CAB.TTImpuesto =0, Iva =0
--UPDATE CAB SET cab.Precio_Unidad = @Precio, cab.Precio = @Cantidad * @Precio,
cab.CantidadFuncional = @Cantidad,cab.CantidadDigitada= @Cantidad, CAB.TTImpuesto =
(((cab.CantidadFuncional * @Precio) * 12) / 100), Iva =1
From dbo.Erp_Inv_OrdenCompra_tra cab
WHERE Numero IN ( Select id_fila
From dbo.Erp_Inv_OrdenCompra_Cab Cab
WHERE documento= @OrdenCompra)
and cab.codigo = @Codigo

-- Tomo el sub total de los detalles


select @SubTotalOrden = (
select sum(CantidadDigitada * Precio_Unidad) as PrecioNu
From dbo.Erp_Inv_OrdenCompra_tra cab
WHERE Numero IN ( Select id_fila
From dbo.Erp_Inv_OrdenCompra_Cab Cab
WHERE documento= @OrdenCompra))

-- CALCULO EL TOTAL DE LA ORDEN


-- SET @SubTotalOrden = @SubTotalOrden + ((@SubTotalOrden * 12) / 100)
--SET @TotalOrden = @SubTotalOrden + ((@SubTotalOrden * 12) / 100)

SET @TotalOrden = @SubTotalOrden

-- Actualizo el total de la orden


--select *
UPDATE CAB SET TotalOrden = @TotalOrden
From dbo.Erp_Inv_OrdenCompra_Cab Cab
WHERE documento= @OrdenCompra

------------------------------------
----- COMPRA / DETALLE RELACION IBB, considere el que tiene iva o o
------------------------------------
--SELECT Cab.Costo, Cab.CostoTotal, TTImpuesto
UPDATE CAB SET Cab.Costo = @Precio, Cab.CostoTotal= @Cantidad * @Precio,
cab.CantidadDig = @Cantidad, cab.CantidadFun = @Cantidad, CAB.TTImpuesto=0,
GrabadoIVA=0
--UPDATE CAB SET Cab.Costo = @Precio, cab.CantidadFun = @Cantidad, Cab.CostoTotal=
cab.CantidadFun * @Precio, cab.CantidadDig = @Cantidad, CAB.TTImpuesto =
(((cab.CantidadFun * @Precio) * 12) / 100), GrabadoIVA=1
-- select *
FROM dbo.ERP_Inv_Compras_tra Cab
WHERE Numero IN (SELECT id_fila
FROM dbo.ERP_Inv_Compras_Cab Cab
WHERE DocumentoRel = @OrdenCompra
and Documento = @IPB -- ipb
)
and cab.codigo = @Codigo

-- SUB TOTAL DE ipb


select @SubTotalOrden = (
select sum(CantidadDig * Costo) as PrecioNu
From dbo.ERP_Inv_Compras_tra cab
WHERE Numero IN ( Select id_fila
From dbo.ERP_Inv_Compras_cab Cab
WHERE DocumentoRel = @OrdenCompra
and Documento = @IPB))

SET @TotalOrden = @SubTotalOrden

-- cuando tiene IVA:


--SET @TotalOrden = @SubTotalOrden + ((@SubTotalOrden * 12) / 100)

--SELECT CAB.ValorConImpto, CAB.NetoConImpto, Cab.ValorTTIVA, Neto, *


UPDATE CAB SET CAB.ValorSinImpto = @SubTotalOrden, CAB.NetoSinImpto=
@SubTotalOrden, CAB.Neto = @TotalOrden, CAB.ValorConImpto=0, CAB.NetoConImpto=0,
Cab.ValorTTIVA=0
--UPDATE CAB SET CAB.ValorConImpto = @SubTotalOrden, CAB.NetoConImpto=
@SubTotalOrden, Cab.ValorTTIVA = ((@SubTotalOrden * 12) / 100), CAB.Neto =
@TotalOrden,CAB.ValorSinImpto = 0, CAB.NetoSinImpto= 0
-- select *
FROM dbo.ERP_Inv_Compras_Cab Cab
WHERE DocumentoRel = @OrdenCompra
and Documento = @IPB -- ipb

-----------------------------------
--- INFORMACION CONTABLE DEL IPB
-----------------------------------
--SELECT CAB.Total, CAB.Debito, CAB.Credito, *
UPDATE CAB SET CAB.Total = @SubTotalOrden, CAB.Debito= @SubTotalOrden, CAB.Credito=
@SubTotalOrden
FROM dbo.SGI_Con_Cab cab
WHERE id_fila IN ( SELECT Id_Contable
FROM dbo.ERP_Inv_Compras_Cab Cab
WHERE DocumentoRel = @OrdenCompra
and Documento = @IPB -- ipb
)

UPDATE CAB SET cab.valor = @SubTotalOrden


FROM dbo.SGI_Con_tra CAB
WHERE Numero IN (
SELECT id_fila from dbo.SGI_Con_Cab cab
WHERE id_fila IN ( SELECT Id_Contable From
dbo.ERP_Inv_Compras_Cab Cab
WHERE DocumentoRel =
@OrdenCompra
and Documento =
@IPB ))-- ipb
------------------------------------------------------------------------------
-- ingreso a bodega /detall del ibp la cabeera no tiene valores para corregir
------------------------------------------------------------------------------
Select CabIng.*
From dbo.ERP_Inv_IngBod_Cab CabIng
inner join dbo.ERP_Inv_Compras_Cab Cab ON ( Cab.Id_fila = CabIng.Id_rel
and cab.Tipo
= CabIng.Tip_rel
and cab.Documento =
CabIng.Num_rel)
WHERE cab.DocumentoRel = @OrdenCompra
and Num_Rel = @IPB -- ipb

--Select TraIng.CostoProm, TraIng.CostoUlti, TraIng.CostoFifo


UPDATE TraIng set TraIng.CostoProm = @Precio, TraIng.CostoUlti = @Precio,
TraIng.CostoFifo = @Precio, TraIng.CantidadDig = @Cantidad, TraIng.CantidadFun =
@Cantidad
-- select *
From dbo.ERP_Inv_IngBod_Tra TraIng
WHERE Numero IN (
Select CabIng.Id_Fila From dbo.ERP_Inv_IngBod_Cab
CabIng
inner join dbo.ERP_Inv_Compras_Cab Cab ON
( Cab.Id_fila = CabIng.Id_rel

and cab.Tipo = CabIng.Tip_rel

and cab.Documento = CabIng.Num_rel)


where cab.DocumentoRel = @OrdenCompra
and cab.Documento = @IPB-- IPB
)
and TraIng.codigo = @Codigo

select *
from SGI_Inv_Stocks where Id_Bodega = @Bodega and Periodo= '2018'
and Codigo = @Codigo

-- Actualiza el IPB
--exec Erp_INV_ActualizaIPb_Contabilidad 'IPB', 'COM' ,@IPB

-- falta la parte contable


--exec [dbo].[spRecosteoPorItem] 3, 2023, '103010078'

También podría gustarte