dbo.Imperium_Crea_Doc_Periodo_Nuevo

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

4
Name Data Type Length Description
@periodoOriginal int 4
@periodoSig int 4
@IDCliente int 4
@Modalidad varchar 1

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
/*

exec Imperium_Crea_Doc_Periodo_Nuevo dbo.PeriodoMenosDos(),dbo.PeriodoVencido(),1202246,'V'

select * from led_docs where periodo = dbo.PeriodoVencido() and cliente = 1202246 

and estado_doc = 'V'


exec Imperium_Crea_Periodocidades dbo.PeriodoVencido(),dbo.PeriodoAdelantado(),'C','A'
exec Imperium_Crea_Periodocidades dbo.PeriodoVencido(),dbo.PeriodoAdelantado(),'V','A'
exec Imperium_Crea_Periodocidades dbo.PeriodoVencido(),dbo.PeriodoAdelantado(),'E','A'
exec Imperium_Crea_Periodocidades dbo.PeriodoVencido(),dbo.PeriodoAdelantado(),'S','A'


*/



CREATE OR ALTER PROCEDURE   dbo.Imperium_Crea_Doc_Periodo_Nuevo
@periodoOriginal int,
@periodoSig int,
@IDCliente int,
@Modalidad varchar(1)

AS

BEGIN
 SET NOCOUNT ON;

DECLARE @ERRORNUMBER SMALLINT 


DECLARE ImperiumDocs Cursor
FOR



SELECT tipo_doc, 'I' as estado_doc, led_seccion, cliente, contratista, null as empleado, null as vehiculo, '2018-02-01 00:30:00' as ingresado, 15342812 as ingresado_por, '2018-02-01 00:30:00' AS verificado,  null as verificado_por,
NULL AS rechazado, NULL AS rechazado_por, null as fecha_vigencia, NULL AS texto_rechazo,
'REPLICACION AUTOMATICA: 2018-02-01 00:11' AS doc_log,
@periodoSig AS periodo, contratista_1, grupo_doc, '2018-02-01 00:30:00' AS insertado,
'2018-02-04 23:59:59' AS fecha_tolerancia,
'A' as compliance_doc, doc_id_lista,
0 AS aprobacion_parcial, NULL AS notificacion, 0 AS parcial_actualizado, NULL AS reapertura_por_alta, file_path, NULL AS replicated_doc_id, sync_file,
                         file_path2, existe, last_modified, cuit_found, doc_version, task_id, task_procesado
FROM            led_docs
WHERE    tipo_doc IN (SELECT tipo_doc FROM led_tipos_doc WHERE modalidad=@Modalidad) 
/* AND  (periodo = @periodoOriginal) AND (fecha_vigencia > GETDATE() + 1) AND (estado_doc IN ('V')) */
and cliente =@IDCliente 
and tipo_doc  in 
(SELECT distinct tipo_doc FROM led_cliente_contratista WHERE estado_inicial='I')

union all

SELECT        tipo_doc, 'N' as estado_doc, led_seccion, cliente, contratista, empleado, vehiculo, '2018-02-01 00:30:00' as ingresado, null as ingresado_por, null AS verificado,  null as verificado_por,
NULL AS rechazado, NULL AS rechazado_por,
fecha_vigencia, NULL AS texto_rechazo,
'REPLICACION AUTOMATICA: 2018-02-01 00:11' AS doc_log,
@periodoSig AS periodo, contratista_1, grupo_doc, '2018-02-01 00:30:00' AS insertado,
'2018-02-04 23:59:59' AS fecha_tolerancia,
'B' as compliance_doc, doc_id_lista,
0 AS aprobacion_parcial, NULL AS notificacion, 0 AS parcial_actualizado, NULL AS reapertura_por_alta, file_path, NULL AS replicated_doc_id, sync_file,
                         file_path2, existe, last_modified, cuit_found, doc_version, task_id, task_procesado
FROM            led_docs
WHERE    tipo_doc IN 
(SELECT tipo_doc FROM led_tipos_doc WHERE modalidad=@Modalidad) 
AND  (periodo = @periodoOriginal)
and cliente =@IDCliente


/*

SELECT        tipo_doc, 'N' as estado_doc, led_seccion, cliente, contratista, empleado, vehiculo, '2018-02-01 00:30:00' as ingresado, null as ingresado_por, null AS verificado,  null as verificado_por,
NULL AS rechazado, NULL AS rechazado_por,
fecha_vigencia, NULL AS texto_rechazo,
'REPLICACION AUTOMATICA: 2018-02-01 00:11' AS doc_log,
@periodoSig AS periodo, contratista_1, grupo_doc, '2018-02-01 00:30:00' AS insertado,
'2018-02-04 23:59:59' AS fecha_tolerancia,
'B' as compliance_doc, doc_id_lista,
0 AS aprobacion_parcial, NULL AS notificacion, 0 AS parcial_actualizado, NULL AS reapertura_por_alta, file_path, NULL AS replicated_doc_id, sync_file,
                         file_path2, existe, last_modified, cuit_found, doc_version, task_id, task_procesado
FROM            led_docs
WHERE    tipo_doc IN 
(SELECT tipo_doc FROM led_tipos_doc WHERE modalidad=@Modalidad) 
AND  (periodo = @periodoOriginal) 
AND (fecha_vigencia > GETDATE() + 1) AND (estado_doc IN ('V'))
and cliente =@IDCliente

union all
SELECT        tipo_doc, 'N' AS estado_doc, led_seccion, cliente, contratista, empleado, vehiculo, NULL AS ingresado, NULL AS ingresado_por, verificado, verificado_por,
NULL AS rechazado, NULL AS rechazado_por,
fecha_vigencia, NULL AS texto_rechazo,
'APERTURA AUTOMATICA DE PERIODO: 2018-02-01 00:11' AS doc_log,
@periodoSig AS periodo, contratista_1, grupo_doc, '2018-02-01 00:30:00' AS insertado,
'2018-02-04 23:59:59' AS fecha_tolerancia,
'B' AS compliance_doc, doc_id_lista,
0 AS aprobacion_parcial, NULL AS notificacion, 0 AS parcial_actualizado, NULL AS reapertura_por_alta, file_path, NULL AS replicated_doc_id, sync_file,
                         file_path2, existe, last_modified, cuit_found, doc_version, task_id, task_procesado
FROM            led_docs
WHERE    tipo_doc IN 
(SELECT tipo_doc FROM led_tipos_doc WHERE modalidad=@Modalidad) 
AND   periodo = @periodoOriginal AND (estado_doc IN ('N','I','R') OR (estado_doc IN ('V') AND fecha_vigencia < GETDATE() + 1))
and cliente =@IDCliente
*/


Open ImperiumDocs

declare @tipo_doc int,@doc_id bigint
declare @estado_doc varchar(2),@led_seccion varchar(1),@cliente int ,@contratista int,@empleado int,@vehiculo int
declare @ingresado datetime,@ingresado_por int,@verificado datetime,@verificado_por int,@rechazado datetime,@rechazado_por int
declare @fecha_vigencia datetime, @texto_rechazo varchar(max),@doc_log varchar(max),@periodo int,@contratista_1 int
declare @grupo_doc int ,@insertado datetime,@fecha_tolerancia datetime,@compliance_doc varchar(1),@doc_id_lista int
declare @aprobacion_parcial tinyint,@notificacion int, @parcial_actualizado tinyint, @reapertura_por_alta tinyint, @file_path varchar(512)
declare @replicated_doc_id bigint, @sync_file bit, @file_path2 varchar(512), @existe bit, @last_modified datetime, @cuit_found varchar(max), @doc_version tinyint, @task_id int, @task_procesado bit


Fetch NEXT FROM ImperiumDocs INTO @tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@ingresado,@ingresado_por,@verificado,@verificado_por,@rechazado,
  @rechazado_por,@fecha_vigencia,@texto_rechazo,@doc_log,@periodo,@contratista_1,@grupo_doc,@insertado,
  @fecha_tolerancia,@compliance_doc,@doc_id_lista,@aprobacion_parcial,@notificacion, @parcial_actualizado, @reapertura_por_alta, @file_path, 
  @replicated_doc_id, @sync_file, @file_path2, @existe, @last_modified, @cuit_found, @doc_version, @task_id, @task_procesado

While @@FETCH_STATUS =0
BEGIN
 BEGIN try

  insert into led_docs (tipo_doc, estado_doc, led_seccion, cliente, contratista, empleado, vehiculo, ingresado, ingresado_por, verificado, verificado_por, rechazado, 
                          rechazado_por, fecha_vigencia, texto_rechazo, doc_log, periodo, contratista_1, grupo_doc, insertado,
                         fecha_tolerancia, compliance_doc, doc_id_lista,aprobacion_parcial,notificacion, parcial_actualizado, reapertura_por_alta, file_path, 
                        replicated_doc_id, sync_file, file_path2, existe, last_modified, cuit_found, doc_version, task_id, task_procesado)
  values (@tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@ingresado,@ingresado_por,@verificado,@verificado_por,@rechazado,
  @rechazado_por,@fecha_vigencia,@texto_rechazo,@doc_log,@periodo,@contratista_1,@grupo_doc,@insertado,
  @fecha_tolerancia,@compliance_doc,@doc_id_lista,@aprobacion_parcial,@notificacion, @parcial_actualizado, @reapertura_por_alta, @file_path, 
  @replicated_doc_id, @sync_file, @file_path2, @existe, @last_modified, @cuit_found, @doc_version, @task_id, @task_procesado)

 end try
 begin catch

 set @ERRORNUMBER = 22
 /*
  select @tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@ingresado,@ingresado_por,@verificado,@verificado_por,@rechazado,
  @rechazado_por,@fecha_vigencia,@texto_rechazo,@doc_log,@periodo,@contratista_1,@grupo_doc,@insertado,
  @fecha_tolerancia,@compliance_doc,@doc_id_lista,@aprobacion_parcial,@notificacion, @parcial_actualizado, @reapertura_por_alta, @file_path, 
  @replicated_doc_id, @sync_file, @file_path2, @existe, @last_modified, @cuit_found, @doc_version, @task_id, @task_procesado
  */

end catch


Fetch NEXT FROM ImperiumDocs INTO @tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@ingresado,@ingresado_por,@verificado,@verificado_por,@rechazado,
  @rechazado_por,@fecha_vigencia,@texto_rechazo,@doc_log,@periodo,@contratista_1,@grupo_doc,@insertado,
  @fecha_tolerancia,@compliance_doc,@doc_id_lista,@aprobacion_parcial,@notificacion, @parcial_actualizado, @reapertura_por_alta, @file_path, 
  @replicated_doc_id, @sync_file, @file_path2, @existe, @last_modified, @cuit_found, @doc_version, @task_id, @task_procesado


END

CLOSE ImperiumDocs
DEALLOCATE ImperiumDocs


exec Imperium_Crea_Periodocidades @periodoOriginal,@periodoSig,'C',@Modalidad
exec Imperium_Crea_Periodocidades @periodoOriginal,@periodoSig,'V',@Modalidad
exec Imperium_Crea_Periodocidades @periodoOriginal,@periodoSig,'E',@Modalidad


END

GO

Used By

No items found