The Deferrable system

The Deferrable option is intended for wireless devices and affects the order in which records are processed in the event that wireless connectivity is lost. By default (Deferrable = No): if wireless connectivity is lost, record save will fail and an error message will be generated.

When Deferrable is set to Yes and a device is unable to save a record due to loss of wireless connectivity:

  • A queue of unsaved records is created.
  • Each unsaved record is added to the end of the queue. This ensures that when a connection is re-established and the records are saved, they are saved in the order in which they were created (oldest first).
  • The system will attempt to save the queued records at regular intervals until all records are removed from the queue:
    • If a save attempt is successful, the record is removed from the front of the queue and an attempt is made to save the next record, and so on until the queue is empty.
    • If a save attempt fails for reasons other than connectivity, an error message is recorded and the save data is removed from the front of the queue, and an attempt is made to save the next record, and so on until the queue is empty.
  • Three icons are added to Sapphire:

  • WiFi connection status. Icon is filled when there is a connection. When connection is lost, the icon displays as:

    Error notification. When saving records fails for any reason other than connectivity, the icon display as:

    Click the icon to view error messages.

    When there are records waiting to be saved, the top bulb of timer icon is filled:

    At regular intervals the system will attempt to save any queued records. When records are successfully saved, the timer reverts to its original form (empty top bulb).