cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
JTempleton
Engaged Sweeper III
Good day!

I am working on a version of the open tickes with SLA overtime report. The following fields show both time and date, I am looking for them to just show the date:

Select Top 1000000 htblticket.ticketid,
'#' + Cast(htblticket.ticketid As nvarchar) As Ticket,
htblticket.date As CreationDate,
htblticket.updated As LastUpdated,
htbltickettypes.typename As Type,
htblticketstates.statename As State,
htblpriorities.name As Priority,
htblsource.name As Source,
htblusers.name As [User],
htblusers1.name As AssignedAgent,
htblusers2.name As UserLastNote,
'../helpdesk/icons/' + htbltickettypes.icon As icon,
htblticket.subject As Subject
From htblticket
Left Join (Select Top 1000000 htblnotes.ticketid,
Min(htblnotes.date) As FirstPublicReply
From htblnotes
Inner Join htblagents On htblnotes.userid = htblagents.userid
Where htblnotes.notetype = 1
Group By htblnotes.ticketid) As InitialResponseTime On htblticket.ticketid =
InitialResponseTime.ticketid
Inner Join htblticketstates On htblticketstates.ticketstateid =
htblticket.ticketstateid
Inner Join htbltickettypes On htbltickettypes.tickettypeid =
htblticket.tickettypeid
Inner Join htblpriorities On htblpriorities.priority = htblticket.priority
Inner Join htblsource On htblsource.sourceid = htblticket.sourceid
Inner Join htblusers On htblusers.userid = htblticket.fromuserid
Left Join htblagents On htblagents.agentid = htblticket.agentid
Left Join htblusers htblusers1 On htblusers1.userid = htblagents.userid
Inner Join htblusers htblusers2
On htblusers2.userid = htblticket.userid_lastnote
Where Case
When htblticket.slainitial < InitialResponseTime.FirstPublicReply Then 'Yes'
When InitialResponseTime.FirstPublicReply Is Null And
htblticket.slainitial < GetDate() Then 'Yes' Else 'No'
End = 'Yes' And (htblticketstates.statename = 'Open' And htblticket.spam <>
'True' Or htblticketstates.statename = 'New')
Order By htblticket.ticketid

Thanks!
1 ACCEPTED SOLUTION
Esben_D
Lansweeper Employee
Lansweeper Employee
Damn. Guess the HTML output doesn't like the convert.

An alternative solution is to just create a string by taking the day,month and year fields.

This should work:
  Convert(varchar,DatePart(mm, htblticket.date)) + '/' +
Convert(varchar,DatePart(dd, htblticket.date)) + '/' +
Convert(varchar,DatePart(yyyy, htblticket.date)) As CreationDate,
Convert(varchar,DatePart(mm, htblticket.updated)) + '/' +
Convert(varchar,DatePart(dd, htblticket.updated)) + '/' +
Convert(varchar,DatePart(yyyy, htblticket.updated)) As LastUpdated,

View solution in original post

7 REPLIES 7
JTempleton
Engaged Sweeper III
Thanks guys!

As I keep creating reports, I will keep learning!
Esben_D
Lansweeper Employee
Lansweeper Employee
Good point. Guess I overthought it a bit.
RCorbeil
Honored Sweeper II
You don't actually need to slice & dice. Refer to this page.

I regularly need date-only output in queries I run and prefer descending order of magnitude (see ISO 8601), so use
Convert(VarChar(10), some_datetime_field, 121)

If you want US format with the century,
Convert(VarChar(10), some_datetime_field, 101)

should do the trick for you.
Esben_D
Lansweeper Employee
Lansweeper Employee
Damn. Guess the HTML output doesn't like the convert.

An alternative solution is to just create a string by taking the day,month and year fields.

This should work:
  Convert(varchar,DatePart(mm, htblticket.date)) + '/' +
Convert(varchar,DatePart(dd, htblticket.date)) + '/' +
Convert(varchar,DatePart(yyyy, htblticket.date)) As CreationDate,
Convert(varchar,DatePart(mm, htblticket.updated)) + '/' +
Convert(varchar,DatePart(dd, htblticket.updated)) + '/' +
Convert(varchar,DatePart(yyyy, htblticket.updated)) As LastUpdated,
JTempleton
Engaged Sweeper III
One more quick question.

When I run the report in LanSweeper, those two fields only show the date. However, when the report is emailed out, the report then shows 06/20/2018 00:00:00. The report is emailed as HTML. Is there a separate command that can be used so when the report is emailed out, it doesn't show the date?

Thanks!
Esben_D
Lansweeper Employee
Lansweeper Employee
Converting the datetime to a date should work for you. Try replacing the date fields with the code below.

Convert(date,htblticket.date) As CreationDate,
Convert(date,htblticket.updated) As LastUpdated,
JTempleton
Engaged Sweeper III
Charles.X wrote:
Converting the datetime to a date should work for you. Try replacing the date fields with the code below.

Convert(date,htblticket.date) As CreationDate,
Convert(date,htblticket.updated) As LastUpdated,


Thank you! You are awesome!

New to Lansweeper?

Try Lansweeper For Free

Experience Lansweeper with your own data.
Sign up now for a 14-day free trial.

Try Now