--SP_VTMS_TL_CW_UPDATE '20110210','20110212',null,'TL1'
--SP_VTMS_TL_CW_UPDATE NULL,NULL,NULL,'TL1'
alter proc [SP_VTMS_TL_CW_UPDATE]
@fromdt varchar(12)=NULL,
@todt varchar(12)=NULL,
@empid varchar(12)=NULL,
@TL varchar(50)
as
begin
declare
@fromdate datetime,
@todate datetime,
@wkstartdate datetime,
@wkenddate datetime,
@nkwkstartdate datetime,
@nkwkenddate datetime,
@cntr int ,
@count int,
@count1 int,
@count2 int
if (@fromdt IS NULL)
set @fromdt = CONVERT(VARCHAR(18),GETDATE(),102)
if (@todt IS NULL)
set @todt = CONVERT(VARCHAR(18),GETDATE(),102)
print cast(@fromdt as varchar) +'suresh1'
print cast(@todt as varchar) +'suresh'
/*---------------------------Current Week*-----------------------------------------*/
--set @wkstartdate = convert(varchar(18),(select DATEADD(DD, 1 - DATEPART(DW, getdate()),getdate())) ,102)
--set @wkenddate = convert(varchar(18),(select DATEADD(DD, 1 - DATEPART(DW, getdate()),getdate())+6) ,102)
select vh.TranID,vh.empid,vh.empname,'PADAGA' as project_name,vh.process,ve.team,vh.teamLead,
convert(varchar(12),vh.time_in,108)Time_IN,convert(varchar(12),vh.time_out,108)Time_OUT ,
convert(varchar(12),vh.fromdate,106)[Fromdate],convert(varchar(12),@todt,106)[ToDate],case vh.active_status when '1' then 'true' else 'false' end [Active_status]
from vtms_header vh inner join vtms_empregistration ve on vh.empid=ve.empid
where ((vh.fromdate >=convert(varchar(18),@fromdt,112) and vh.fromdate <=convert(varchar(18),@todt,112)))
and vh.empid like '%'+ coalesce (@empid,'') +'%'
and ve.registered=1
and vh.tranid IN
(SELECT Min(x.tranid) FROM vtms_header x where x.fromdate >=convert(varchar(18),@fromdt,112)
and x.fromdate <=convert(varchar(18),@todt,112) GROUP by x.empid,x.empname,x.process,x.teamLead,x.time_in,x.time_out)
order by cast(vh.empid as int),vh.fromdate
--
--select vh.TranID,ve.empid,ve.empname,'PADAGA' as project_name,ve.process,ve.team,ve.teamLead,
--convert(varchar(12),vh.time_in,108)Time_IN,convert(varchar(12),vh.time_out,108)Time_OUT,
--convert(varchar(12),vh.fromdate,106)[Fromdate],convert(varchar(12),@todt,106)[ToDate],case vh.active_status when '1' then 'true' else 'false' end [Active_status]
--from vtms_header vh inner join vtms_empregistration ve on vh.empid=ve.empid
--where ((vh.fromdate >=convert(varchar(18),@fromdt,112) and vh.fromdate <=convert(varchar(18),@todt,112)))
--and ve.empid like '%'+ coalesce (@empid,'') +'%'
--and ve.registered=1
--order by cast(ve.empid as int),vh.fromdate
end
Search This Blog
Saturday, February 12, 2011
Tuesday, February 8, 2011
LIist all days between two days
WITH date_range (calc_date) AS (
SELECT DATEADD(DAY, DATEDIFF(DAY, 0, '20110101') , 0)
UNION ALL SELECT DATEADD(DAY, 1, calc_date)
FROM date_range
WHERE DATEADD(DAY, 1, calc_date) <= '20110103')
SELECT calc_date
FROM date_range;
SELECT DATEADD(DAY, DATEDIFF(DAY, 0, '20110101') , 0)
UNION ALL SELECT DATEADD(DAY, 1, calc_date)
FROM date_range
WHERE DATEADD(DAY, 1, calc_date) <= '20110103')
SELECT calc_date
FROM date_range;
Subscribe to:
Posts (Atom)