Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
2| Name | Data Type | Length | Description |
|---|---|---|---|
| @p_doc_id | int | 4 | |
| @p_user_id | int | 4 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: LUIS J PRENAFETA
-- Create date: 03 AGOSTO 2018
-- Description: VERIFICA LA CARGA DE UN DOCUMENTO BALANCE LED SUBIDO POR UN PROVEEDOR,
-- Y AL REGISTRO DE BALANCE_CONTABLE ASOCIADO LO PASA DE ESTADO CARGA LED
-- A GRABADO PARCIAL. CUALQUIER OTRO BALANCE_CONTABLE PREEXISTENTE PARA EL
-- MISMO CUIT Y FECHA DE CIERRE DEBE PASAR A ESTADO ELIMINADO (INCLUSO PUBLICADOS)
-- FINALMENTE DA COMO VERIFICADO EL REGISTRO DE DOCUMENTO LED
-- =============================================
CREATE OR ALTER PROCEDURE dbo.LN_balances_verificar
-- Add the parameters for the stored procedure here
@p_doc_id int,
@p_user_id int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
if (@p_doc_id is not null) begin
declare @contraparte int
declare @id_balance int
declare @ident varchar(50)
declare @fecha date
declare @periodo int = null
DECLARE @usuario varchar(50)
select @usuario = first_name + ' ' + last_name
from users where user_id = @p_user_id
select @contraparte = LN_docs.contraparte,
@ident = padrones.identificacion,
@id_balance = balances_contables.id_balance,
@fecha = balances_contables.fecha_balance,
@periodo = balances_contables.periodo
FROM LN_docs
inner join LN_tipos_doc on LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
inner join LN_contrapartes on LN_docs.contraparte = LN_contrapartes.contraparte
inner join padrones on LN_contrapartes.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join country on identificadores.country_code = country.country_code
inner join clientes on LN_docs.cliente = clientes.cliente
inner join balances_contables on LN_docs.id_externo = balances_contables.id_balance
where LN_docs.doc_id = @p_doc_id
/*
-- Marcamos como eliminado todo balance del mismo perĂodo y cuit excepto el que vamos a verificar
UPDATE balances_contables SET estado = 'ELIMINADO'
WHERE cuit = @ident
AND fecha_balance = @fecha
AND id_balance <> @id_balance
-- El balance verificado queda en forma de grabado parcial disponible para carga de datos
UPDATE balances_contables SET estado = 'GRABADO PARCIAL',
modified = GETDATE(), modified_by = @p_user_id
WHERE cuit = @ident
AND fecha_balance = @fecha
AND id_balance = @id_balance
*/
/* El documento LED queda verificado */
declare @inicio date = null
if (@fecha is not null and @periodo > 0)
set @inicio = dateadd(day, 1, dateadd(month, (-1) * @periodo, @fecha))
UPDATE LN_docs set estado_doc = 'V',
inicio_ejercicio = @inicio,
fin_ejercicio = @fecha,
modified = GETDATE(), modified_by = @p_user_id,
verificado_backend = GETDATE(),
verificado_backend_por = @p_user_id,
doc_log = CONVERT(VARCHAR(MAX),doc_log) + CHAR(13)+CHAR(10) +
CONVERT(VARCHAR(10), GETDATE(),103) + ' ' + CONVERT(VARCHAR(5), GETDATE(), 14) + ' - Documento de balance verificado por ' + @usuario
WHERE doc_id = @p_doc_id
exec LN_dashboard_cliente 'score_documentos', NULL, NULL, NULL, @contraparte
exec LN_dashboard_cliente 'score_final_contraparte', NULL, NULL, NULL, @contraparte
end
END
GO
GO
-- =============================================
-- Author: LUIS J PRENAFETA
-- Create date: 03 AGOSTO 2018
-- Description: VERIFICA LA CARGA DE UN DOCUMENTO BALANCE LED SUBIDO POR UN PROVEEDOR,
-- Y AL REGISTRO DE BALANCE_CONTABLE ASOCIADO LO PASA DE ESTADO CARGA LED
-- A GRABADO PARCIAL. CUALQUIER OTRO BALANCE_CONTABLE PREEXISTENTE PARA EL
-- MISMO CUIT Y FECHA DE CIERRE DEBE PASAR A ESTADO ELIMINADO (INCLUSO PUBLICADOS)
-- FINALMENTE DA COMO VERIFICADO EL REGISTRO DE DOCUMENTO LED
-- =============================================
CREATE OR ALTER PROCEDURE dbo.LN_balances_verificar
-- Add the parameters for the stored procedure here
@p_doc_id int,
@p_user_id int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
if (@p_doc_id is not null) begin
declare @contraparte int
declare @id_balance int
declare @ident varchar(50)
declare @fecha date
declare @periodo int = null
DECLARE @usuario varchar(50)
select @usuario = first_name + ' ' + last_name
from users where user_id = @p_user_id
select @contraparte = LN_docs.contraparte,
@ident = padrones.identificacion,
@id_balance = balances_contables.id_balance,
@fecha = balances_contables.fecha_balance,
@periodo = balances_contables.periodo
FROM LN_docs
inner join LN_tipos_doc on LN_docs.tipo_doc = LN_tipos_doc.tipo_doc
inner join LN_contrapartes on LN_docs.contraparte = LN_contrapartes.contraparte
inner join padrones on LN_contrapartes.id_padron = padrones.id_padron
inner join identificadores on padrones.identificador = identificadores.identificador
inner join country on identificadores.country_code = country.country_code
inner join clientes on LN_docs.cliente = clientes.cliente
inner join balances_contables on LN_docs.id_externo = balances_contables.id_balance
where LN_docs.doc_id = @p_doc_id
/*
-- Marcamos como eliminado todo balance del mismo perĂodo y cuit excepto el que vamos a verificar
UPDATE balances_contables SET estado = 'ELIMINADO'
WHERE cuit = @ident
AND fecha_balance = @fecha
AND id_balance <> @id_balance
-- El balance verificado queda en forma de grabado parcial disponible para carga de datos
UPDATE balances_contables SET estado = 'GRABADO PARCIAL',
modified = GETDATE(), modified_by = @p_user_id
WHERE cuit = @ident
AND fecha_balance = @fecha
AND id_balance = @id_balance
*/
/* El documento LED queda verificado */
declare @inicio date = null
if (@fecha is not null and @periodo > 0)
set @inicio = dateadd(day, 1, dateadd(month, (-1) * @periodo, @fecha))
UPDATE LN_docs set estado_doc = 'V',
inicio_ejercicio = @inicio,
fin_ejercicio = @fecha,
modified = GETDATE(), modified_by = @p_user_id,
verificado_backend = GETDATE(),
verificado_backend_por = @p_user_id,
doc_log = CONVERT(VARCHAR(MAX),doc_log) + CHAR(13)+CHAR(10) +
CONVERT(VARCHAR(10), GETDATE(),103) + ' ' + CONVERT(VARCHAR(5), GETDATE(), 14) + ' - Documento de balance verificado por ' + @usuario
WHERE doc_id = @p_doc_id
exec LN_dashboard_cliente 'score_documentos', NULL, NULL, NULL, @contraparte
exec LN_dashboard_cliente 'score_final_contraparte', NULL, NULL, NULL, @contraparte
end
END
GO
Depends On
10Used By
No items found