Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
5| Name | Data Type | Length | Description |
|---|---|---|---|
| @p_id_padron | int | 4 | |
| @p_id_codigo_impuesto | int | 4 | |
| @p_descripcion_impuesto | varchar | 100 | |
| @p_estado | varchar | 100 | |
| @p_fecha_inscripcion | varchar | 20 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
CREATE OR ALTER PROCEDURE dbo.carga_impuesto_afip
@p_id_padron int,
@p_id_codigo_impuesto int,
@p_descripcion_impuesto varchar(100),
@p_estado varchar(100),
@p_fecha_inscripcion varchar(20)
AS
BEGIN
begin try
if @p_id_codigo_impuesto is null
begin
select 'ok' as ok
return
end
-- Si el impuesto no está en la BD hace el insert, si está actualiza el registro más nuevo de ese impuesto / fecha de inscripción
declare @id int = null
select @id = max(id_impuestos)
from padron_impuestos
where id_padron = @p_id_padron
and codigo_impuesto = @p_id_codigo_impuesto
and fecha_inscripcion = @p_fecha_inscripcion
if (isnull(@id,0) = 0)
begin
insert into padron_impuestos
(id_padron, codigo_impuesto, visible, estado, fecha_inscripcion, created) values
(@p_id_padron, @p_id_codigo_impuesto, 1, @p_estado, @p_fecha_inscripcion, GETDATE())
end
else
begin
update padron_impuestos
set estado = 'ACTIVO', visible = 1, modified = getdate()
where id_impuestos = @id
end
-- tabla impuestos: si es un impuesto nuevo, lo da de alta en la tabla impuestos
IF ((select COUNT(*) from impuestos
where codigo_impuesto = @p_id_codigo_impuesto) = 0)
begin
insert into impuestos (codigo_impuesto, nombre_impuesto) values (@p_id_codigo_impuesto, @p_descripcion_impuesto)
end
select 'ok' as ok
end try
begin catch
select ERROR_MESSAGE() as error
end catch
END
GO
GO
CREATE OR ALTER PROCEDURE dbo.carga_impuesto_afip
@p_id_padron int,
@p_id_codigo_impuesto int,
@p_descripcion_impuesto varchar(100),
@p_estado varchar(100),
@p_fecha_inscripcion varchar(20)
AS
BEGIN
begin try
if @p_id_codigo_impuesto is null
begin
select 'ok' as ok
return
end
-- Si el impuesto no está en la BD hace el insert, si está actualiza el registro más nuevo de ese impuesto / fecha de inscripción
declare @id int = null
select @id = max(id_impuestos)
from padron_impuestos
where id_padron = @p_id_padron
and codigo_impuesto = @p_id_codigo_impuesto
and fecha_inscripcion = @p_fecha_inscripcion
if (isnull(@id,0) = 0)
begin
insert into padron_impuestos
(id_padron, codigo_impuesto, visible, estado, fecha_inscripcion, created) values
(@p_id_padron, @p_id_codigo_impuesto, 1, @p_estado, @p_fecha_inscripcion, GETDATE())
end
else
begin
update padron_impuestos
set estado = 'ACTIVO', visible = 1, modified = getdate()
where id_impuestos = @id
end
-- tabla impuestos: si es un impuesto nuevo, lo da de alta en la tabla impuestos
IF ((select COUNT(*) from impuestos
where codigo_impuesto = @p_id_codigo_impuesto) = 0)
begin
insert into impuestos (codigo_impuesto, nombre_impuesto) values (@p_id_codigo_impuesto, @p_descripcion_impuesto)
end
select 'ok' as ok
end try
begin catch
select ERROR_MESSAGE() as error
end catch
END
GO
Depends On
2Used By
No items found