Tip: Start typing in the input box for immediate search results.
-
Quick Start
-
- What is Fieldcode?
- Definitions
- What are tickets, projects and workflows?
- How to log in to Fieldcode
- What is the Fieldcode Support Panel?
- What are components?
- What are views?
- Ticket statuses and their meaning
- Ticket colors and their meaning
- Map symbols and their meaning
- Frequently Asked Questions
- Setting up Fieldcode
-
-
Release Notes
-
Short Overview
-
Fieldcode Work Place
-
-
- How to schedule tickets
- How to search for tickets
- How to expert-search for tickets
- How to filter for tickets
- How to grab/ungrab tickets
- How to link & unlink components together
- How to download ticket data as a excel sheet
- How to copy filters/queries for colleagues
- How to email filters/queries to colleagues
- How to assign/unassign tickets to partners
- How to manage spare parts
- How to show tickets on Map
- How to use the Clipboard
- How to open tickets in a new tab
- How to use container tickets
-
-
- How to use the Optimizer in the Timeline
- How to schedule tickets
- How to publish tickets to engineers from the Timeline
- How to lock/unlock tickets
- How to manually reschedule PUDOs
- How to show tickets on Map
- How to manage availabilities
- How to manage subgroups
- How to display an additional time zone
- How to move tickets back to the Ticket Pool
-
-
-
- How to use the Interaction buttons
- How to assign/unassign tickets to partners
- How to manage spare parts
- How to use the Workflow buttons
- How to use the Ticket info button
- How to use the Email button
- How to use the Comment button
- How to schedule tickets
- How to use the Remove Pending button
- How to cancel a ticket
-
Fieldcode Admin Panel
-
- What is the Process menu?
- What is the Workflows menu?
- How to create & edit projects
- Automated Actions in the overview
- How to setup custom Automated Actions
- How to setup pre-configured Automated Actions
- How to create & edit conditions
- How to create & edit indications
- How to set up email templates
- How to create & edit ticket durations
- How to create & edit custom fields
- How to create & edit custom forms
- How to create & edit value sets
- How to create & edit SLA Profiles
- How to move stuck tickets via Ticket Workflow Monitoring
-
- Articles coming soon
-
Fieldcode Mobile App
-
Fieldcode Customer Portal
How to use the Optimizer in the Timeline
Before using the Optimizer you may want to configure optimization behavior to your desired needs inside the Fieldcode Admin Panel -> Dispatch -> Groups.
How to use the Optimizer
- Select a dispatch group in the Timeline that you want to optimize.
- Click on the magic wand arrow.
- Select Optimize Now.
- Select the optimization interval.
Today: Optimizes the current day (takes into consideration the time from midnight to midnight).
Tomorrow: Optimizes the next day (takes into consideration the time from midnight to midnight for the next day).
Defined duration: Allows you to optimize an interval up to one week and can also be used to optimize just one particular day in the future (by picking eg. 26.01. to 26.01.) - Select which optimization parameters should be taken into consideration.
- Optimize All: All tickets from the Dispatch tab will get optimized.
Quick Optimization: All tickets from the Dispatch tab will get optimized with fast results.
Optimize Timeline: Only tickets that are already sitting in the Timeline will get optimized. - Click on Optimize Now.
- Wait for desired results.
(The Optimization results may improve with time passing.) - Click on Take Over.
- (Optional) Click on Minimize and Continue optimizing in the background (Optimization results may improve with time passing).




How to optimize today's Timeline
- Select a dispatch group in the Timeline that you want to optimize.
- Click on the magic wand arrow.
- Select Optimize Timeline.
- The tickets of today, only the ones placed on the Timeline, will be shuffled in best order by the Optimizer.
- The Optimizer Preview will appear.
- Click on Take Over to accept the optimization results.

Optimizer FAQ
The “Optimize” and “Optimize Timeline” buttons initiate the actual optimization process of tickets inside the Dispatch group or inside the Timeline.
Inside the Optimizer preview, you will see precisely what is currently happening to your tickets from the Dispatch tab or from the Timeline and you will see how they will be placed on the Timeline.
The Optimization is based on one of the three available Presets that are selectable inside Fieldcode Admin Panel -> Dispatch -> Service Delivery
Please also read the questions below in this FAQ to learn what each of the Presets means.
You will notice that tickets from the Ticket Pool inside the Dispatch tab will move to the Timeline.
The tickets auto-move to spots in the Timeline where it makes the most sense depending on the desired preset you select inside the Fieldcode Admin Panel.
The following tickets benefit from the Optimizer functionality:
- Tickets inside the Dispatch tab (ready for Dispatch)
- Tickets with the status APPOINTMENT.
- You will still have to schedule tickets with the end-user manually.
- Tickets within a 300 km range of the particular dispatch group area.
- Tickets outside a 300 km range, if they are already placed on the Timeline and unlocked.
The following tickets are excluded from the Optimizer functionality:
- Locked tickets are not affected by the Fieldcode Optimizer as you still should have the possibility to decide on certain tickets for yourself.
- Tickets with a proposed or fixed time in the past cannot get optimized.
- Tickets outside a 300 km range of the particular dispatch group area.
- Edge case: If a ticket contains a PUDO appointment and the PUDO appointment location is more than 300km away -> Ticket and appointment will get excluded
Most common reasons:
- You may not have the matching permissions granted.
Please contact your local admin, if you need permissions for the Optimizer. - Partner users are currently not able to use the Optimizer.
In this case, the “first come, first served” rule would apply.
- The second user would see the optimization results of the first user (after the optimization has finished).
- The second user would also be notified when the first user takes over the optimization results.
- Ongoing optimizations of a group are smartly displayed to other dispatchers.
In this case those new added tickets will move to the Dispatch tab.
You then have the possibility to run the optimizer again to get updated results.
Unlocked tickets may get sent back to the Ticket Pool due to new optimization potential.
The warning messages will teach you why particular tickets were ignored by the Optimizer and sent back to the Ticket Pool.
You should try to manually schedule them after the optimization or fix the reason and try to optimize again after fixing the reason.
The warning messages will teach you why particular tickets were ignored by the Optimizer and sent back to the Ticket Pool.
You should try to manually schedule them after the optimization or fix the reason and try to optimize again after fixing the reason.
The main goal of the Fieldcode Optimizer is to find smart ticket assignments taking into account company-relevant criteria like:
- Minimize spent time:
Use this setting if you are paying your workforce for their spent time per day. We will optimize the schedule to reduce driving times per engineer which might lead to a higher CO2 footprint - Reduce CO2 emissions:
We will optimize your workforce schedules to reduce the maximum amount of CO2. - Maximize engineer utilization:
This setting is recommended for organizations that want to maximize engineer utilization. Our optimizer will try to schedule as many tickets as possible per headcount which might leave engineers without any assignment for the day.
By tackling existing parameters inside Fieldcode such as:
- Working engineers
considering their locations
considering their availabilities
considering their skillset - Combined ticket challenges (Ticket challenges + PUDO challenges)
considering the end user’s location
considering the ticket lock status (time + engineer)
considering the ticket priorities (ticket scoring)
considering dependencies
considering availabilities - Time interval (Optimization interval) the user selects
- Track matrix
considering distances between the engineer and the tickets
considering durations between engineer and tickets - Algorithm parameters
considering Optimizer objective
considering the pc clock time
considering other relevant algorithm parameters
To fulfill the goals of the in the Fieldcode Admin Panel configured preset in the smartest and most personalized possible way.
Currently existing presets:
- Minimize spent time:
Use this setting if you are paying your workforce for their spent time per day. We will optimize the schedule to reduce driving times per engineer which might lead to a higher CO2 footprint - Reduce CO2 emissions:
We will optimize your workforce schedules to reduce the maximum amount of CO2. - Maximize engineer utilization:
This setting is recommended for organizations that want to maximize engineer utilization. Our optimizer will try to schedule as many tickets as possible per headcount which might leave engineers without any assignment for the day.
The Optimizer operation is dependent on the Optimizer interval first. After that, it starts taking location constraints into account. A location constraint consists of various dependencies such as driving times, absent times, idle times, and more. All these factors are considered for an efficient route calculation for tickets that will be optimized. Location constraints help to define the ticket order.
The Fieldcode Optimizer tries to schedule the optimal calendar for the overall group and not just individual tickets. The complexity exponentially grows with more engineers and more stops on the route (e.g. customer appointments and PUDO visits).
Our sophisticated algorithm is able to handle engineer data, ticket data (including PUDOS), optimization intervals, track matrices,
and a lot more variables in future.
The following results are to be expected:
- Minimized transport efforts. Considering driving durations, driving distances, idle times, etc. pp
- Best engineer availabilities for the tickets are considered
- Matching skills between engineer and ticket are considered
- Nearby engineer location is considered for the tickets
- LSDT/ETA of the ticket is observed
- Tickets with priority get scheduled faster
- Other dependencies that are considered
You will notice a green message on top of the Scheduling Assistant telling you that the real-time recommendations were already active.
Chips that are highlighted display the best option for the particular ticket.
Selecting the suggested day, time, and engineer preferences means picking the smartest choice for this particular ticket.
How to Undo the current optimization
- Click on the expand arrow right next to the magic wand.
- Click on Undo Optimize Now.
- Confirm the upcoming security prompt with Undo.
Be advised that manual changes to tickets after the Optimization will also be affected by the Undo Optimization since they were technically part of the Optimization process.
Be advised that undone tickets may not immediately appear on the Timeline.
Please do a refresh of the page in this case to ensure all of them are displayed in the Dispatch tab again (CTRL + F5).

Undo Optimize FAQ
The Undo optimization button becomes available after a so-called “snapshot” has been taken by the Optimizer.
The snapshot will save ticket and PUDO appointments from the Timeline which were inside the last optimization interval.
Furthermore the snapshot contains every ticket from the Ticket Pool which hasn’t been filtered out with some previously determined optimizer configuration
(like eg, projectId, timelineOnly, etc.), and already existing tickets, that were already in the queue, when the optimization started.
Currently excluded from the snapshot: Container tickets and published ticket/PUDO appointments.
When a optimization is taken over and the changes appear on the Timeline the Undo Optimization button gets available for usage.
If the Undo Optimization button is pushed, the Optimization will revert to that previously created “snapshot” status including manual actions.
When a snapshot is restored the previous appointments are restored. The snapshot creation time is not relevant.
Exception: If there are PUBLISHED tickets on the tickets the whole snapshot cannot be restored.
The following fields are restored:
- Ticket appointment fields
Includes the following fields -> ticket, dispatchGroup, Resource, dispatchFrom, dispatchTo - PUDO appointment fields
Includes the following fields -> ticket, resource, pudo, item, from, to
Let’s assume the following circumstances are given:
- Optimization interval:
2023-03-14 (23:00 PM) to 2023-03-16 (23:00 PM) - Engineers affected:
E1, E2 - Tickets on Timeline:
CNI: 1 on E1 at 2023-03-15 (12:00 PM) (Ticket duration: 1 hour) and
CNI: 2 on E2 at 2023-03-16 (11:00 AM) (Ticket duration: 1 hour)
and a PUDO for CNI:2 on E2 at 2023-03-16 (10:00 AM) - Tickets in Ticket Pool:
CNI: 3, 4, 5, 6, 7, 8, 9, 10
- The user starts the Optimization for all tickets (no tickets were filtered out).
- The user takes over the optimization.
-> The Optimizer creates the snapshot, CNI:1 and CNI:2 and the PUDO will have the engineer, and the from-to times set. The other tickets will have these fields empty. This is the original state before a TAKEOVER happens.
-> The Optimizer sends the appointments, but CNI:9 and CNI:10 have no appointments, because they do not fit on the Timeline for the optimization period, so they will remain in the Ticket Pool. - Time passes.
- Some user decides to Drag & Drop the CNI:10 on E1 on the 2023-03-17 (outside optimization interval!).
- Time passes.
- A new ticket is created, CNI: 11.
- Time passes.
- Some user decides to Drag & Drop the CNI:11 on E2 on the 2023-03-17.
- Time passes.
- The UNDO optimization button is pushed.
->If no other tickets were published in the meantime of the snapshot (CNI:1,2,3,4,5,6,7,8,9,10), the tickets will be resent to the ORIGINAL status. Every ticket movement of the tickets (CNI 1-10) will be included.
-> The manually dragged and dropped ticket CNI:10 will go back to the Ticket Pool as if it was automatically locked by the drag and drop.
-> It is not relevant if the original appointments were in the past.
-> CNI:11 will be untouched because it is not part of the snapshot.
You are still able to revert the optimization in this case.
However, you may notice that manually changing the LSDT is not possible in this case.
Therefore we suggest moving the ticket manually back to the Ticket Pool before undoing the whole optimization and then change the LSDT after wards.
If you now optimize the ticket with the updated LSDT again, the new LSDT will taken into consideration again (also if the LSDT lays in the past).
If you undo the optimization, the tickets move back to the Ticket Pool to the last “snapshot” status.
The Undo optimization button is available for the following use cases:
- After any successful optimization takeover
- After a successful optimization takeover is overwritten by a new takeover
- Restoring a snapshot will delete the snapshot
- Anytime, except at least one ticket inside the interval gets PUBLISHED
- All users have the permissions to UNDO optimizations by default
- The ticket has not been included in the optimization, therefore no optimization effect would be visible for the ticket.
- If the ticket is involved, and somebody even decided to lock it/cancel appointment/create a new ticket the original one will be restored, if no ticket has been published meanwhile.
In this case those new added tickets will move to the Dispatch tab.
You then have the possibility to run the optimizer again to get updated results.
Unlocked tickets may get sent back to the Ticket Pool due to new optimization potential.
Yes, that’s possible if the following circumstances apply:
- The snapshot contains past dates
The ticket appointments and PUDO appointments which were included in the snapshot will be reverted to the last snapshot. Other tickets won’t be reverted.
It is important to understand that appointments (PUDO/Ticket) are reverted and not full days.
Concrete examples:
- The user optimizes a two-day interval, tickets are already on the Timeline for those two days:
-> After the Optimizer took over, everything moves to the first day -> the snapshot stores the original appointments ->tickets will move some appointments to the second day, and some appointments to the first day. - A new ticket comes in:
-> User moves ticket to the second day by Drag & Drop (at that time the second day is totally clear, because the Optimizer moved everything to the first day) -> Snapshot gets restored -> Every ticket gets put back to ORIGINAL place -> As the new ticket was not part of the snapshot it may cause overlapping issues -> please take care of those tickets manually in this case.