Enhancing data entry efficiency
HostVictoria Manya
PanelistUrooj Abbasi
About this webinar
About this webinar
In this session, we will explore how you can ensure efficient data entry using a variety of functionalities available in form design in ActivityInfo.
In summary, we will explore:
- Data entry efficiency
- Relevance rule and formulas
- Validation rules and formulas
- The use of Subsections for organizing data entry forms
- Unique field constraints versus Key fields
- Default values and the Read Only property
- NOW function and timestamps
- Locking data entry
View the presentation slides of the Webinar.
Is this Webinar for me?
- Are you designing databases in ActivityInfo or is this a role you would like to take on?
- Do you wish to improve the data collection forms so as to improve the data entry experience and your work with the collected data?
- Would you like to address questions related to the latest functionalities available in the platform?
Then, watch our Webinar!
Questions and Answers
Questions and Answers
Can the default value be a randomized code or number that is generated in a specified manner? My form starts with asking the service provider to specify if their beneficiary is a new or an existing one, if it is a new beneficiary the form would assign a unique ID for that beneficiary that will be provided to them and used at the next visit since the beneficiary has become an existing one, and based on the selected a different subform is accessed but that code can not be sequential numbers its a mix of characters (alphabetical, numerical, special).
We do not yet support functions for generating random numbers. If you want to generate sequential numbers, you can consider using a Serial Number field type instead. If you got a Reference form for your beneficiary registry, you can add new records to that form from other forms that are linked to it. The beneficiary registry form could then have a serial number for automatic generation of IDs. However the serial number currently would have to be sequential. We do not yet support non-sequential/random numbers but we can take this in for future consideration.
About calculated field: if we want to be able to see and filter records by user who created and modified and by date the record was created and (last) modified; should we add these fields as calculated, or are these built in by default in forms and database?
If you want to be able to filter the records by these dimensions, you would need to create the calculated fields that would store that information.
Does the NOW() function work at local level (for example if the collection was done offline) and does it provide time zone information? Or does it happen at server level?
It does work at the local level based on the device´s time. And yes, time zone information would be included like this: YYYY-MM-DD HH:mm:ss +0100
Does ActivityInfo support cross-forms validation? As example if I need to validate the entered value in subform A to be to specific value in subform B.
You can only create formulas that refer to values in related forms (e.g. forms linked via a reference field or between subform and parent form). We unfortunately do not yet support formulas that can refer to specific values in "sibling" subforms. Would be great to hear more about the use case you have in mind.
What formula gets you a user id? And will the DB owner show up as well?
When you add a User field to a form, you can refer to that field as well as any attributes about the user in your formulas. Database owners would also show up in the list of users.
Is there a possibility to add a lock or something similar not only for the date but also for e.g for the project status? If the project is marked as closed, it is locked and you can't edit it?
Yes, you can achieve this using rule-based locks, you can read more here.
If we are collecting quarterly data for example, we are facing the issue of updating data from the previous quarters, let us say we are in the Q4 reporting period and people use to go back and update what they already entered in Q1, Q2, or Q3. Is there a way when we are in a specific quarter to lock the update for the past quarters?
If you are using the same form across quarters, you can use rule-based locks as well to lock records associated with quarters that are closed for reporting. You can read more here.
About the trainer
About the trainer
Victoria Manya has a diverse background and extensive expertise in data-driven impact, project evaluation, and organizational learning. She holds a Master's degree in local development strategies from Erasmus University in the Netherlands and is currently pursuing a Ph.D. at the African Studies Center at Leiden University. With over ten years of experience, Victoria has collaborated with NGOs, law firms, SaaS companies, tech-enabled startups, higher institutions, and governments across three continents, specializing in research, policy, strategy, knowledge valorization, evaluation, customer education, and learning for development. Her previous roles as a knowledge valorization manager at the INCLUDE platform and as an Organizational Learning Advisor at Sthrive B.V. involved delivering high- quality M&E reports, trainings, ensuring practical knowledge management, and moderating learning platforms, respectively. Today, as a Customer Education Specialist at ActivityInfo, Victoria leverages her experience and understanding of data leverage to assist customers in successfully deploying ActivityInfo.
Transcript
Transcript
00:00:00
Introduction
Thank you, Urooj, and thank you to all the returning and new participants. I welcome you once again to this session where we will focus on maximizing data entry efficiency in ActivityInfo through various form design functionalities.
The key topics that we will be exploring today include data entry efficiency itself and the principles that govern it. We will explore relevance and validation rules, looking at formulas as inspiration for similar cases you may encounter in your database. We will also touch on the use of subsections for organizing your forms, unique field constraints, key fields, default values, and the read-only property. Additionally, we will cover the NOW function and locking data entry for security purposes.
00:01:47
Data entry efficiency overview
Data entry efficiency involves accurately and quickly inputting data into systems or databases to enhance productivity and reduce errors. It encompasses factors like speed, accuracy of data entry, the usability of your entry tools and interface, and the overall effectiveness of your data entry process. Efficient data entry abides by principles revolving around the need to automate, reduce, and standardize.
Automation, in this context, refers to the reduction of human or manual efforts in data entry. The principles emphasize streamlining processes by minimizing manual input errors and maintaining consistency through standardized formats. Specific elements include the simplification of the data entry interface, the use of default values, calculated fields, dropdowns and selection lists, and standardized formats.
In ActivityInfo, data collection is made versatile and user-friendly, enabling collection online and offline on various devices, including desktops and mobile. The web-based form ensures consistent and simplified data across various devices, while the mobile app facilitates efficient data collection in remote areas. The offline data collection feature allows users to collect data without an internet connection, syncing upon reconnection for a streamlined operation.
00:09:06
Calculated fields and formulas
The first feature we will discuss is calculated fields and formulas. Adding calculated fields automates calculations and yields direct results based on other fields within your form. You can use formulas to create calculated fields, utilizing codes assigned to fields and the formula editor to design the syntax. Calculated fields serve various purposes, such as performing mathematical operations like addition, subtraction, multiplication, and division. Notably, calculated fields can be hidden if you feel the use of certain formulas might confuse the data entry users, reducing the number of fields a user has to attend to.
For example, imagine a scenario where we are engaging in a humanitarian intervention targeting vulnerable adults and children. We want to calculate a vulnerability score to understand how vulnerable each person is—whether they are not vulnerable, moderately vulnerable, or highly vulnerable. Instead of the data entry user manually determining this, we create a simple formula that acts as a decision-making process. It looks at the total vulnerability score based on other fields and automatically indicates the vulnerability level. For instance, if the score is less than 35, the system considers the person not vulnerable. This helps quickly input the extent of vulnerability based on collected data.
00:13:42
Default values
Another feature is the default field value. Default values are pre-filled information that appears in the field automatically when you are creating a new record. They speed up the data entry process and make it more consistent. It is important to note that default values only show up when adding a new record, not when editing an existing one.
There are two main ways to set default values. First, you can assign an explicit value, manually specifying a single value to appear. Second, you can use a formula that automatically generates the value based on other fields or the context. This is useful when the expected value changes depending on different factors. To ensure a field is pre-filled and cannot be changed, we use this in conjunction with the "Read only" field property.
00:16:11
NOW function and timestamps
In cases where we want to record data entry time as a default field, we can use the NOW function. The NOW function acts like a clock, providing the current date and time information for records. It is handy for knowing exactly when a record was entered. The format returned includes the year, month, day, hour, minutes, and seconds.
If we use the NOW function in conjunction with the default field value and the read-only property, we can automatically track when data collection begins. We add a text field to the form and set the default value to the current date and time using the syntax TEXT(NOW()). If we mark it as read-only, enumerators cannot modify the field, ensuring the date and time of collection remain accurate and consistent for monitoring purposes.
00:20:10
Relevance rules
Relevance rules help you customize when a field appears on the data entry page. By writing a formula, you can define advanced rules to determine the conditions under which a field should be displayed. This saves time and prevents confusion, as users only see fields relevant to them.
In our example scenario, we have a reference form with indicators and a beneficiary distribution form. Instead of creating separate forms for each indicator, we use one form with relevance rules based on the Indicator ID. For fields related to children, the formula checks if the Indicator ID matches indicators associated with children. Similarly, fields related to women or elderly women only appear when the corresponding Indicator ID is selected. This simplifies the collection process.
We can also use relevance rules for subforms. In a health survey collecting data on adults, we might have a subform for detailed lifestyle habits. We only want to show this subform if certain conditions are met, such as if the adult is a smoker, has high cholesterol, or has high blood pressure. If these conditions are not met, the subform remains hidden.
00:26:36
Validation rules and formulas
Validation rules and formulas ensure the accuracy of data entered into your database. You can create customized validation rules that determine whether a record meets specified criteria, preventing users from saving records that do not comply. This helps avoid cumbersome data cleanup processes.
One example is a validation rule based on a range. In a post-distribution survey, if we ask, "During the last seven days, how many days did the beneficiary consume food?", we expect a number between zero and seven. We use a formula to check if the input is greater than or equal to zero and less than or equal to seven. If the input falls outside this range, the system prompts the user to correct it.
Another example is filtering. If we are conducting a survey and want to ensure enumerators do not select beneficiaries who have left the project (inactive users), we can use a validation rule. The formula checks the beneficiary status in the registration form. If the status is anything other than "Active," the beneficiary ID does not show up for selection. This filters the list to present only active participants.
00:31:54
Demonstration
Let's look at a quick demo. Regarding the default value and the NOW function, in our form settings, we used the formula TEXT(NOW()). When a data entry user inputs a record, the system automatically inputs the exact date and time. Because the field is designated as read-only, the user cannot change it.
Regarding relevance rules, in our beneficiary distribution form, the fields displayed change based on the indicator selected. If I select Indicator 1, only fields for "kids reached" and "elderly women reached" appear. If I select Indicator 2, the fields change to "kids" and "women."
For the subform example, in a health survey, if I indicate a healthy profile (non-smoker, normal cholesterol, normal blood pressure), the lifestyle habits subform does not appear. However, if I change the answer to "Yes" for being a smoker, the subform automatically appears, allowing the entry of further data.
00:43:04
Unique field constraints
Unique fields are different from key fields. The unique property prevents the duplication of entries in our forms. When we mark a field as unique, no two records in that form can have the same value in that specific field. This is enforced within the form where the field is located and applies among records visible based on the user's permissions.
For example, if you want to assign a unique identifier to a beneficiary generated from the system, you can concatenate the first name, last name, and document ID. This creates a unique string for each person, helping to prevent errors where people might enter the same ID number or confuse beneficiaries with similar names.
00:45:50
Locking data entry
Locking serves as a safeguard within your database, preventing users from making alterations or additions to data within specific resources like folders, forms, or subforms. The primary function is to maintain the integrity of validated data.
Locks can be implemented based on a date range or predefined rules. Date range locks are commonly applied to forms containing date fields; if a user attempts to add a record during a locked period, they receive an error message. Rule-based locks allow you to use formulas to establish criteria for locking. In the lock interface, you can toggle the lock to "Active" to prevent data entry or switch it off to allow it. A common use case is locking records from a previous year (e.g., 2023) once the reporting period has ended, preventing changes while allowing entry for the new year.
00:48:19
Subsections
The section and subsection header feature allows you to create sections within your form, which is particularly useful for lengthy forms. A new addition to this feature is the ability to include indentations.
When adding section headers, you can now choose indentation levels. For example, you can have a main section (Level 1), a subsection (Level 2), and even a third level (Level 3). This visual hierarchy helps users navigate the form more easily and understand the categorization of the data being entered.
00:51:45
Best practices
Finally, there are some best practices we advise in ActivityInfo. Before you deploy your data entry process, it is crucial to pilot the process and receive feedback to improve it. You should have clear and consistent data entry guidelines; simply providing a link is often not enough.
Ensure you utilize the user-friendly interface features available and use clear naming conventions so users do not need a dictionary to interpret questions. Provide adequate training and support. Additionally, use data control and permission features to prevent unauthorized viewing of sensitive information, and ensure overall database maintenance.
Sign up for our newsletter
Sign up for our newsletter and get notified about new resources on M&E and other interesting articles and ActivityInfo news.