IF a KACE report such as the one here. 

http://www.kace.com/support/resources/kb/article/Helpdesk-Report-Showing-Ticket-History?action=artikel&id=954

Works for you except in CSV format then you are having an issue with the newline which CSV doesnt play well with.

Try altering it like the below code whcih will work in CSV format.

 

*******************************SQL****************************

SELECT 
HD_TICKET.ID,
O.FULL_NAME AS OWNER_NAME,
S.FULL_NAME AS SUBMITTER_NAME, 
GROUP_CONCAT( CONCAT('\n-- Change by ',U.USER_NAME,' on ', 
CAST(DATE(HD_TICKET_CHANGE.TIMESTAMP)  AS CHAR),' ---', 
IF(DESCRIPTION='' OR ISNULL(DESCRIPTION),'', 
CONCAT('--',TRIM(TRAILING '-->' FROM REPLACE(DESCRIPTION,'\n','--')),'')),
IF(HD_TICKET_CHANGE.COMMENT='','',CONCAT(HD_TICKET_CHANGE.COMMENT,' - ')) ) 
ORDER BY CAST( HD_TICKET_CHANGE.ID AS CHAR) DESC SEPARATOR ' - ' ) AS HD_TICKET_CHANGE_COMMENT
FROM HD_TICKET JOIN HD_CATEGORY ON (HD_CATEGORY.ID = HD_TICKET.HD_CATEGORY_ID)
JOIN HD_TICKET_CHANGE ON (HD_TICKET_CHANGE.HD_TICKET_ID = HD_TICKET.ID)
LEFT JOIN USER O ON (O.ID = HD_TICKET.OWNER_ID) LEFT JOIN USER U ON USER_ID=U.ID
LEFT JOIN USER S ON S.ID=HD_TICKET.SUBMITTER_ID
WHERE  HD_TICKET_CHANGE.OWNERS_ONLY=0
GROUP BY HD_TICKET_ID ORDER BY HD_TICKET.ID DESC
 

**************************************************************