Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
1| Name | Data Type | Length | Description |
|---|---|---|---|
| @p_cliente | int | 4 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: <María Inés Soria>
-- Create date: <24/04/2023>
-- Description:
/*
Hacer un producto nuevo para que el 931 del antepenúltimo mes entre en consideración del módulo de acceso.
Un documento que no es de acceso y del mes de Enero no puede directamente ser killer de acceso en Abril.
Esto requiere un producto especial que diariamente indique al módulo de acceso si ese documento anterior está ok o no.
El tipo de documento (2 y 872 del período Enero (dbo.PeriodoMenosTres() ) de un contratista x que no figure como verificado
debe actualizar a todos los tipos de documento 1069 del mismo contratista_1 al estado R de rechazado en el mes
de control de acceso vigente (dbo.PeriodoAdelantado()). Agregar en el motivo del rechazo de estos documentos
que se los rechaza debido a que el F931 del mes de Enero no se encuentra verificado.
Los documentos del mes de acceso se generan como Verificados inicialmente. Cliente = 9936068 (en principio)
*/
-- =============================================
CREATE OR ALTER PROCEDURE dbo.LED_Chequear_931
@p_cliente int = 9936068
AS
BEGIN
SET NOCOUNT ON;
DECLARE @horario varchar(16) = CONVERT(VARCHAR(10), GETDATE(),103) + ' ' + CONVERT(VARCHAR(5), GETDATE(), 14)
-- No verificados
update led_docs
set estado_doc = 'R', rechazado = getdate(), rechazado_por = 15342812,
texto_rechazo = 'Se rechaza debido a que el F931 del mes ' +
substring(convert(varchar,dbo.PeriodoMenosTres()),5,2) + '/' +
substring(convert(varchar,dbo.PeriodoMenosTres()),1,4) +
' no se encuentra verificado.',
doc_log = convert(varchar(max), doc_log) + ' ' + @horario +
': Se rechaza debido a que el F931 del mes ' +
substring(convert(varchar,dbo.PeriodoMenosTres()),5,2) + '/' +
substring(convert(varchar,dbo.PeriodoMenosTres()),1,4) +
' no se encuentra verificado.'
where tipo_doc = 1069 and periodo = dbo.PeriodoAdelantado() and estado_doc = 'V'
and contratista_1 in (
select D.contratista_1
from led_docs D
inner join led_contratistas on (led_contratistas.contratista = D.contratista_1 and
led_contratistas.estado_contratista = 'A')
where D.tipo_doc in (2,872)
and D.cliente = @p_cliente
and D.periodo = dbo.PeriodoMenosTres()
and D.estado_doc not in ('V','I')
)
-- Verificados
update led_docs
set estado_doc = 'V', rechazado = null, rechazado_por = null,
texto_rechazo = null,
doc_log = convert(varchar(max), doc_log) + ' ' + @horario +
': Verificado - El F931 del mes ' +
substring(convert(varchar,dbo.PeriodoMenosTres()),5,2) + '/' +
substring(convert(varchar,dbo.PeriodoMenosTres()),1,4) +
' se encuentra verificado.'
where tipo_doc = 1069 and periodo = dbo.PeriodoAdelantado() and estado_doc = 'R'
and contratista_1 in (
select D.contratista_1
from led_docs D
inner join led_contratistas on (led_contratistas.contratista = D.contratista_1 and
led_contratistas.estado_contratista = 'A')
where D.tipo_doc in (2,872)
and D.cliente = @p_cliente
and D.periodo = dbo.PeriodoMenosTres()
and D.estado_doc = 'V'
)
END
GO
GO
-- =============================================
-- Author: <María Inés Soria>
-- Create date: <24/04/2023>
-- Description:
/*
Hacer un producto nuevo para que el 931 del antepenúltimo mes entre en consideración del módulo de acceso.
Un documento que no es de acceso y del mes de Enero no puede directamente ser killer de acceso en Abril.
Esto requiere un producto especial que diariamente indique al módulo de acceso si ese documento anterior está ok o no.
El tipo de documento (2 y 872 del período Enero (dbo.PeriodoMenosTres() ) de un contratista x que no figure como verificado
debe actualizar a todos los tipos de documento 1069 del mismo contratista_1 al estado R de rechazado en el mes
de control de acceso vigente (dbo.PeriodoAdelantado()). Agregar en el motivo del rechazo de estos documentos
que se los rechaza debido a que el F931 del mes de Enero no se encuentra verificado.
Los documentos del mes de acceso se generan como Verificados inicialmente. Cliente = 9936068 (en principio)
*/
-- =============================================
CREATE OR ALTER PROCEDURE dbo.LED_Chequear_931
@p_cliente int = 9936068
AS
BEGIN
SET NOCOUNT ON;
DECLARE @horario varchar(16) = CONVERT(VARCHAR(10), GETDATE(),103) + ' ' + CONVERT(VARCHAR(5), GETDATE(), 14)
-- No verificados
update led_docs
set estado_doc = 'R', rechazado = getdate(), rechazado_por = 15342812,
texto_rechazo = 'Se rechaza debido a que el F931 del mes ' +
substring(convert(varchar,dbo.PeriodoMenosTres()),5,2) + '/' +
substring(convert(varchar,dbo.PeriodoMenosTres()),1,4) +
' no se encuentra verificado.',
doc_log = convert(varchar(max), doc_log) + ' ' + @horario +
': Se rechaza debido a que el F931 del mes ' +
substring(convert(varchar,dbo.PeriodoMenosTres()),5,2) + '/' +
substring(convert(varchar,dbo.PeriodoMenosTres()),1,4) +
' no se encuentra verificado.'
where tipo_doc = 1069 and periodo = dbo.PeriodoAdelantado() and estado_doc = 'V'
and contratista_1 in (
select D.contratista_1
from led_docs D
inner join led_contratistas on (led_contratistas.contratista = D.contratista_1 and
led_contratistas.estado_contratista = 'A')
where D.tipo_doc in (2,872)
and D.cliente = @p_cliente
and D.periodo = dbo.PeriodoMenosTres()
and D.estado_doc not in ('V','I')
)
-- Verificados
update led_docs
set estado_doc = 'V', rechazado = null, rechazado_por = null,
texto_rechazo = null,
doc_log = convert(varchar(max), doc_log) + ' ' + @horario +
': Verificado - El F931 del mes ' +
substring(convert(varchar,dbo.PeriodoMenosTres()),5,2) + '/' +
substring(convert(varchar,dbo.PeriodoMenosTres()),1,4) +
' se encuentra verificado.'
where tipo_doc = 1069 and periodo = dbo.PeriodoAdelantado() and estado_doc = 'R'
and contratista_1 in (
select D.contratista_1
from led_docs D
inner join led_contratistas on (led_contratistas.contratista = D.contratista_1 and
led_contratistas.estado_contratista = 'A')
where D.tipo_doc in (2,872)
and D.cliente = @p_cliente
and D.periodo = dbo.PeriodoMenosTres()
and D.estado_doc = 'V'
)
END
GO
Used By
No items found