Skip to content

Instantly share code, notes, and snippets.

@L3V147H4N
Created June 22, 2015 21:30
Show Gist options
  • Save L3V147H4N/2670b59fc48995a3d94c to your computer and use it in GitHub Desktop.
Save L3V147H4N/2670b59fc48995a3d94c to your computer and use it in GitHub Desktop.
PRD
//#Version 4354 (22/06/2015 18:28) supervisor@GABRIEL-ACER --- Anterior 3917 (11/04/2014 01:07)
//#Include Configuracion
//
DECLARE @Bulto INT
DECLARE @AutoInc INT
DECLARE @PRDLink INT
DECLARE @PRVLink INT
DECLARE @RubLink INT
DECLARE @SRuLink INT
DECLARE @PRDConcepto VARCHAR(30)
DECLARE @PRDCodigo VARCHAR(20)
DECLARE @FormatoVta INT
DECLARE @FormatoComp INT
DECLARE @CodBar VARCHAR(30)
DECLARE @Segmento VARCHAR(30)
DECLARE @Linea VARCHAR(30)
DECLARE @Rubro VARCHAR(30)
DECLARE @SubRubro VARCHAR(30)
/**/
SET @PRVLink = 678
/**/
SELECT
@PRDLink = PRDProductos.numint,
@PRDConcepto = PRDProductos.Concepto,
@PRDCodigo = PRDProductos.Codigo
FROM PRDProductos
WHERE
PRDProductos.Concepto = :CSVConcepto
AND
PRDProductos.Codigo = :CSVCodugo
IF @PRDCodigo = ''
BEGIN
BEGIN TRANSACTION Transacion1
SET @AutoInc = 0
EXEC spNewId 'PRDProductos', @AutoInc output
COMMIT TRANSACTION Transacion1;
/* Inserta Producto */
INSERT INTO PRDProductos (numint, Codigo, CodBar, Concepto, Descripcion, FormCarga,
Marca, Abreviatura, SubRubro, Bulto,
VigenciaDesde, VigenciaHasta, PRVLink, TipoProducto,
ValorBase, IVAP1, IVAP2, ImpInt1, ImpInt2, ImpInt3,
CostoFinal, MarkUp, PrecioFinal,
CmpSinImp, CmpSinIVA, CmpFinal, VntSinImp, VntSinIVA,
VntFinal, STASynkro)
SELECT
@AutoInc, :CSVCodigo, :CSVScanner, :CSVConcepto, '', '',
'', :CSVConcepto, :CSVSubRubro, :CSVBulto,
CONVERT(datetime, '01/01/2000', 103), CONVERT(datetime, '01/01/2200', 103), @PRVLink, 1,
0, 21, 0, 0, 0, 0,
:CSVCostoFinal, :CSVMarkUp, (:CSVCostoFinal) * (1 + (:CSVMarkUp)/100),
0, 0, 0, 0, 0,
0, getdate();
SET @PRDLink = @AutoInc;
END ELSE
BEGIN
UPDATE PRDProductos SET
CostoFinal = :CSVCosto, MarkUp = :CSVMarkUp, PrecioFinal = (:CSVCosto) * (1 + (:CSVMarkUp)/100)
WHERE PRDproductos.numint = @PRDLink
END
/**/
SET @FormatoVta = 0
/**/
SELECT
@FormatoVta = PRDProductosAsProducto.numint
FROM PRDProductosAsProducto
WHERE
PRDProductosAsProducto.PRDLink = @PRDLink AND NroLista = 1
/**/
IF @FormatoVta = 0
BEGIN
BEGIN TRANSACTION Transacion1
SET @AutoInc = 0
EXEC spNewId 'PRDProductosAsProducto', @AutoInc output
COMMIT TRANSACTION Transacion1;
/* Inserta Formato de venta Unidad */
INSERT INTO PRDProductosAsProducto (numint, PRDLink, CodBar, Concepto, ScriptLiquidacion, NroLista,
VigenciaDesde, VigenciaHasta, VigenciaLocal, NivelCliente,
NivelUsuario, Cantidad, VMoneda, VPrecioFinal, MarkUp,
OfVigenciaDesde, OfVigenciaHasta, OfVPrecioFinal,
OfCPRDLink, OfCCantidad, DPGrupo, DPCantidad,
STASynkro)
VALUES (@AutoInc, @PRDLink, :CSVScanner, 'Unidad', 'Calculo_Productos', 1,
CONVERT(datetime, '01/01/2000', 103), CONVERT(datetime, '01/01/2200', 103), 1, 5,
3, 1, 1, :CSVCosto * (1 + (:CSVMarkUp)/100), :CSVMarkUp,
null, null, 0,
0, 0, 0, 0,
getdate())
/**/
END ELSE
BEGIN
UPDATE PRDProductosAsProducto
SET VPrecioFinal = (:CSVCosto) * (1 + (:CSVMarkUp)/100), MarkUp = :CSVMarkUp
WHERE PRDProductosAsProducto.numint = @FormatoVta
END
/**/
SET @FormatoComp = 0
SELECT
@FormatoComp = PRDProductosAsProductoC.numint
FROM PRDProductosAsProductoC
WHERE
PRDProductosAsProductoC.PRDLink = @PRDLink
/**/
IF @FormatoComp = 0
BEGIN
BEGIN TRANSACTION Transacion1
SET @AutoInc = 0
EXEC spNewId 'PRDProductosAsProductoC', @AutoInc output
COMMIT TRANSACTION Transacion1;
/* Inserta Formato de Compra */
INSERT INTO PRDProductosAsProductoC (numint, PRDLink, CodigoPrv, PRVLink, Concepto, ScriptLiquidacion,
FormCarga, NroLista, VigenciaDesde, VigenciaHasta,
PorcDesc, PorcDesc2, PorcDesc3, PorcDesc4, Cantidad, CostoFlete, CMoneda,
PrecioLista, PrecioBruto, PrecioNeto, IVA, ImpInt, OtrosImpuestos,
PrecioFinal, STASynkro)
VALUES (@AutoInc, @PRDLink, :CSVCodigo, @PRVLink, 'Unidad', 'Calculo_ProductosC',
'FormatoCompra', 0, CONVERT(datetime, '01/01/2000', 103), CONVERT(datetime, '01/01/2200', 103),
0, 0, 0, 0, 1, 0, 1,
:CSVCosto / 1.21, :CSVCosto / 1.21, :CSVCosto / 1.21 , :CSVCosto - (:CSVCosto / 1.21),0,0
:CSVCosto, getdate())
END ELSE
BEGIN
UPDATE PRDProductosAsProductoC
SET PrecioLista = :CSVCosto / 1.21,
PrecioBruto = :CSVCosto / 1.21,
PrecioNeto = :CSVCosto / 1.21,
IVA = :CSVCosto - (:CSVCosto / 1.21),
PrecioFinal = :CSVCosto
WHERE PRDProductosAsProductoC.numint = @FormatoComp
END
/**/
SELECT 1 as Resultado
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment