In ConSol CM, working hours can be booked to tickets. There are two booking modes:
In ConSol CM, an engineer can book working hours to a ticket. Those working hours can then be reported.
With manual time booking, working hours are always booked on projects which have to be assigned to one or more queues. For example, if your company plans to perform a migration from Windows 8 to Windows 10 clients and all the working hours should be registered for this migration project, the ConSol CM administrator has to create a migration project and assign it to all queues where tasks for this project might be performed. Then engineers can book their times on the project and can see their own reports for the project. Additionally, a report over all time bookings, of all engineers, may be implemented using the DWH (Data Warehouse, see section Data Warehouse (DWH) Management).
In order to enable engineers to book working hours on projects the ConSol CM administrator has to perform two steps using the Admin Tool:
In the following example, three projects are created. Engineers in the HelpDesk_1st_Level queue should be able to book working hours on two of them. Thus, the two projects have to be assigned to the HelpDesk_1st_Level queue.
You reach the following screen by selecting the navigation group Global Configuration, navigation item Projects.
Figure 489: ConSol CM Admin Tool, Global Configuration, Projects - Management of projects
Figure 490: ConSol CM Admin Tool, Global Configuration, Queues - Assigning projects to a queue
Please see the ConSol CM User Manual for a detailed explanation of the time booking feature. Here, only a brief overview is provided.
The user (engineer) can book working hours on a ticket using two different modes:
Figure 491: ConSol CM Web Client - Time booking in a ticket
Using the Time booking section on the engineer profile page to book working hours on a ticket. Only tickets where the engineer has performed certain activities and tickets owned by the engineer can be selected. A project also has to be selected from the list.
Figure 492: ConSol CM Web Client - Time booking on the engineer profile
Engineers can see a list of their time bookings on the engineer profile page. An example is shown in the following figure.
Figure 493: ConSol CM Web Client - Time booking report on the engineer profile
As an engineer, you can select whether you would like to see the bookings for the current day, week, or month. In the Day view, the projects are indicated, in the Week and Month view, only the sum of the booked times per day/week is indicated.
ConSol CM can be configured in a way that working hours are tracked and booked on tickets automatically. These bookings always refer to tickets and cannot be linked to projects.
The following times are registered:
Time booking is suspended when a ticket is transferred to the workspace and resumed when the ticket is brought back to the active work.
No times are booked on the ticket when ...
Times are always booked with minute-precision and are always rounded up to the next full minute.
In order to enable this functionality in your ConSol CM system, set the system property cmweb-server-adapter, automatic.booking.enabled to true.
Figure 494: ConSol CM Admin Tool - Set system property to switch on automatic time booking
The engineer does not have to do anything in particular to work with automatic time booking. When he enters a comment in a ticket or creates a ticket, the time is booked on this ticket automatically and can be seen in the time booking report on the engineer profile page. An example is shown in the following figure.
Figure 495: ConSol CM Web Client - Automatically booked time in time booking report on engineer profile page
If your company would like to be able to report at a more detailed level, the DWH provides a good basis. Reports can be developed that use the DWH data and provide, e.g., the times booked on a certain project by all engineers.
If the time booking feature is not required, you can turn off the feature by using the Page Customization, see section Page Customization for details.
The following two parameters are relevant in this context:
Starting with ConSol CM version 6.11, the CM API contains a method to retrieve the time intervals booked on a ticket. Use the following method of the object workflowApi.
Set<TimeBooking> getBookings(Ticket pTicket)
You can use this method in Admin Tool scripts and in workflow scripts. Please note that in Admin Tool scripts, the workflow context might not be available!
The following example shows a script which can be called from a workflow activity. You might want to write the code directly into the script or place it in an Admin Tool script which is called from the workflow. For details about this principle, please refer to the ConSol CM Process Designer Manual.
The script:
import com.consol.cmas.common.model.ticket.Ticket
import com.consol.cmas.common.model.time.TimeBooking
log.info 'Running script printTimeBookingsToTicket ...'
def ticket = workflowApi.ticket
def bookings = workflowApi.getBookings(ticket)
def eng
def per
def per_date
def per_time
def text = 'Booking info: \n'
if (bookings.size() > 0){
log.info 'Time bookings found in ticket ' + ticket.name
bookings.each() { bk ->
eng = bk.engineer.name
per = bk.timePeriod
per_date = per.bookingDate
per_time = per.bookedTime /1000 / 60 / 60
def text1 = 'Engineer: ' + eng + ', Date: ' + per_date + ', booked time: ' + per_time + 'hours'
text += text1 + '\n'
}
workflowApi.addTicketText(text, 'Time Booking report for this ticket', false)
} else {
workflowApi.addValidationError('INFO', 'No booking on this ticket.')
}
return
Code example 83: Admin Tool script, called from a workflow: all time intervals booked on the ticket are printed into the ticket history as comment
The output in the respective ticket: