Understanding drafts in ActivityInfo

Introduction

In ActivityInfo, drafts refer to records that contain unsubmitted changes to one or more field values or to newly added records. A draft is created whenever data is entered, edited, or updated. Drafts provide a consistent way to edit, validate, and finalize data entry.

Drafts are stored locally on your device, are not immediately visible to other users with access to the form, and must be explicitly submitted to be saved. Before submission, drafts must pass validation checks before they are committed to ensure completeness and correctness.

How drafts work

At a glance, draft records have three defining characteristics:

  • They contain unsubmitted changes to field values.
  • They are saved only on your device and are not sent to the server until you submit them.
  • Records must pass validation checks before being submitted. Once submitted, they become part of the dataset, making them visible to other users and available for analysis and reporting.

The icon preceding the record in the interactive table will inform the user about the status of the record. You can hover your pointer over the icon to see a tooltip explaining more about the state of the record.

Screenshot 2026-04-30 1.19.53 PM.png
Screenshot 2026-04-30 1.19.53 PM.png
Icon Status Meaning
Invalid draft record, invalid submitted record, or Invalid edit draft This is a draft or submitted record that has infringed one or more validation rules.
Valid draft This is a draft record that has met all the validation rules but is yet to be submitted to the server.
Valid edit draft record This is a record that has been altered and is yet to be submitted to the server and is only stored on the local device.
Valid submitted record This is a record that has successfully been submitted to the server and is visible to other users

Field values that are invalid, are highlighted in light pink and labeled “invalid”, whereas those that are valid are labeled “draft value” and highlighted in light blue.

Example:

  1. The first record is a valid draft record, as all its fields have satisfied the set validation rules. This record exists only on the local device and is not visible to other users.
  2. The second record is an invalid draft record, since two of its fields (i.e., full name and registration date) have not satisfied the validation rules set. This record also exists only on the local device and is not visible to other users.
  3. The third record is a valid edit draft, meaning that the “date of birth” and “marital status” field values have been modified and the new values satisfy the validation rules. Other users with access to this form can only see the old field values until the edit draft record is submitted.
  4. The fourth record is an invalid edit draft, meaning that the “date of birth” field value has been modified but with a field value that does not satisfy the validation rules. This only happens to records that had been previously submitted successfully but where new modifications to field values have not passed the validation test. The changes to this record cannot be submitted until the validation rules are met and other users will not see the new changes.
  5. The fifth record is a valid submitted record that is visible to all users with access to the form.

What happens when you edit a record

Any interaction that changes field values in a record automatically places the record into a draft state in the interactive table. From that point, the record contains pending, unsubmitted changes that will not be available to other users until they are validated and submitted.

This happens when:

  • An existing value is modified
  • A field value is cleared

From that moment:

  • The record contains both original values and pending changes.
  • ActivityInfo tracks which fields have been modified and labels them accordingly.
  • The record remains as a draft until submission.

In the interactive table, records become drafts as soon as any field value is changed and multiple validated drafts can be submitted to the server all at once.

In form data entry, the user has to click the “Save as draft” button to ensure that the draft field values remain within the record, or “Save record” to validate and submit the record to the server.

Validation before saving

Before drafts can be submitted, ActivityInfo enforces validation rules defined in the form.

These validation rules include:

  • Required fields
  • Field types (such as quantities or dates)
  • Logical and relevance conditions

Validation happens during editing and again at submission. If a record fails validation:

  • It remains in a draft state
  • It cannot be committed until corrected

This ensures that only clean, consistent data is stored.

Submission and commit

Submission is the step that transitions a draft into a permanent record.

When drafts are submitted:

  • Valid edit and draft records are committed to the database.
  • The updated values replace the previous ones.
  • The draft status changes to “valid saved record”.
  • The valid saved records are visible to other users.

ActivityInfo drafts and form workflow fields

In some database workflows, forms can include a field with values such as “draft”, “approved”, “cancelled”, or “submitted”.

This creates two parallel concepts for users:

  • Draft (ActivityInfo data entry state) - Unsubmitted changes.
  • Draft (form field value) - Part of the business workflow.

For example:

  • A record can be in a draft state and also have a status of “Draft”
  • A record can be submitted but still have a status of “Draft”

In such a situation, it is imperative that the database owner explains this to users to ensure that there is smooth communication within the team.

Conclusion

Drafts in ActivityInfo provide a structured way to manage new records and changes to field values before they are saved. By treating every edit as a temporary state, ActivityInfo separates data entry from final submission, ensuring that all changes are reviewed and validated before becoming part of the dataset.

This approach supports efficient data entry across both the interactive and data entry forms, while maintaining strong control over data quality. Only once drafts are validated and submitted do they become permanent records, ensuring consistency, accuracy, and reliability across the database.

Next item
Add a Record to a Subform