Data Table Row Locking

One of the reasons people want to use DevResults is to provide a way to formalize data submission, review, and approval processes--and to guarantee that approved data can be "finalized" and become the data of record moving forward.

We provide an out-of-the-box data submission and approval process, which is enabled by default for all direct entry data. You can also enable this approval/locking functionality for data table data. To turn this feature on, go to Administration > Program Settings and add a checkmark next to Data Table Row Locking under the Features section. Once you see the “Your change has been saved” message, the feature is enabled.

Note: If you already have a lot of existing data tables, this process may take up to a minute to complete while the system evaluates all existing data to apply locks.

What Does It Mean When a Row Is Locked?

Locked rows cannot be edited or deleted except by those with advanced permissions.

In addition, users cannot create new rows in already-locked Activity Reporting Periods.

How Can I Tell if a Row Is Locked?

With Data Table Row Locking enabled, every data table will display one new column: Locked? If the row is locked, a lock icon will appear in this row; clicking on that icon will provide a pop-up with details on the Reporting Period(s) locking it with links to take you directly to that Activity Reporting Period:

When you click on an individual row and open the data entry form, you'll also see a warning across the top:

Are There Any Differences Between This Workflow and the Direct Entry Workflow?

Yes. The main difference is that data table rows can always be entered for future reporting periods. Direct entry data can only be entered once a reporting period's submission window is open. Since data tables usually capture weekly or monthly data, we do not enforce this requirement. (We do still enforce it for past reporting periods, though.)

How Does Data Table Row Locking Really Work?

With Data Table Row Locking enabled, every row in a data table gets evaluated to see if it should be editable or not, based on these criteria:

  1. Is the data table used by any indicators?
    • No: data table rows are never locked
    • Yes: data table rows are evaluated for locking based on the indicators' defined Date and Activity columns
  2. What is the Activity Reporting Period's status?
    • No Data:
      • Submission is upcoming or open: rows falling within this Activity Reporting Period are fully editable by anyone with View & Edit permission on Indicator Results.
      • Submission window is closed: new rows cannot be added and existing rows are locked from editing
    • In Progress:
      • Submission window is upcoming or open: rows falling within this Activity Reporting Period are fully editable by anyone with View & Edit permission on Indicator Results.
      • Submission window is closed: rows falling within this Activity Reporting Period are only editable by anyone with the Approve Indicator Results or Owners roles.
    • Submitted:
      • Rows falling within this Activity Reporting Period are only editable by anyone with the Approve Indicator Results or Owners roles.
    • Returned:
      • Submission window is upcoming or open: rows falling within this Activity Reporting Period are fully editable by anyone with View & Edit permission on Indicator Results.
      • Submission window is closed: rows falling within this Activity Reporting Period are only editable by anyone with the Approve Indicator Results or Owners roles.
    • Approved: Rows falling within this Activity Reporting Period are only editable by anyone with the Owners role.
  3. What permissions does this user have?
    • As you can see from the Activity Reporting Period statuses above, there are some cases where rows are locked from editing to all users except a particular group (such as those with the Owners role). So in addition to checking the Activity Reporting period status, we always check the user's permissions before allowing or preventing an edit to data table rows.
Didn't answer your question? Please email us at help@devresults.com.