Created
August 5, 2016 19:11
-
-
Save anonymous/8cb0508dcc64decf154ce24a6313ca2b to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
------------------------FACTURAS-------------------------------- | |
IF @object_type = '13' and (@transaction_type = 'U' or @transaction_type = 'A') | |
BEGIN | |
DECLARE @IndexFac INT | |
DECLARE @RowsFac INT | |
SET @RowsFac = (SELECT DISTINCT COUNT(T1.LineNum) FROM OINV T0 INNER JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry WHERE T0.DocEntry=@list_of_cols_val_tab_del) | |
SET @IndexFac = 0 | |
WHILE(@IndexFac<@RowsFac) | |
BEGIN | |
-- --Declaración de variables | |
DECLARE @CodigoAF NVARCHAR(8) -- Código de almacén factura | |
DECLARE @ArticuloF NVARCHAR(20) -- Código del artículo | |
DECLARE @PrecioF NUMERIC(19,6) -- Precio del artículo | |
DECLARE @TreeTypeF CHAR(1) -- Artículo componente de un código E | |
DECLARE @MonedaF NVARCHAR(3) -- Moneda factura | |
DECLARE @BaseTypeF INT -- Documento base factura | |
DECLARE @Reserva CHAR(1) -- Indicador de factura reserva | |
DECLARE @TipoDeCamF NUMERIC(19,6) -- Tipo de Cambio Documento | |
DECLARE @VendedorF SMALLINT -- Vendedor | |
DECLARE @TotalF NUMERIC(19,6) -- Total Factura | |
DECLARE @NotadeDebit NVARCHAR(2) --Si es Nota de Debito | |
-- --Asignación de valores a variables | |
SET @CodigoAF = (SELECT T1.WhsCode FROM OINV T0 INNER JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry WHERE T0.DocEntry = @list_of_cols_val_tab_del and T1.LineNum=@IndexFac) | |
SET @ArticuloF = (SELECT T1.ItemCode FROM OINV T0 INNER JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry WHERE T0.DocEntry = @list_of_cols_val_tab_del and T1.LineNum=@IndexFac) | |
SET @PrecioF = (SELECT T1.Price FROM OINV T0 INNER JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry WHERE T0.DocEntry = @list_of_cols_val_tab_del and T1.LineNum=@IndexFac) | |
SET @TreeTypeF = (SELECT T1.TreeType FROM OINV T0 INNER JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry WHERE T0.DocEntry = @list_of_cols_val_tab_del and T1.LineNum=@IndexFac) | |
SET @MonedaF = (SELECT T0.DocCur FROM OINV T0 WHERE T0.DocEntry = @list_of_cols_val_tab_del) | |
SET @BaseTypeF = (SELECT T1.BaseType FROM OINV T0 INNER JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry WHERE T0.DocEntry = @list_of_cols_val_tab_del and T1.LineNum=@IndexFac) | |
SET @Reserva = (SELECT T0.IsIns FROM OINV T0 WHERE T0.DocEntry = @list_of_cols_val_tab_del) | |
SET @TipoDeCamF = (SELECT T0.DocRate FROM OINV T0 WHERE T0.DocEntry = @list_of_cols_val_tab_del) | |
SET @VendedorF = (SELECT T1.SlpCode FROM OINV T0 INNER JOIN OSLP T1 ON T0.SlpCode = T1.SlpCode WHERE T0.DocEntry = @list_of_cols_val_tab_del) | |
SET @TotalF = (SELECT T0.DocTotal FROM OINV T0 WHERE T0.DocEntry = @list_of_cols_val_tab_del) | |
SET @NotadeDebit = (SELECT T0.DocSubType FROM OINV T0 WHERE T0.DocEntry = @list_of_cols_val_tab_del) | |
SET @error = | |
CASE | |
--(1) Precio Bajo el Costo | |
--WHEN (@PrecioF*@TipoDeCamF) <= (SELECT t4.AvgPrice FROM OITW t4 WHERE t4.ItemCode=@ArticuloF AND t4.WhsCode = @CodigoAF) THEN 1301 | |
--(2) Facturación desde Cotización Bloqueada | |
WHEN @Reserva = 'N' AND @BaseTypeF = '23' THEN 1302 | |
--(3) Vendedor Invalido | |
WHEN @TotalF > '0' AND @VendedorF NOT IN ('22','20','14','23','36','2','41') AND @NotadeDebit <> 'DN'THEN 1303 | |
ELSE 0 | |
END | |
SET @error_message = | |
CASE | |
WHEN @error=1301 THEN N'Precio abajo del costo para el articulo ' | |
WHEN @error=1302 THEN N'No se pueden crear facturas desde una cotizacion.' | |
WHEN @error=1303 THEN N'Vendor Invalido para Facturar' | |
END | |
IF @error>0 | |
BREAK | |
SET @IndexFac = @IndexFac+1 | |
END | |
END |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment