Files
raven/docs/8.0/ayanova/docs/ay-start-changes-from-v7.md

26 KiB

CHANGES FROM AYANOVA VERSION 7

Overview

Starting with version 8, AyaNova was completely re-written. Our goals in this were to make AyaNova easier to use, modernize aging code, take advantage of the latest technologies and move to a modern run on any device approach.

This page documents the changes most relevant to everyday users of AyaNova however there were also many other technical changes of interest to system administrators and installers which are documented in our Technical changes from v7 page of this documentation.

User interface changes from v7

AyaNova 7 had several different user interfaces: the main interface was a Windows desktop application and as optional add-on products we had several different web browser interfaces for varying levels of devices. Each web interface had a limited sub-set of the full features in the Windows application and required separate installation and configuration procedures.

AyaNova 8 has one "progressive" web application based interface only that adapts itself automatically to the device format. Any device on any platform with a modern web browser from a smart phone to a full sized desktop computer can use all features of AyaNova equally. This means you can use AyaNova on an iPhone, Android, Windows desktop, Mac, Linux etc.

Having one web application interface means there is nothing to install or update on all user devices and ensures that we will always have all features available to all users.

In order to support the front end "client" devices using AyaNova, there is now a back end self contained AyaNova server that handles all requests and can be hosted on Linux, Windows, Mac either onsite or with a web hosting provider.

Features dropped from v7 to v8

Service bank

The service bank feature has not been ported to AyaNova 8 as it does not appear to be widely used and would need extensive re-working. We could be wrong about this and if the Service Bank feature is important to you please let us know and how you would like to see it implemented as a feature. If there is demand for it we can work it back into AyaNova 8 as a feature based on your feedback.

Existing feature changes

One of our main goals with AyaNova 8 was to make AyaNova easier to use and add many new features and improvements based on feedback from our customers. In order to support this some major areas of AyaNova have been changed:

Clients renamed

Clients have been renamed to Customers

Client User's and Contacts

Customers in AyaNova 8 now have unlimited Contacts as a seperate collection of User type objects so you optionally allow them to login to use the Customer interface and subscribe to Customer specific notifications etc.

Migrating from AyaNova 7 will result in a Customer Contact type User being created for each v7 Customer or HeadOffice type User account and in addition a Contact will be created in v8 if the v7 Client has a name set in the "Contact" text field with the Client phone and email numbers being re-used for the contact created this way. The Contact notes text field in v7 that is intended for listing extra contacts will be migrated to the v8 general Customer Notes field as there is no way to safely migrate that freehand text field as additional Contact type users in v8.

As with all User / Contact accounts created in v8 no login is possible by those users until the administrator allows it and assigns a password so there is no security risk of Contact users logging in that previously could not.

Inventory changes

The AyaNova 8 inventory system is completely new and works differently than the AyaNova 7 inventory system.

It is both more flexible as it allows for easily changing values after the fact but more strict in that it has a far more strict control over inventory values than AyaNova 7 allowed.

V8 inventory is "live" and affected instantly when a PO or Work Order are saved with any changes of the Received or consumed quantity (respectively) for a part. This means that when you receive 10 parts on a PO they will be available for use immediately on work orders etc. If the PO is then edited to change the 10 to a 5, the inventory is immediately updated to remove the 5 that are now not received.

There is no longer a "Used in service" checkbox in Work orders, they consume inventory immediately upon entry and save.

If a work order consumes a quantity of 5 for a part and is saved that amount is immediately removed from inventory. If the work order is subsequently edited to change the 5 to a 3 then a quantity of 2 is immediately returned to inventory upon saving the changed work order.

All inventory changes are tracked in a blockchain inside your AyaNova database and this block chain can be viewed in the Inventory transactions data table. Inventory transactions are required for any change of inventory and the inventory transaction blockchain is the only repository for inventory quantities in AyaNova.

AyaNova 8 does not permit negative on hand inventory values to exist, every part consumed must have a quantity of on-hand inventory to back it up or it's not allowed to be saved.

Suggested quantity

If there is a need to enter parts on a work order as a placeholder so as not to affect inventory for planning purposes the work order item part's "Suggested Quantity" field can be utilized for this purpose.

Purchase orders / receipts

Purchase orders and receipts have been combined in v8 and are no longer separate objects.

The various rules around Purchase order editing have been eliminated. In v8 purchase order editing ability is no longer controlled by their Status and a PO can be edited anywhere any time. Behind the scenes AyaNova will make the necessary adjustments to inventory to support any edit changes made to purchase orders if they have already affected inventory or work order item part requests. This allows for easy edits when things change post order, for example if a supplier has changed a price or an item has been replaced by another one after being ordered.

Status is still available and can be set to any value at any time as users need for displaying in lists and controlling the process. AyaNova itself will not set the PO status automatically at any time.

Part Number / primary identifier fields

In v7 Parts had Part number and Part Name fields. Part Number was always intended as the primary identifier for a part however in v8 we've changed Parts to use the more consistent Part Name as the primary identifier. Users should use the Part Name field in v8 as the primary and sole identifier for a Part wherever possible. This field like all v8 name fields has no practical length limit and should be the main field used to identify parts both internally and externally.

In order to accomodate this change, the V8 migration utility offers two ways to migrate the existing part fields as an optional choice before migration:

  1. Consolidate the v7 Part number and Part name fields into the single v8 Part Name field {partnumber} {partname} (default and recommended for most)
  2. Import the v7 Part number field into the v8 Part name field and the v7 Part's 'Name' field into the v8 Part's 'Description' field

Part serial numbers

Serial numbers have been separated from inventory for v8.

They now reside in a collection of serials for each Part and you can select from the list or enter alternatives or none at all at any time. This supports the many cases where users requested the ability to be more free-form with their serial numbers to allow for mistakes or unique needs but still record them in the system when they are consumed on work orders for warranty purposes etc.

Migrating from v7 will place any existing serials into the serial number collection automatically.

Travel and Service Rates

Similar to how Tax Codes worked in AyaNova 7, rates will now have their price affecting fields (Charge, Cost) frozen once that Rate has been assigned to any object to preserve data integrity.

Service Work orders

Flexibility changes

User interface: The user interface for the work order has been designed to reduce the clutter on screen as much as possible while still using the fewest possible clicks to navigate around from section to section. In addition we've ensured that a work order can be fully completed using a device as narrow as a 360 pixel wide smart phone if necessary.

Decoupling of sections to reduce conflict: In v7 an entire work order was updated at once in the database meaning only one person at a time could edit any part of that work order and save without conflict. In v8 we have broken out the work order save process into each individual section so the work order Header is one section, a work order Item is another, a work order item part it's own section etc. This means if two (or more) people are working separately in the same work order, as long as what they are not working in the same section there is no conflict. For example two people could be working with two different work order items at the same time and save independantly of each other or two or more people could be entering parts separately in the same work order item without conflict. Note that there are still circumstances where a conflict can occur and we still recommend people take steps to avoid working in the same areas at the same time, but conflicts will be greatly reduced. V8 still uses the first save wins method of conflict resolution so that no one can save and lose their changes without knowing it.

Decoupling of Client: In v7 a Client was tightly connected to a work order and needed to be selected prior to creation of a work order and could not be changed. We've made many behind the scenes structural changes to remove this limitation. In v8 the Customer can be changed at any time for the work order as a whole.

Decoupling of Contract: In v7 a contract was tighly connected to a particular Client and a work order in turn was tighly coupled to the Contract selected. In v8 the work order structure has been changed to allow a Contract to be changed at any time for a work order. Now, a Contract will be automatically applied to a work order if a Customer, Head Office or Unit is selected for the work order and it has no current contract selected. In addition the Contract selected is exposed as a user selectable item so any contract can be applied at any time to any work order or removed if not appropriate.

Work order status improvements: In v7 the work order status was a single value stored with the work order selectable by anyone and served only as a flag. In v8 the Work order Status has been greatly expanded into a process control feature and is now a collection that is appended to each time a status changes. In the work order a single status still shows but can be clicked on to see the entire history of all status changes. In addition Work order status now has options to restrict which security Roles can select a particular status or change out of a currently selected particular status. As well, a status can be flagged as being a "Locked" status which will prevent edits to the work order and can be flagged as a "Completed" type status for triggering notifications etc. The combination of these features makes it easir to control the service process as a work order flows through the service process. For example it is now easy to make a status for the purpose of a Service Manager or Accounting person to lock a work order at a certain point to inspect it before unlocking it to move on to the next step in the process or to trigger a particular notification at a particular point. (Note that Work order Item status is still a feature but is a separate collection now from the main work order status and remains the same as the v7 work order item status as a single selectable flag.)

Address is now stored with the work order itself rather than being linked to the Client / Customer or head office. The Customer address will be used unless Bill head office is in effect in which case the Head office address will be the default. In addition there is now a method to quickly select from any relevant address in the work order itself if the User wants to change the entire Workorder address to (for example) one of the Unit's addresses on that work order or type in an alternative value. This preserves history and makes the Work order more flexible for addressing.

Work order Templates and Duplicate / copy to

Work orders can now be duplicated like all other objects in AyaNova 8. In addition a Work order can be copied to a new Quote or new Preventive Maintenance object. In fact there is the ability now in v8 to convert any quote, work order or preventive maintenance into any other one of those objects, so, for example a Preventive Maintenance order can be turned into a Quote via a Work order or a Work order can be converted into a PM or Quote directly.

For this reason the v7 templates feature is no longer required and has not been ported to v8.

Work order status (Closed / service completed replacement)

The work order status feature has been greatly expanded into a set of powerful features that can support process control with:

  • tracking of every change of status (who and when visible right inside the work order)
  • restrictions by security role of who can set or unset any status (this allows for controlling the entire service process from creation to final billing or follow up)
  • locking status which when selected freezes a work order (replaces the v7 "Service completed" checkbox)
  • completed type status to indicate a work order is completed which can be used with notification etc (replaces the v7 "Closed" checkbox)

These new features are optional and not necessary to use if just a simple status indicator is desired and it can be used in much the same way as in v7 if there isn't a need for the extra features.

Customization

Now nearly all fields and sections on the work order form can be removed or made mandatory for entry. We've made design changes behind the scenes to reduce as much as possible the number of manadatory fields that must be filled in so that users can remove more things from the interface through customization if they don't require them.

Custom fields / attachments / wiki

In v7 custom fields, attachments and wiki were supported only in the Work order Item part of the work order. We have now added those to the main Work order itself and the Work order item Unit record in addition to the work order item. So there are now three areas in a work order that support these features. Migrated data from v7 will go to the Work order item record the same as v7.

Inventory

Serial numbers

When a work order has a part added / removed or changed, inventory and serial numbers are updated immediately upon save. There is no longer a "Used in service" checkbox to affect inventory; inventory is now considered immediately affected upon save of a work order item part record. This resolves a number of issues that could arise in the past.

Serial numbers can be edited directly from the Part record and are not tied to inventory in v8.

Part inventory adjustments

In v7 a part inventory adjustment was a separate type of object from the actual inventory itself. In v8 inventory is adjusted by making an inventory transaction entry directly into the inventory "blockchain". In v8 serial numbers are updated via the Part object, not the inventory adjustment / transaction as in v7.

Work order Items

The work order items now have a "Sequence" field and can be re-ordered as desired so that they are listed in the UI and print on work orders in a specific order. If no order is chosen it defaults to the v7 system of newer items appended to the bottom of the list.

Work order item Units

Units are now a collection under work order item rather than a single item. This facilitates scenarios where a large number of units need to be serviced identically at the same time (inspection, maintenance etc). Users can choose to select multiple units or a single unit as appropriate.

Work order item Outside Service

Outside service is now a collection under work order item rather than a single item to mirror the change for Units. Now, in the Outside service section there is a Unit selection control for setting to which Unit the Outside service applies.

Work order item Tasks

Tasks have been changed to a collection stored with the work order rather than linked to a separate collection of tasks in a task group. Now, a user can simply type in a list of tasks or still select from a task group which will be used to fill in the work order rather than link to it so it can be edited as needed. In addition tasks are now re-orderable.

Pricing

Pricing and costs are now clearly displayed on the work order in a consistent manner between all billable items that have prices. List price and final price are both shown so that it's clear that a contract or manual override have affected the final price. Most non management roles will not see costs or prices by default. Most prices (except for Parts which tend to have volatile pricing) are not stored with the work order but instead calculated on the fly when a work order is opened / printed. This is part of the decoupling process that allows for easily changing the Contract or Customer on an existing Work order. This means that similar to v7 some items like taxes and rates cannot be changed once they have been used on a work order however Parts are an exception as the pricing is considered more volatile so part prices are "snapshotted" on being added to a work order.

Customer and Unit data list "Last completed... " columns

In v7 the Clients grid and the Units grid show the "Last closed service workorder" and "Last closed service date" columns. In v8 the Customer and Unit data tables now have "Last work order" and "Last service date" columns available which will display the most recent Work order that Customer or Unit has been selected on regardless of Work order Status.

Unit Models

In v8 Unit Models no longer have the "Model Number" field. The "Name" field is now the primary identifier. Migrated v7 Unit Models will have their Model Number and Name fields combined into the single v8 Name field.

Quotes

Quotes now provide all the same sections as a service Work order with the sole exception of Part Requests which are not applicable to Quotes. Menu options are available to directly duplicate a quote to a PM or Work order (and optionally WIKI and File Attachments as well). Quotes can also be duplicated to a new Quote (as can all main objects in v8)

Preventive Maintenance ("PM")

PMs now provide all the same sections as a service Work order with the sole exception of Part Requests which are not applicable to PMs. Menu options are available to directly duplicate a PM to a Quote or Work order (and optionally WIKI and File Attachments as well). PMs can also be duplicated to a new PM. The "Desired day of week" to generate the Service Work Order on has been replaced by an "Exclude days of the week" control so instead of choosing a particular day to generate to now you would choose days not to generate on and the system will find the closest available day that matches that choice.

Contracts

Service contracts have been expanded with new features and more flexibility when applying (or not) to work orders. You can now select a discount off list price or a markup on cost for special contract pricing. In addition to the v7 general discount in a contract you can now select specific tags for parts or rates that, if those items have the tags selected, will be discounted / marked up the value selected. This gives a lot of flexibility in cases where a certain class or type of part for example should be included in discounts but not others. There are now also features for maximum response time that tie into notification and close by date features of work order automatically for contracts that include a response time commitment.

Localized text is now Translation

Localized text has been renamed to Translation

Security groups -> Authorization Roles

Security groups have been replaced by a role based authorization system. In v7 you would select a security group for a user to restrict their access to objects in AyaNova. In v8 a user is now assigned one or more Authorization Roles which controls their access. Roles are pre-defined and pertain to the type of user for example there are roles for Inventory, Accounting, Business administration, Technician, Subcontractor etc. Whichever roles you assign to a user give them access to those areas of AyaNova.

Migrating Users from AyaNova 7 will automatically set migrated Users to have no role in order to protect information security; the business administrator will need to set each user to the most appropriate new roles after migration is completed. For more about migrating from a business administration standpoint see the business administration migration guide and for more about the techncial aspects of the migration process see the Migration technical guide.

For details see the Authorization roles guide for more information.

Schedule markers

In AyaNova 7 there were two types of schedule markers: a regular one and a follow up type. The follow up type was tied to a particular object and provided a button to open that object. The regular type did not have a link to an object. Both had a "Completed" check box.

In AyaNova 8 the Schedule marker has been replaced by two separate objects the "Reminder" and the "Review".

Reminder

A Reminder is similar to a regular v7 Schedule marker and can not be tied to a particular object. It's purpose is to provide a place where a Note can be tied to a date and display in the Schedule form. Basically the original core purpose of a Schedule marker.

Review

A Review is tied to a particular object and has a Review Date and a Completed date and also displays in the graphical Schedule. It's purpose is to replace the v7 Follow Up feature and is intended for exactly that purpose: to follow up or review the status of a particular object in AyaNova be it a Customer or Unit or some other main object type.

Record history

In AyaNova 7 there was a Record history feature which would show who created an object and when it was created and who last edited an object and when. No intermediate changes were tracked, in other words you couldn't see any history of changes, only the most recent. In v8 we have expanded this feature into a full log and renamed it the Event log. Now, (for all major objects) AyaNova will keep a log of every time an object was created, retrieved, updated and deleted and which user did it a log format so you can see a history of who made changes and when.

Tags

Tags are a new feature for AyaNova 8 that replace and improve upon several different categorization features in v7.

The following objects from v7 have been replaced by tags in v8:

  • User certification
  • User skill
  • Client group
  • Dispatch zone
  • Part category
  • Regions
  • Scheduleable user group
  • Unit service type
  • Unit model category
  • Work order category
  • Work order item type

Migrating from v7 will automatically create tags for these objects and will then tag the corresponding objects that were set to these category items with the new tags created.

In addition, all objects migrated from v7 will be tagged with "v8-migrate".

Reports

AyaNova 8 has a built in report template editor to create and customize existing reports, however, the reporting system is completely new and not compatible with v7 style report templates which relied on a 3rd party commercial reporting component. Reporting is now HTML based and uses Javascript as the report language and HTML / Mustache template system as the report design template.

Reports that were customized in v7 and do not have a replacement provided with the stock v8 report templates will need to be re-created in v8.

Wiki

The Wiki feature has been changed substantially based on user feedback.

Editor

Previously there was a hybrid Wiki system, remote users (WBI) would interact with an HTML editor and HTML representation of the wiki document and windows AyaNova users would interact with a "rich text" editor similar to Wordpad. This required behind the scenes translations between Rich text format and HTML format and the results were not always compatible. In addition, it would have been very difficult to edit Wiki pages on small screen devices.

Now, a Wiki document is edited using Markdown a simple plain text formatting language. This allows us to provide an efficient and easy to use editor for Wiki pages that will work on any AyaNova supported device.

Embedded files

Previously users were able to embed files into a Wiki document which was in turn stored directly in the AyaNova database which could cause issues and lead to longer backup and restore times. Now, we have expanded this feature into it's own separate Attachments feature

Documents / Wiki Embedded files -> Attachments

All attached and embedded file features have been consolidated in v8 into a new Attachments feature.

  • Attachment storage
    • in v7 embedded wiki files were stored inside the database, now Attachments are stored in a special folder in the file system to avoid bloating the database.
    • In v7 Documents were simply links to existing files visible to the workstations / server; file attachments are stored in a special folder managed by the AyaNova server making it easier to backup and restore and ensure all data is consolidated in one folder.
  • Rename - can now rename an attached file
  • Notes - there is now a notes field

Display formats

In v7 there were Global settings for Part display format, Unit display format etc. In v8 this feature has been replaced by Select list templates which allow customizing nearly all select lists to choose how best to display them for selection in v8.