Files
raven/docs/8.0/ayanova/docs/svc-workorders.md
2022-02-03 22:25:54 +00:00

28 KiB

Work orders

The Work order form is used to schedule and record services provided to a Customer.

Work order structure

Work order structure

A work order in AyaNova is a tree-like structure with a Header section at the top and a collection of one or more work order items below the header.

Each work order item in turn can optionally contain any one of 9 different types of service related "grand child" objects such as collections of zero or more Parts, zero or more Labor items etc.

The work order interface is designed so that different types of items can be added if required or left out if not used. For example, if you do not have Expenses or Travel to track they can be left out and will not appear anywhere on the work order.

A work order can be as simple:

Work order structure simple

or as complex as required:

Work order structure complex

User interface work order structure

The user interface mirrors the logical structure of a work order with a single header section at the top, a collection of one or more work order items below the header and within each work order item collections of optional service related objects such as parts, expenses etc.

Walk-through: creating a work order

Let's walk through creating a simple work order:

Create new work order

From the Service -> Work orders data table click on the new button + at the top to create a new work order

Work order walkthrough 1

A new empty work order form opens ready to start filling in:

Work order walkthrough 2

The only required field on a Work order is the Customer and it's empty right now so the Customer list field is showing a validation error, a red title and warning message explaining the error below the Customer autocomplete list.

You can't see it in the image but when the form is in an invalid state the save button is disabled until the issues are corrected as it would simply be rejected by the server if it was saved as it contains broken validation rules.

Let's fix the broken rule by selecting a Customer:

We want the Customer "XYZ Accounting" so we'll click into the Customers autocomplete list and type "xyz" to search for any Customers with those letters in their name:

Work order walkthrough 3

Since there is only one customer with XYZ in it's name, only one search result came back and is displayed in the list below the autocomplete control. If there were multiple matches, up to 100 of them at a time would be displayed in the results list.

(There are many ways to search and use the autocomplete list control to speed up entry, all documented in the autocomplete list help page)

You'll notice in the image that there are some Tags ("black, green") also showing with the customer name, this is because we've customize the Customer autocomplete list template to also use Tags for searching and selection. You can change this to include multiple fields as required from the Customer object.

We're using a desktop computer with a keyboard here and don't want to take our hands off the keyboard to select with a mouse so we'll press the down arrow to highlight the result "XYZ Accounting..." and press enter to select it:

Work order walkthrough 4

The Customer is now selected as required by the form validation rules and it no longer displays a red validation error message.

Saving the work order

This is a good time to save the Work order to the server.

Currently, you can see it hasn't been saved yet as it does not have a work order serial number displayed and the URL bar shows it's internal record id is zero meaning it has no server provided ID number yet and only exists here in the browser.

Work order walkthrough 5

It's good practice to save forms early and often as you work in them because until they are saved, the changes only exist in your browser if something should go wrong at your end with your browser or connection to the network changes made since the last save could be lost.

Let's click on save now:

Work order walkthrough 6

This action submits the form to the AyaNova server where it will validate the work order to check for any errors or broken business rules. If errors are found it will not save the record but instead return a list of one or more validation errors to the User to correct the problems. If no errors are found it will update the object in the database.

In this case there are no errors and so a new work order record is created in the database and the server returns a copy of the work order back to the browser. The reason it returns a copy of the work order is because it has itself made some changes to the work order.

AyaNova has assigned this new work order and internal ID number of 104 which you can see in the URL bar which has changed from record 0 to record 104:

Work order walkthrough 7

Also you can see in the image that this browser tab now shows the work order serial number assigned which is also 104. This is the page title in the browser and makes it easier to see what record is open in a operating system task bar.

This URL in the web browser is a complete link to this exact work order record in AyaNova so, like any page in AyaNova you can bookmark in your browser this record if desired or send the url link to another User to open this same record (provided they have the rights to do so).

In addition to the record id in the URL, the work order serial number 104 is now displayed in the work order form app bar:

Work order walkthrough 8

The work order serial number and it's record id are actually two completely seperate things. The record Id will not necessarily be the same as the work order serial number, it's just worked out that way as the work order serial number automatic starting seed number has not been changed so record 1 was also serial number 1 etc.

Aside from the work order number the Server has also made some other changes to this work order for us.

Automatic work order changes

Because this work order is new and the Customer has been set, AyaNova was able to fill in some fields automatically based on the selected Customer.

Address

The server has automatically populated the Work order Address field from the Customer record. A work order keeps it's own copy of the Address to preserve the historical record if a Customer's address should later change and also a Work order may have it's own address distinct from the Customer for several reasons such as billing going to a Head office or servicing a Unit that has it's own address or no address at all, just GPS co-ordinates.

Work order walkthrough 9

You can edit this address or change it at any time.

Summary

This optional field is a summary of the work to be performed overall. This field is intended to be viewed by the service technician and is displayed at the top of the stock "Service dispatch" report. Some shops work from the user interface directly on mobile devices, some print out dispatch reports to hand to technicians.

Here we'll describe the overall problem:

Work order walkthrough 13

This is a simple work order so we'll leave the other fields in the header empty as we won't be needing them for this job.

Next up is to create a new Work order item to specify the equipment to be serviced and to schedule a service technician:

Work order item

Currently our work order only has a Header, there are no work order items so let's add one now. Work order items are added from the Items context menu:

Work order walkthrough 14

Because there are no existing items there is only one option:

Work order walkthrough 15

Click on it to create the new work order item:

Work order walkthrough 16

In the image above, the form has changed to display the work order items table and the current (only) work order item's edit fields are displayed under the table.

If there was more than one work order item they would also display in the table and clicking on the row would change the edit form fields to that work order item record.

Here we can see that the Summary field is required and needs to be filled in. Unlike the header summary field this one applies to this work order item only and it does display on stock reports intended for Customers such as the Customer Invoice and Customer Work order reports.

If this was a larger work order with multiple work order items then each separate aspect of service would be documented on each work order item independently. For such a simple work order there isn't much need to enter more than the same duplicate information from the header summary.

Next up is to select the exact Customer Unit that requires service as this particular work is to repair an item of equipment that we track in AyaNova:

Select a Work order item Unit

Now that we have a work order item the Work order item context menu will be able to offer all the different types of objects that can be added to this item. Clicking on it again reveals a much larger set of items:

Work order walkthrough 17

All of these items are optional and none of them will appear on the work order form unless that type of object is added.

Because we are intended to service a specific piece of equipment owned by the Customer and we want to keep track of it in AyaNova we will add this Unit to be serviced to the work order so we'll click on the Work order item unit option in Add section of the menu.

Work order walkthrough 18

A new, empty Work order item Unit record is now added to the work order and as we can see it requires a Unit to be selected. This list contains all the Units previously entered for the selected Customer.

We'll go ahead and select a Unit and also save the Work order again since we've added a few things now.

Work order walkthrough 19

The Unit has been added and some desriptive information about it is displayed in the work order item Units table. The other fields here in the work order item Unit record are optional, (we could even hide them if we don't need them). Nothing more needs to be done here so we'll now schedule a service technician to do the work.

Schedule a service technician

A service technician is scheduled on a work order by adding a work order item scheduleable user record so we'll go back to the Work order item context menu again and select to add a scheduled User to this work order item:

Work order walkthrough 20

A new, empty Work order item Scheduled User record is now added to the work order.

Work order walkthrough 21

We'll go ahead and select the service technician we want to assign this work to, set a date and time for service and pick a suggested service rate.

Work order walkthrough 22

Once we save this work order, Lamar the technician selected will see this item appear in their personal schedule form and it will also appear on the Service schedule form that shows all scheduled technicians for overall service management.

At this point the work order is completed for scheduling purposes.

Once the Unit is serviced by Lamar, he will fill out the billable details in the work order by creating a Work order item Labor record. AyaNova has a shortcut to save time - the Scheduled user record can be turned into a Labor record with a click from the Scheduled Users area context menu:

Work order walkthrough 23

The Convert to labor menu item creates a new work order item Labor record, adds it to the current work order item and copies the details from the Scheduled user record:

Work order walkthrough 24

All that remains to be done here is for Lamar to optionally enter the details of the work he has done in the Service details field which will display on the various reports and be recorded for future reference.

At this point this work order is completed and ready for invoicing.

00000000000000000000000000000000000000

How to use collections

From the work order item level down all items are collections that display as a single edit form when there is only one in the collection or as a table when there are multiple items in that collection.

For example, if there is a single work order item there is no need to take up space showing a table of one item so it displays as a single edit form area showing the fields of the work order item. However, if there are two or more work order items then a table displays showing each work order item in a row and clicking on a row opens the edit form area below the table so that particular row can be edited.

This pattern is used for all the collections below the header so that the simplest possible interface is shown at all times.

Header

Work order header

A work order has a single Header section which contains information and fields related to the entire work order.

Work Order Items

Work order items

The items section of a work order is displayed as a table with an edit form below and can have one to many separate Work order Items.

Clicking on a row (or adding a new one) will cause the work order item edit form to display below the table for the particular work order item selected.

Authorization Roles required

This form is available to User's with the following roles:

Full access

  • Accounting
  • Business administration
  • Service manager
  • Service technician

Limited edit access

  • Service technician - restricted
  • Subcontractor
  • Subcontractor - restricted

Read only access

  • Business administration - restricted
  • Service manager - restricted
  • Sales
  • Sales - restricted

Limited access User rights

Service technician - restricted

Accessing a work order

This type of User does not have access to the Service section of the navigation pane so they can only access work orders from their own personal schedule when they are scheduled on one.

Menu

Report, View on map and Help are the only options available in the menu to this user.

Header

View all the header fields at the top of the work order but can only change the Status.

hey will only see work order items if they are a scheduled User in that particular work order item.

How to access customers

Customers are accessed in the following ways:

  • From the Customers navigation pane Customers item to open the Customers data table
  • By clicking on the open record icon in any Customer autocomplete list on any other form where customers can be selected such as the Work order, Quote and Preventive Maintenance forms
  • From any data table column showing customers such as the Work order list

How customers work

00000000000000000000000000000000000000000000000000000000000000000000000000000000

Anatomy of a workorder

what each section is about

Make a new workorder from scratch separate page guide / walkthrough

How to add an item
how to add sub items

Inventory changes from v7 with new workorder system

  • No "Used in service", now Parts are consumed immediately from inventory when selected on workorder and saved
  • Work order item part records consume or return inventory immediately upon save or delete or changes
  • Serial numbers are likewise immediately consumed / returned to the pool upon edits to workorder item part records
  • A zero quantity part will be considered a "placeholder" and will neither affect inventory nor serial numbers until a quantity is entered and saved

Multiple Units note

  • Work order item Unit - Enter a single Unit only in the work order item units collection if intend to run reports tying other work order item sections to that unit (e.g. labor hours spent on that unit, parts used with that unit, etc). Entering more than one unit per work order item will make it difficult to match other work order item record types to a particular unit when reporting.

Add multiple units feature

  • In Work order item Units menu there is an "Add multiple units" option which allows the ability to search for Units by tag and / or restrict to a specific Customer only. This is a quick way to select and add many Units at once to a work order for those situations where that kind of service is common and it would be time consuming to have to manually add each Unit one by one.

  • Contracts are not automatically offered for selection when bulk adding multiple Units unlike a single Unit selection using the Unit pick list. If a Contract is desired when adding multiple Units it can be manually selected from the Contract pick list in the Work order header section.

  • Add multiple units not restricted to current work order Customer: unlike the normal single Unit selection feature which is restricted to the currently selected Customer's own Units only, the add multiple Units feature intentionally allows a User to select Units that do not belong to the currently selected Customer on the work order. This is to support some unusual requirements for certain companies who bulk service Units that are moved around between Customers regularly but are not treated as loaner or rental Units. For most companies leaving the Customer selection in the Add Multiple selection box which is automatically set to the current work order Customer will ensure only Units owned by that Customer are presented for selection.

Misc features of note to document in own sections

  • Add multiple units (how to select, note that can select by range with shift click for checkboxes etc)
  • Duplicate workorder
  • Erase entire section (goes with duplicate for cleaning unneeded items from source workorder)
  • Part assembly
  • Part request (how they are made and when)
  • Double booking prevention feature in global settings and how it works when scheduling users
  • "Age" - age is displayed in the workorders data tables as an optional column and is calculated at the moment it's displayed based on the date and time the work order was first created.
  • "Time to completion" is displayed in the work order data tables as an optional column and is set whenever a work order is set to a "Completed" status by subtracting the date and time the work order was initially created from the current date and time when the Completed status is saved. If a work order has a time to completion set but is changed to a status that is not a Completed type then it's time to completion is reset to empty. If a work order has an empty time to completion set and is changed to a status that is a Completed type then it's time to completion is set.
  • Work order item Expense and TotalCost field calcuations for LineTotalViz a. ChargeTotal + TaxPaid = LineTotalViz (user fills in ChargeTotal, user fills in TaxPaid, AyaNova figures out LineTotalViz) OR b. ChargeTotal + TaxAViz + TaxBViz = LineTotalViz (user fills in ChargeTotal, user selected a TaxCode, AyaNova populates the TaxAViz and TaxBVix and figures out LineTotalViz OR c. ChargeTotal + TaxPaid = TotalCost ( ALL three fields manually entered by the user - AyaNova still figures out LineTotalViz correctly because of a. above) NOTE: LineTotalViz IS NOT DERIVED from the TotalCost field in any way.

Work order Cost field visibility restrictions

  • Work orders can show Costs for various items on them but these costs are only displayed for a select few users:
    • Non staff user types (customer headoffice or subcontractor) can not see costs at all no matter what roles are set for them
    • WorkOrderItemParts costs: to see these costs, the user must have one of the following roles: InventoryRestricted, Inventory, BizAdmin (full), Accounting
    • WorkOrderItemLabor / WorkOrderItemTravel / WorkOrderItemLoan costs: user must have one of the following roles: ServiceRestricted, Service, BizAdmin (full), Accounting
    • Reporting convenience fields: fields are included on work order header report data to indicate which costs are hidden: HasPartCosts, HasTravelAndLaborRateCosts, HasLoanItemCosts
    • Costs to restricted users are not only hidden in work order user interface but are also sent as zeros in the data from the server
    • Cost restrictions also apply to reporting so a report with cost fields on it will show those values as zero if the current user is restricted from seeing costs

Low permission users

If a User is set to User type of Sub contractor or if they are a Service type user and are assigned the "Technician - Restricted" role then special limitations apply to them:

  • Service -> Work order list navigation pane area

    • These restricted Users are not shown the option of viewing the full work order list. They will access their work orders via their Home -> Schedule form
  • Work order main menu

    • limited to Report, Save and Help options only
  • Work order / work order items can not be created or deleted

  • Work order Item restrictions

    • These restricted Users will only be able to access the Work order Items for which they are Scheduled in the work order editing form. In other words if you do not want a Sub contractor or tech - restricted user to see parts of a Work order do not add them to the Scheduled users collection on those work order items
    • Reporting convenience field: IsCompleteRecord field is included with the report header data to indicate if any items were removed due to restricted user
    • No fields available in Work order item section other than to view but not edit the Sequence, Summary and Technotes fields
  • "Tech - Limited" User role specific restrictions

    • All restrictions listed above in Work order Item restrictions plus:
    • All work order header fields visible but not editable other than work order status which has a separately configurable role restriction setting (including attachments, wiki and tags)
    • Form main menu items available: none except for Report which has a separately configurable role restriction setting
    • Tasks: view and edit existing tasks, set completion type and date only, no add or remove or changing other fields
    • Scheduled Users: view only where they are the selected User and convert to labor record
    • Labors: add (no user selection defaults to themselves), remove, view and edit only when they are the selected User
    • Travels: add (no user selection defaults to themselves), remove, view and edit only when they are the selected User
    • Units: view only and limited to fields to identify unit
    • Parts: view only and limited to fields to identify part
    • Part requests: view only
    • Expenses: add (no user selection defaults to themselves), view, partial fields available to edit or delete only where they are the selected user and only edit fields Summary, Cost, Tax paid, Description
    • Loans: view only and limited fields to identify unit and dates
    • Outside services: Not available
  • "Sub contractor" User type user role specific restrictions

    • All restrictions listed above in Work order Item restrictions plus:
    • No work order header fields visible except for Customer name, Customer contact name and service address
    • Form main menu items available: none except for Report which has a separately configurable role restriction setting
    • Tasks: view and edit existing tasks, set completion type and date only, no add or remove or changing other fields
    • Scheduled Users: view only where they are the selected User and convert to labor record
    • Labors: add (no user selection defaults to themselves), remove, view and edit only when they are the selected User
    • Travels: add (no user selection defaults to themselves), remove, view and edit only when they are the selected User
    • Units: view only and limited to fields to identify unit
    • Parts: view only and limited to fields to identify part
    • Part requests: view only
    • Expenses: Not available
    • Loans: view only and limited fields to identify unit and dates
    • Outside services: Not available
  • "Sub contractor - restricted" User type specific restrictions

    • All restrictions listed above in Work order Item restrictions plus:
    • No work order header fields visible except for Customer name and Customer contact name
    • Form main menu items available: none except for Report which has a separately configurable role restriction setting
    • Tasks: view and edit existing tasks, set completion type and date only, no add or remove or changing other fields
    • Scheduled Users: view only where they are the selected User and convert to labor record
    • Labors: add (no user selection defaults to themselves), remove, view and edit only when they are the selected User
    • Travels: add (no user selection defaults to themselves), remove, view and edit only when they are the selected User
    • Units: Not available
    • Parts: Not available
    • Part requests: Not available
    • Expenses: Not available
    • Loans: Not available
    • Outside services: Not available

Restricted work order User report fields

As some Work order data is not shown or available to restricted Users, several flag fields are provided in the work order header which are available to use in Report templates as required:

  • IsCompleteRecord - false if some Work order Item records were removed as not available to current restricted user
  • UserIsRestrictedType
  • UserIsTechRestricted
  • UserIsSubContractorFull
  • UserIsSubContractorRestricted
  • UserCanViewPartCosts
  • UserCanViewLaborOrTravelRateCosts
  • UserCanViewLoanerCosts

Manual Price Overrides

Some objects contain a "Price override" field to allow for manually adjusting the price to an arbitrary value. This override supersedes any other source for the price including Contracts and / or the source object's price itself. Contract adjusted pricing is not part of the Manual Price Override feature; only values entered manually on the work order form in the "Price override" field will be present in that field.

NOtifications tips

  • TIPS Workorder status related notification uses: Completed - Use workorder status change type notification and any status that is of type completed relevant to user to get relevant completed state notification Completed follow up - follow up with customer after service with a workorder status age type notification on a completed type status and set age value to desired wait time to follow up.

    0000000000000000000000000000000 typed this then realized too complex for simple example so leaving it here for maybe later inclusion.

Contract

When we selected this Customer it happened to have a Contract so the Server automatically applied the Customer's Contract to this work order which affected a few different things.

First the Contract field was set to the default Customer contract, in this case the "Gold" contract: Work order walkthrough 10

This was set automatically but could be changed or removed by the User.

Because the Gold contract selected had some other settings they also triggered changes in the work order. First and most obviously an alert message is displayed at the top of the work order because the Gold Contract has an optionaly alert message set:

Work order walkthrough 11

The Contract also has a default Response time of one day set which has caused the work order's Date to be completed field to automatically be set to one day after the default Service date which was set to the moment in time the work order was created since we didn't set any other date when we first saved it.

Work order walkthrough 12

The Date to be completed field optionally ties into the AyaNova notification system to ensure service is completed when promised.

The rest of the work order is a blank slate ready to be filled in. 000000000000000000000000000000000000000000000000000000000