This guide will walk through how to set up and use a status field. The status field can be used for many different use cases and not just the example provided in this guide. The status field is a unique field type that changes the color of the record pin based on the value selected in the field.
In this example we are going to be setting up the status field for a Fire Hydrant Inspection Survey app. The Survey will take part in three possible steps. During the first step all the fire hydrants will be located, and inspected. During the inspection the field member will either record that the fire hydrant passed the inspection or that the hydrant requires repairs. Step two will be performed if the hydrant requires repairs. Step three will be a quality control step and will be done to verify that hydrant is in good working order.
The biggest difference between any other field type and the status field is how the field is setup. There is no need to drag the field in to the palette area, instead the option to enable and set up the status field can be found on the app settings menu on the right side of the app designer page. Once enabled the status field will be displayed at the top of every record in your app.
When you click the Status Field button on the app designer page a popup will appear which will allow you to setup the status field. The first thing you will want to do is to create some statuses that will be used. We will use the statuses: Not Inspected, Inspected, Needs Repair, and Verified.
To do this we start by clicking on the Add Status Choice four times. Next, we will want to enter the values mentioned above (Not Inspected, Inspected, Needs Repair, and Verified). Once the choices have been entered we can assign a color to a status by clicking on the color in the row for the status option. By default all status options start with red. In this example we choose red for not inspected, blue for inspected, yellow for needs repair, and green for verified.
Note: The right column is the value column (what is stored in the database), the left column is the label for the status (what is displayed as a choice). If you wish to have a different value contained in your export files you can populate the right column with these values, otherwise you can leave the right column empty and the system will automatically take care of copying the label over into the value column.
Now that we have all the status options created and assigned colors we can move to the status field settings section on the right hand side of the popup. First we will want to enable the status field by clicking the box next to enabled?. Next we can enter in the field label (Hydrant State was used), the description (can be used to provide instructions), and the data name (works the same way as the value in the note above (the default data name is status).
Now you can set your default value. The default value will automatically be populated into the status field when a new record is created. For the example we are using the not inspected status.
The last two options you have are the read-only and hidden check boxes. Ready-only will make it so users can only see the current status, but not change it. Hidden will make it so no one can see or edit the status field. Typically, these options are not used on the status field. If these options are enabled the only way to change the status is though the importer or by disabling these options.
Note: If you wish to restrict who can edit the status field you can create a custom role that does not have change status enabled.
Below is an image of what the status field looks like after we have completed setting it up.
Now that the status field has been enabled we can now begin to collect data. When a record is first created the status will automatically be populated with the default status that we set earlier (not inspected). After the inspection of the hydrant is completed, the status can be set to either inspected or needs repair, and so on until the final step is completed and the hydrant record is set to verified.
Below is an image of what a creating a new record looks like with the status field enabled. Note that the status field is already set to red and has not inspected selected.
On all platforms (Android, iOS, and Web) you can quickly filter records by specific record statuses. This can reduce noise for the data collector in the field and allow them to only focus on records that are set to a specific status or a multiple statuses.
In the image below we can see what the map view looks like on an iOS device without any filters enabled.
In the image below the app is set to filter the data to only show records that have a status of needs repair.