AMS DocumentationAMS

Advanced Features

Most of these features are currently hidden behind an admin login. The purpose of this page is to indicate that such features are available rather than providing details on the configuration format required.

iOS UI settings

It is possible to configure the following UI options on iOS.

  • Set a fields label, editable and non editable text colours.
  • Show a completion indication in list cards. A metadata field should be used to hold the completion value which should be true or false. When true a blue bar is shown against the item.
  • Set sort options for list card items. Can sort by field, meta data value or JS function. The label in the menu is configurable.
  • Set the maximum number of entries for list card.
  • Set a field or meta data value as a unique value for an item in a list card so they are validated automatically, also allows for a custom error message to be set.

Web Service

It is possible to:

  • Use choice group data values in the SOAP XML instead of the choices shown to the user.
  • Set the xml style for a choice group to be:
    • repeat: same tag is repeated for each value selected
    • comma separated: single tag with selected values separated by commas
    • value element: single tag for choice group with child value tags where content is a single selection

Loading Previous Messages

The remote load command allows you to load the previous message for the same template type. The definition of previous for the given template is set via the lookup hash (under the Template extras tab). The lookup hash takes a freemarker template. The lookup value is calculated when a message passes through the gateway and is then hashed (only to ensure a fixed size). When a lookup is performed the process is applied to the incoming message data and then a search is performed to find a match. If more than one message is found then the most recent one is returned. Normally all previous message data is merged but it is possible to only include certain values from the previous message as well as map them to different fields, for example the previous reading could be loaded but put into a non editable field for reference whilst collecting the current reading.

Embedded Lists

This new field type allows you to embed a list card inside a form card. Currently this field doesn’t allow adding or deleting items directly so they must already exist in the message, either sent out or generated via JS. This is currently used with dynamic fields to flatten the hierarchy so that it appears as a standard form to the user. However in the future it will be possible to add and edit items to allow for feature like an embedded table.

Dynamic Fields

Text and Choice Group fields can have some of their properties controlled via meta data. This allows attributes like the label, target location for the value, required, editable, choices etc to be set from meta data. Effectively allowing fields to be created on demand from the content of the message. This allows for highly dynamic messages whose content varies but is still simple for the end user.