Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
97 changes: 97 additions & 0 deletions docs/user_guide/administration/custom_fields.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
---
review-status: needs-review
review-date: 2025-08-29
reviewer: migration-script
migration-notes: "Added during 2025 documentation reorganization"
---

# Custom Fields

Custom fields are a powerful feature in OpenSPP that allow administrators to add new data fields to registrant profiles without requiring developer intervention. They can be used to capture additional information that is specific to a program's needs, such as a secondary contact number, a disability status, or any other piece of data not included in the standard OpenSPP setup.

This guide provides step-by-step instructions on how to create a simple custom field using the **Custom Fields UI**. We will create a field to store a "Secondary Phone Number" for an individual.

```{note}
The Custom Fields UI is designed for creating straightforward, user-defined fields for direct data entry. For fields that require automatic calculation or complex logic, see the {doc}`indicator_fields` guide.
```

## Prerequisites

To create and manage custom fields, you need:
- A user account with the **System Admin** role. For more details, see the {doc}`user_access` guide.
- The **OpenSPP Custom Fields** (`spp_custom_field`) and **OpenSPP Custom Fields UI** (`spp_custom_fields_ui`) modules must be installed and activated in your OpenSPP instance.

## Objective

After completing this tutorial, you will understand how to create, configure, and verify a custom field in OpenSPP.

## Process

The process involves navigating to the Custom Fields menu, defining the properties of the new field, and verifying its presence on the individual records.

### Navigate to Custom Fields

First, access the Custom Fields management interface.
1. Click on the menu icon in the top-left corner and select **Registry**.
2. In **Registry**, click the **Configuration** menu.
3. Click on the **Custom Fields** sub-menu.

![](custom_fields/step01_configuration_custom_fields.jpg)

### Create a New Field

On the **Custom Fields** page, you will see a list of existing custom fields.
1. Click the **New** button to start creating a new custom field.

![](custom_fields/step02_click_new_custom_fields_list_view.jpg)

The **Custom Fields** form view will appear.

![](custom_fields/step02a_custom_fields_form_view.jpg)

### Configure Basic Properties

Now, define the basic characteristics of your new custom field. For this example, we are adding a secondary phone number field for individuals.

- **Field Draft Name**: Enter a technical name for the field, such as `secondary_phone`. This name should be unique and follow standard naming conventions (lowercase with underscores).
- **Field Label**: Provide a user-friendly label, like `Secondary Phone Number`. This is what users will see on the interface.
- **Field Type**: Select `Char`, as a phone number is best stored as a text string.
- **Target Type**: Choose `Individual`, because the field will be added to each individual's record.
- **Field Category**: Select `Custom`. This designates the field as a standard data entry field.
- **Field Help**: Specify a text that will appear as a tooltip or description for the field, for example, "Enter an alternative phone number for the individual."

![](custom_fields/step03_set_type_custom.jpg)

### Configure Properties (Optional)

Since this is a standard custom field, you do not need to provide computation logic. However, you can configure its behavior in the **Properties** tab.

- **Required**: Check this box if you want to make this field mandatory for all records.
- **Readonly**: Check this box to prevent users from editing the field's value through the user interface.
Comment thread
gonzalesedwin1123 marked this conversation as resolved.
Outdated
- **Index**: Check this box to create a database index on this field. This can improve performance for filtering and searching on large datasets. This option should typically be managed by a developer or system administrator.
- **Copied**: Determines if the value of this field is copied when a record is duplicated.

For our example, we will leave these options unchecked.

![](custom_fields/step04_specify_advanced_props.jpg)

### Save and Open an Individual Record

Once all properties are configured, save the new field.

1. Click the **Save** button. OpenSPP will create the new field in the database.
2. Navigate to the **Registry** and click the **Individuals** menu.

![](custom_fields/step05_open_individual_list_view.jpg)

### Verify the Custom Field

1. To verify that the field was created, open any record in the **Individuals** list view.

![](custom_fields/step06_select_individual.jpg)

2. A new tab named **Additional Details** will appear on the form. Click on it.

3. You should see your new "Secondary Phone Number" field, ready for data entry.

![](custom_fields/step06a_check_additional_field_tab.jpg)
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 5 additions & 1 deletion docs/user_guide/administration/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,11 @@ This section contains administrative tasks and system management guides.

user_access
service_points
managing_custom_fields
custom_fields
indicator_fields
import_areas
inventory_configuration
email_gateway
using_audit_logs
hardware_integration
```
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,7 @@ reviewer: "Edwin Gonzales"
migration-notes: "Added during 2025 documentation reorganization"
---

# Indicator Fields Management

## Introduction
# Indicator Fields

Indicator fields are a powerful feature in OpenSPP that allow for dynamic data calculation based on existing information in the registry. They can be used to create simplified data points, such as the number of children in a household or the count of members with a specific attribute. These indicators are crucial for program operations, particularly for defining eligibility criteria and targeting beneficiaries for social protection programs.

Expand All @@ -20,7 +18,7 @@ The Custom Fields UI is designed for creating straightforward, user-defined indi
## Prerequisites

To create and manage indicator fields, you need:
- A user account with **System Admin** role. For more details, see the {doc}`administration/user_access` guide.
- A user account with **System Admin** role. For more details, see the {doc}`user_access` guide.
- The **OpenSPP Custom Fields** (`spp_custom_field`) and **OpenSPP Custom Fields UI** (`spp_custom_fields_ui`) modules must be installed and activated in your OpenSPP instance.

## Objective
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
13 changes: 0 additions & 13 deletions docs/user_guide/administration/managing_custom_fields.md

This file was deleted.

13 changes: 6 additions & 7 deletions docs/user_guide/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,18 +38,20 @@ Administrative tasks and system management:

- {doc}`administration/user_access`
- {doc}`administration/service_points`
- {doc}`administration/managing_custom_fields`
- {doc}`administration/custom_fields`
- {doc}`administration/indicator_fields`
- {doc}`administration/import_areas`
- {doc}`administration/inventory_configuration`
- {doc}`administration/email_gateway`
- {doc}`administration/using_audit_logs`
- {doc}`administration/hardware_integration`

## Other Features

- {doc}`pos_usage`
- {doc}`grievance_management`
- {doc}`consent_management`
- {doc}`indicator_fields`
- {doc}`inventory_configuration`
- {doc}`email_gateway`




Expand All @@ -67,7 +69,4 @@ administration/index
pos_usage
grievance_management
consent_management
indicator_fields
inventory_configuration
email_gateway
```