dbo.mis_aportes_empresa_AGB

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_cuit varchar 13
@dias int 4

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================

-- exec mis_aportes_empresa_AGB '30709308242'

CREATE OR ALTER PROCEDURE dbo.mis_aportes_empresa_AGB
 -- Add the parameters for the stored procedure here

 @p_cuit varchar(13) = null, 
 @dias   int = 720 
 
AS
BEGIN
 -- SET NOCOUNT ON added to prevent extra result sets from
 -- interfering with SELECT statements.
 SET NOCOUNT ON;

    -- Insert statements for procedure here
 -- set @dias=120 dejamos lo que manden por parametro 27/07/2021
 DECLARE @p1 INT
 DECLARE @p2 INT
 DECLARE @d1 DATETIME
 DECLARE @d2 DATETIME

 DECLARE @meses int = -11

 /* VALOR yyyymm  del período correspondiente a la fecha actual - preset por si no hay datos */ 
 DECLARE @m1 INT = CONVERT(INT, CONVERT(varchar, Year(GETDATE())) +  RIGHT('00' + CONVERT(varchar, Month(GETDATE())), 2))

 /* máximo período encontrado en mis aportes para el cuit - en caso de estar vacío es el período de hoy */
 SELECT @p2 = ISNULL(MAX(periodo), @m1) FROM mis_aportes WHERE cuit_empleador = @p_cuit

 /* el rango de la consulta son los últimos 12 meses registrados */
 SET @d2 = DATETIMEFROMPARTS(CONVERT(INT, @p2/100), CONVERT(INT, RIGHT(CONVERT(varchar,@p2),2)),1,0,0,0,0)
 SET @d1 = DATEADD(MONTH,@meses,@d2)
 SET @p1 = CONVERT(INT, CONVERT(varchar,Year(@d1)) + RIGHT('00' + CONVERT(varchar, Month(@d1)), 2))

 

 if(@p_cuit is not null) begin

  /*SELECT
   mis_aportes.ddjj, mis_aportes.aportes_ss, mis_aportes.aportes_os,
   mis_aportes.contr_patronal, mis_aportes.periodo, mis_aportes.cuit_empleador,
   substring(convert(varchar(6), mis_aportes.periodo),5,2) + '-' + left(convert(varchar(6), mis_aportes.periodo), 4) AS periodo_str
   FROM mis_aportes
  
   inner join
   (select cuit_empleador, periodo, max(inserted) as ultimo
   from mis_aportes
   where cuit_empleador = @p_cuit
   group by cuit_empleador, periodo) per_last 
   ON (mis_aportes.cuit_empleador = per_last.cuit_empleador
   AND mis_aportes.periodo = per_last.periodo
   AND mis_aportes.inserted = per_last.ultimo)
  
   WHERE mis_aportes.periodo BETWEEN @p1 AND @p2
   ORDER BY mis_aportes.periodo*/


 /* AGB COMENTADO Y MODIFICADO 16/08/2022 
  select mis_aportes.periodo,mis_aportes.ddjj,mis_aportes.aportes_ss,mis_aportes.aportes_os,mis_aportes.contr_patronal,
  mis_aportes.periodo, mis_aportes.cuit_empleador,
  substring(convert(varchar(6), mis_aportes.periodo),5,2) + '-' + left(convert(varchar(6), mis_aportes.periodo), 4) AS periodo_str,max(id_aportes) as IDAporte
  from mis_aportes 
  where -- mis_aportes.ddjj!='NO PRESENTADA' and 
  mis_aportes.periodo BETWEEN @p1 AND @p2
  and mis_aportes.cuit_empleador = @p_cuit
  and mis_aportes.inserted >= ( GETDATE() - @dias )
 
  group by mis_aportes.periodo,mis_aportes.ddjj,mis_aportes.aportes_ss,mis_aportes.aportes_os,mis_aportes.contr_patronal,
  mis_aportes.periodo, mis_aportes.cuit_empleador
 
  order by mis_aportes.periodo
 */


  select mis_aportes.periodo,mis_aportes.ddjj,mis_aportes.aportes_ss,mis_aportes.aportes_os,mis_aportes.contr_patronal,
  mis_aportes.periodo, mis_aportes.cuit_empleador,
  substring(convert(varchar(6), mis_aportes.periodo),5,2) + '-' + left(convert(varchar(6), mis_aportes.periodo), 4) AS periodo_str 
  from mis_aportes inner join (select MISAP.periodo,max(id_aportes) as IDAporte
  from mis_aportes MISAP
  where -- mis_aportes.ddjj!='NO PRESENTADA' and 
  MISAP.periodo BETWEEN @p1 AND @p2
  and MISAP.cuit_empleador = @p_cuit
  and MISAP.inserted >= ( GETDATE() - @dias ) group by MISAP.periodo) IDS on mis_aportes.id_aportes=IDS.IDAporte
/* where -- mis_aportes.ddjj!='NO PRESENTADA' and 
mis_aportes.periodo BETWEEN @p1 AND @p2
and mis_aportes.cuit_empleador = @p_cuit
and mis_aportes.inserted >= ( GETDATE() - @dias )

group by mis_aportes.periodo,mis_aportes.ddjj,mis_aportes.aportes_ss,mis_aportes.aportes_os,mis_aportes.contr_patronal,
mis_aportes.periodo, mis_aportes.cuit_empleador
*/
 
  order by mis_aportes.periodo




-- exec mis_aportes_empresa_AGB '30709308242'

 end
 
END
GO

Depends On

1

Used By

No items found