Advertisement
Guest User

Untitled

a guest
Aug 12th, 2019
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
T-SQL 1.89 KB | None | 0 0
  1. USE [hrp.229.PM]
  2. GO
  3. /****** Object:  StoredProcedure [dbo].[GetMapalEmployeesToRegister]    Script Date: 12-08-2019 12:18:24 PM ******/
  4. SET ANSI_NULLS ON
  5. GO
  6. SET QUOTED_IDENTIFIER ON
  7. GO
  8.  
  9. ALTER procedure [dbo].[GetMapalEmployeesToRegister]
  10. as
  11.     begin
  12.     declare @maxDays int = 0
  13.     select @maxDays = dbo.GetSetting(null,'Mapal.Sync.Delta')
  14.  
  15.     select top 10
  16.         c.Id as ContractId, c.IdentificationNumber, p.LastName, p.FirstName, case when gender.Code='M' then 'M' when gender.Code='F' then 'H' else '0' end as Gender,
  17.         convert(nvarchar(20),p.BirthDate,120) as BirthDate, p.PersonalNumber, dbo.fnGetWorkingHoursPerDay(cwp.WorkingHours, cwp.WorkingHoursType) as ContractWorkingHours, convert(nvarchar(20),c.StartDate,120) as StartDate,
  18.         cc.Code as ExternalUnitId, d.Name as Category
  19.     from
  20.         Contract c
  21.         inner join dbo.Person p on p.Id = c.PersonId
  22.         inner join Metadata.EnumerationValue gender on gender.Id = p.Gender
  23.         cross apply dbo.fnGetContractDetails_ContractWorkProgram(c.Id,getdate()) details_cwp
  24.         cross apply dbo.fnGetContractDetails_ContractOrganizationalAssignment(c.Id,getdate()) details_coa
  25.         inner join dbo.ContractWorkProgram cwp on cwp.id = details_cwp.Id
  26.         inner join dbo.ContractOrganizationalAssignment coa on coa.Id = details_coa.Id
  27.         left join dbo.CostCenter cc on cc.Id = coa.CostCenterId
  28.         left join dbo.Domain d on d.Id = coa.DomainId
  29.     where
  30.         dbo.fnIsActiveContract(c.Id,getdate(),dateadd(day,@maxDays,getdate())) = 1 and
  31.         (not exists(select * from dbo.ContractCustomFieldValue pcfv inner join dbo.CustomField cf on cf.Id = pcfv.CustomFieldId where cf.Name='MapalUserId' and pcfv.ContractId = c.Id)
  32.         --or exists(select * from dbo.PersonCustomFieldValue pcfv inner join dbo.CustomField cf on cf.Id = pcfv.CustomFieldId where cf.Name='MapalUserState' and pcfv.PersonId = p.Id and pcfv.TextValue = 'deleted')
  33.         )
  34.         and c.StartDate >='2019-07-29 00:00:00'
  35.     order by c.Date desc
  36. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement