Work Order
Work Orders form the interface between planning, project management, and billing of services. They enable detailed work in Business Central and the seamless integration of complex, hierarchical task structures (such as Atlassian Jira and Azure DevOps) into precise and customer-friendly invoicing.
A Work Order in DYCE serves as a central document that organizes the entire lifecycle of a task and answers the fundamental questions of What, Who, For Whom, as well as detailed information such as estimated effort, type, and budget assignment. Work Orders can be created and managed in external systems such as Atlassian Jira and Azure DevOps. This section of the documentation focuses on working within Project Billing, Business Central, and DYCE Connect in the broader sense.
Typical examples of a Work Order:
- Conducting a workshop or training session
- Conception and development of a user story
- Recording and resolving a bug
- Installation of hardware or software
- Performing maintenance work
How Work Orders are used depends heavily on the intended process. The general recommendation is to work as broadly as possible and as granularly as necessary, in order to keep the overhead from administration and management low. The granularity of tasks in implementation projects, for example, depends heavily on the process. Should workshops be one Work Order with a Work Order Event for each appointment, or should one Work Order per workshop be required? When designing the process, consideration should be given to how tasks should be planned, divided, and above all billed.
Structure of a Work Order
Work Orders are versatile and flexible. The following describes configuration options and how they can be used for different processes. The Work Order card is divided into several areas. All contain relevant information for the execution and billing of a Work Order.
1. Details and Hierarchy (For Whom)
These details define For Whom the work is performed and how it is organized. A service is always provided by a resource for a customer and a project (even for internal activities).
- Title: A short, concise headline.
- Customer Name: Name of the customer for whom the service is performed (sold to).
- Project Description: The assignment to a project, in which the budgets and services are summarized. Time Recordings for the Work Order must use the project.
- Budget Type: Indicates the degree of freedom for Time Recordings with the options Open (default) and Project.
- Open: The Budget Type allows maximum flexibility. If no customer or project is entered in the Work Order (e.g., for new tickets), these are filled by the first Time Recording with a customer and project. The Budget Type allows the user to freely select project tasks and project planning lines in the Time Recording. Work Order Lines are automatically created to facilitate approval and billing. This option is particularly useful for tickets and collectors where the type of service/Time Recording should not be restricted.
- Project: Restricts the selection in the Time Recording to the project tasks and project planning lines used in the budget lines. This option is used when the budget to be used is determined by a project manager (e.g., workshops, customer-specific developments in connection with an order).
- Billing Work Order No.: Tools such as Jira or Azure DevOps use complex hierarchies (Feature >> User Story >> Task). Project Billing in Business Central consolidates these into two levels to simplify billing:
- Billing Work Order: The Work Order known to the customer typically serves as the Billing Work Order. During approval and billing, the Time Recordings are aggregated to this Work Order. This means that the Time Recordings of the Sub-Work Orders are displayed in the Billing Work Order during approval.
- Sub-Work Order: All Work Orders that use a different Work Order No. in Billing Work Order No. instead of themselves. They serve internal organization and subdivision (e.g., development and code review for a customer development). Sub-Work Orders are not printed separately in invoices.
- Assignment: A Work Order is assigned to another as a Sub-Work Order by selecting the Billing Work Order in Billing Work Order No. in the Sub-Work Order.
- IsBilling (Billing Work Order): If the Work Order uses itself as the Billing Work Order, the IsBilling flag = Yes. Otherwise it is No. The flag can be used via the page inspection to filter. In the Work Order list, it can be filtered by this flag.
2. Documentation and Description (What)
These details define the What of the task. This primarily includes various types of texts (e.g., title and description) that describe the task.
- Description: A detailed description of the work to be done or the problem statement.
- Internal Notes: Notes for internal use, visible only to users. Hints, checklists, and other information that do not contribute to the description of the matter but offer situational added value are preferably stored here. For example, changes requested by the customer can be recorded and quickly found if needed.
- Solution: Description of the solution, measures taken, etc. The description of the solution should correspond to the actually implemented solution. Otherwise, it will be difficult to trace later.
The working method of Jira and Azure DevOps is partly based on hierarchy. Working with multiple levels in Business Central (without Jira or Azure DevOps) is possible, but potentially results in higher organizational overhead.
3. Planning and Effort (When & Who)
These properties define the When, By Whom, and the expected effort. A Work Order can be provided with a concrete deployment schedule (Events), which function similarly to appointments: a person completes a task at a specific point in time.
- Resource Name: The employee responsible for execution. To ensure clear accountability, only one resource can be assigned.
- Events: One or more appointments for execution. Events are opened via the Events menu item in the Work Order. Only resources with the Plannable flag can be planned.
- Original Estimate: The estimated time required (in hours or days).
- Remaining Estimate: The remaining time required (in hours or days).
- Completed: The current status of the Work Order. The Completed status can be set automatically and used as a filter in Project Billing Approval.
- Locked: Prevents the creation of new Time Recordings for the Work Order.
- Guardrail: Users cannot create new Time Recordings for this Work Order.
- Flexibility: Existing Time Recordings can still be modified, approved, and posted. This is ideal for phases where the work is finished but the recorded times still need to be cleaned up.
- Location: The physical or virtual location where the work is performed.
- Type: A classification of the Work Order (e.g., Story, Task, Bug, Maintenance, Installation, Support Request). Distinguishing Work Orders by type provides the opportunity to differentiate them in planning and billing.
We recommend at least distinguishing between Work Orders that are approved and invoiced periodically at month-end and those approved and invoiced upon completion. During approval, filtering by type makes the process more efficient.
- Area: A classification of the Work Order.
- Sprint: Specification of the sprint.
In Project Setup on the Work Order tab, the display format for Original Estimate and Remaining Estimate is configured.
- Hour: Entered numbers are interpreted and displayed as hours.
- Day: Entered numbers are interpreted and displayed as days.
- Dynamic: Displays hours and automatically switches to days when the quantity exceeds hours per day. The input supports the abbreviations h and d.
Only one resource is always assigned to a Work Order. This resource bears responsibility for the task. If multiple people were assigned, it would not be clear who is responsible. Furthermore, Jira and Azure DevOps also only support one assigned resource by default.
Additional resources can be scheduled for a Work Order over time via Work Order Events.
4. Work Order Lines
Work Order Lines allow flexible and easy work on tasks, while automatically ensuring in the background that every minute worked is immediately assigned to the correct budget and billed as quickly as possible. They link the Work Order to project planning lines of the line type Budget and define how Time Recordings are recorded and billed. The fundamental rules can be read here.
4.1. Creating Work Order Lines
Work Order Lines are created manually using the Add Lines from Project Planning Lines action on the Lines tab of the Work Order card. This opens the Create Lines page. Select the desired project planning lines and confirm with Ok. Without a project or a budget project planning line in the project, no Work Order Line can be created.
- Multi-Line Selection: The Create Lines page allows the selection of multiple project planning lines and the creation of Work Order Lines.
- No Duplicate Project Planning Lines: The same Budget project planning line cannot be created twice as a Work Order Line in one Work Order. This simplifies time recording because it is sufficient to select a Work Order and planning line in the Time Recording to identify the Work Order Line.
- Automatically Created Work Order Lines: In Time Recordings with a Work Order (Budget Type = Open), the project tasks and planning lines for which a Work Order Line exists are highlighted in the lookup. If the user selects a project task and planning line for which no Work Order Line exists, one is automatically created. The Open Budget Type is particularly useful for reactive tasks. In a new ticket, no Work Order Lines may have been created yet. Because they are created directly when Time Recordings are created, all data for approval and billing is automatically available without any user intervention.
- The Billing Work Order Contains the Master Set: In the Billing Work Order, new Work Order Lines can be created to connect budget from project planning lines to the Work Order. Sub-Work Orders can only be assigned Work Order Lines from the Billing Work Order. A new budget/project planning line must always be created in the Billing Work Order before it can be assigned in a Sub-Work Order.
- Project of the Work Order: The project of the Work Order Line does not have to be the same as that of the Work Order. If, for example, the wrong project was initially selected and lines and Time Recordings already exist, the project must be changed, the Time Recordings moved, and new Work Order Lines created. Before the Time Recordings are moved and the old lines deleted, they have a different project than the Work Order (applies to both Budget Types).
- Billing Types: The billing types Time & Material, Budget, and Fixed Price are taken from the Budget project planning line.
- Activity: The activity can be entered in the Work Order Line but serves only as a default value for Time Recordings. The user is always free to change the activity in the Time Recording.
4.2. Time Recordings with Work Order Lines
It is not possible to select Work Order Lines in the entry mask of Time Recordings. The assignment works via the selection of the Work Order No. and project planning line No. (e.g., via the activity). If there is only one Work Order Line with billing type Time & Material, Budget, or Fixed Price, the Time Recording is automatically completed when the Work Order is entered. The Budget Type in the Work Order defines some rules for the Time Recording.
- Budget Type Project: Work Orders with the Budget Type Project restrict the selection in the Time Recording.
- If the Work Order has a customer and project, these are automatically completed in the Time Recording.
- If there is only one Work Order Line, the project task and planning line with billing type Time & Material, Budget, or Fixed Price is automatically completed in the Time Recording.
- Work Orders with the Budget Type Project do not allow project tasks and planning lines to be selected in Time Recordings for which no Work Order Line exists.
- If the Work Order is not the Billing Work Order (has another Work Order entered in Billing Work Order) and has no own Work Order Line, all Work Order Lines of the Billing Work Order can be used in Time Recordings. For example, the Work Order Line for a Workshops task is created in the task. No lines need to be created in the Sub-Work Orders that plan the individual workshops.
- If the Work Order is not the Billing Work Order and has at least one own Work Order Line, Time Recordings for this Work Order can only use these Work Order Lines. By the act of assignment, the selection in the Time Recording is restricted. This minimizes the administrative effort for assigning Work Order Lines to Sub-Work Orders. It is only necessary when the selection is to be explicitly restricted. For a software change with Sub-Work Orders "Development", "Code Review", and "Consulting Test" with 2 Work Order Lines (Development and Consulting), the selection for the time recorder can be meaningfully restricted by assigning Work Order Lines to the Sub-Work Order.
- Budget Type Open: The Open Budget Type gives the time recorder significantly more freedom. The UI and lookups guide the time recorder, but they can override the suggestions at any time.
- The first Time Recording with a customer and project fills these in the Work Order.
- If the Work Order has a customer and project, these are automatically completed in the Time Recording.
- If there is only one Work Order Line, the project task and planning line is automatically completed in the Time Recording.
- Time Recordings for Work Orders with Budget Type Open are not restricted to the project tasks and planning lines from the Work Order Lines. The user can select other project tasks and planning lines. The project tasks and planning lines for which Work Order Lines exist are highlighted.
- If a new project planning line is selected in the Time Recording, a Work Order Line is automatically created for it.
- The Open Budget Type also allows the user to select a different customer and project. The Work Order No. lookup in the Time Recording only shows Work Orders with the same project, but the field does not prevent the entry of a different Work Order. Additionally, the customer and project can be changed after the Work Order is entered.
Surcharges follow the same logic. They create Work Order Lines for Work Orders with Budget Type Open, and Budget Type Project restricts the selection to the project planning lines for which a Work Order Line exists. A notable difference is that the surcharge is not automatically entered in the Time Recording when there is only one Work Order Line. The time recorder has not automatically travelled just because there is a corresponding Work Order Line.
4.3. Reserving and Key Figures
Work Order Lines are essentially only connections to a Budget project planning line. The quantity in the project planning line can be distributed between Work Orders. With reservation, Work Order Lines have exclusive access to the reserved quantity, and the reserved quantity is used for the calculation of key figures and the approval of Time Recordings.
- Reserved Quantity: Specifies the quantity exclusively reserved for the Work Order. If a quantity is reserved, other Work Order Lines cannot use that part of the budget for invoicing. Except for the billing type Time & Material, no more than the reserved quantity can be billed.
Note: More than the available quantity in the Budget project planning line can be reserved. However, the over-reservation cannot be billed as long as the quantity in the planning line has not been increased. This makes it possible to distribute budget before it has been formally increased in the order and project planning line. The Reserved Quantity and quantity for project planning lines/Work Order Lines with billing type Time & Material increases automatically when Time Recordings are posted. - Quantity Available for Reservation: Specifies the quantity that can still be reserved. The calculation takes into account posted and invoiced quantities and reserved quantities, but not open Time Recordings.
- Unit Code: Specifies the unit used.
- Remaining Budget: Specifies the quantity that can still be posted. Quantities reserved in other Work Orders that have not yet been posted can still be posted. It is calculated by subtracting the invoiced and still-to-be-invoiced quantities (incl. project planning lines (billable) and quantities to be invoiced in Work Order Lines and project planning lines) from the quantity of the Budget project planning line. Open Time Recordings are not taken into account in the calculation.
- Quantity Billable Open: Calculated from the sum of the billable duration of Time Recordings for the Work Order with the Budget project planning line with status Open.
- Original Quantity: Specifies the initially entered quantity in Reserved Quantity. This field is not automatically updated, in order to track which budget was originally reserved in the case of budget increases (e.g., billing Time & Material).
Work Order Lines can be used without a reservation. If there are multiple Work Order Lines without a reservation, they "share" the quantity from the Budget project planning line. During approval of Time Recordings, first come first served applies, meaning that the first approved Time Recording occupies the budget/quantity definitively. If there is no explicit reason to reserve a quantity for the Work Order, it is simpler and less effort to make no reservation.
5. Origin
The Origin tab records where the Work Order was created. None of the fields are editable. If the Work Order was created in Business Central or DYCE Connect, DYCE is automatically entered in Origin. If the Work Order was created in Jira or Azure DevOps, Origin, Organization (external), and Project (external) reflect this. The Link points either to the Work Order in the external tool or in DYCE Project & Resource Planning.
If DYCE is entered in Origin, all fields can be edited as described above. If DYCE is not entered in Origin, some fields cannot be edited. This prevents the data in the external tool and Business Central from diverging.
All content related to billing can always be edited in BC:
- Customer
- Project
- Billing Work Order No.
- Work Order Lines
- Completed
- Locked
- Planned
- Location
Changes to these fields cannot be reliably transferred to the external tool. Please take this into account when importing Work Orders via an API or other means.
Work Order Events
For scheduling work in the form of concrete appointments with date and time, so-called Events (appointments) can be created for each Work Order.
As soon as an event is created for a resource, the Work Order appears in DYCE Time Tracking in the list of Tasks for the planned resource.
DYCE Project & Resource Planning facilitates the planning of multiple resources on any Work Order in a functional and clear graphical interface, the Work Order Calendar.
Status (external)
For services, billing usually depends on the progress of work. The Status (external) reflects the current state of the task and is synchronized (e.g., from Jira) to Connect and Business Central. Based on the Work Order Type and its status, the system automatically controls whether new Time Recordings can be created and when a Work Order is flagged as ready for invoicing. If a new status is used in Jira that does not yet exist in Business Central, the system creates it automatically during synchronization. The Status (external) can only be changed in Business Central if the origin is DYCE (i.e., the Work Order was not created in an external tool).
Configuration: Status (external) Actions
To automate your workflow, define rules on the Status (external) Actions page. This tells Business Central how to react to a specific status from Jira.
Step 1: Accessing the Configuration
There are two ways to reach the setup:
- Via Search: Search for Status (external) Actions using the "magnifying glass" icon (Alt+Q).
- Via Type (Work Order): Go to the Type (Work Order) page. You will see a new column called Status (external) Actions showing a count (e.g., 0). Click on the number to open the configuration filtered for that specific type.
Step 2: Creating a New Mapping
Click New on the Status (external) Actions page to create a rule:
- Status (external): Select the status name from your external tool (e.g., "Done" or "Resolved").
- Type (Work Order): Select the type to which this rule applies (e.g., "Bug").
- Locked: Activate this checkbox if you want to prevent users from creating new Time Recordings once this status is reached.
- Completed: Activate this checkbox if the Work Order should be considered "ready for billing" when it reaches this status.
| Status (external) | Type (Work Order) | Locked | Completed |
|---|---|---|---|
| Resolved | Bug | Yes | No |
| Closed | Bug | Yes | Yes |
| Done | User Story | Yes | Yes |
| Cancelled | (Empty) | Yes | Yes |
Key Rules:
- Type + Status: You can define different behaviors for different types (e.g., a "Resolved" bug might lock the creation of new Time Recordings, but not yet be set to Completed for billing, because it still needs to be shipped first).
- Global Rules: If you leave the Type empty, the rule applies to all Work Orders where Type (Work Order) is also empty. This means you are not forced to use a type if no external system is used.
- Trigger: The flags are updated the moment the status changes via synchronization or manual entry.
The "Locked" Flag
When a Work Order is marked as "Locked":
- Guardrail: Users cannot create new Time Recordings for this Work Order.
- Flexibility: Existing Time Recordings can still be modified, approved, and posted. This is ideal for phases where the work is finished but the recorded times still need to be cleaned up.
The "Completed" Flag
This flag indicates that the work is finished from a functional perspective. It is a primary filter in Project Billing (Approval) to identify Work Orders ready for final invoicing.
- Manual overrides: Even if the automation sets a flag, you can still uncheck it manually on the Work Order card if you need to allow a late Time Recording.
- Removing flags: The automation can set a flag and also remove it via a different status (e.g., a "Rework" status should clear the Locked and Completed flags).
- Deletion: If you delete a mapping rule, existing Work Orders retain their current flags. However, future status changes to that specific status will no longer trigger automatic updates.
Key Rules:
- Type + Status: You can define different behaviors for different types (e.g., a "Resolved" bug might lock the creation of new Time Recordings, but not yet be set to Completed for billing, because it still needs to be shipped first).
- Global Rules: If you leave the Type empty, the rule applies to all Work Orders where Type (Work Order) is also empty. This means you are not forced to use a type if no external system is used.
- Trigger: The flags are updated the moment the status changes via synchronization or manual entry.
The Locked Flag
When a Work Order is marked as Locked:
- Guardrail: Users cannot create new Time Recordings for this Work Order.
- Flexibility: Existing Time Recordings can still be modified, approved, and posted. This is ideal for phases where the work is finished but the recorded times still need to be cleaned up.
The Completed Flag
This flag indicates that the work is finished from a functional perspective. It is a primary filter in Project Billing (Approval) to identify Work Orders ready for final invoicing.
- Manual overrides: Even if the automation sets a flag, you can still uncheck it manually on the Work Order card if you need to allow a late Time Recording.
- Removing flags: The automation can set a flag and also remove it via a different status (e.g., a "Rework" status should clear the Locked and Completed flags).
- Deletion: If you delete a mapping rule, existing Work Orders retain their current flags. However, future status changes to that specific status will no longer trigger automatic updates.