When you press the Print button while viewing a task in ServiceDesk, a Crystal report file with the name Task.rpt is launched, however this means you can only use printing on tasks in one module and not any other, for example you can configure a Task.rpt file for printing Change Tasks by renaming the Out Of The Box ChangeTask.rpt to Task.rpt, but you then can't use the IncidentTask.rpt or ProblemTask.rpt reports that are also shipped.
The attached Crystal report shows how to use a "master" Task.rpt report to load one of multiple sub-reports based on the module of the task you're trying to print. This example uses the Out Of The Box reports for Change, Incident and Problem Tasks. Instructions for adding new reports is included within the report header (right-click the section and select "Don't Surpress" to make it easier to read).
The formula used to supress the sub-reports is based on the Title of the task objects which in recent versions of the Out Of The Box database are Change Task, Incident Task etc... but may all still be simply Task on systems based on older databases. You can change the Title property of the Task objects to suit, and update the supression formulae in the Task.rpt file to match.
Task.rpt is for SQL users
Oracle Task.rpt is for Oracle users but will need to be renamed to Task.rpt for Service Desk to pick this up on the task window.