Skip to main content

How to Stop Editing an Item Once It's Approved in Power Apps

· 6 min read
Jagdish Kumawat
Founder @ Dewiride

Requests should be easy to correct until someone approves them, and fixed after that. In a gallery, give each row an Edit button whose Visible is ThisItem.Status.Value <> "Approved": pending and rejected rows can be opened, approved ones can't. When an edited item is saved, set its status back to Pending, so the change is approved too.

The example is the Overtime Timesheet app, where people can change an overtime entry until it's approved.

Prerequisites​

Step 1: Hide Edit on Approved Rows​

In the gallery's template, the Edit button opens the row's entry, and is only there when the entry isn't approved:

btnEditMO → Visible
ThisItem.Status.Value <> "Approved"

Studio's preview strip can't work out a formula that uses the row, and says so: This formula uses scope, which is not presently supported for evaluation. Preview the app to see it work (How to See What a Formula Returns in Power Apps Studio).

The Visible property of btnEditMO set to a formula that is true when ThisItem.Status.Value is not Approved, the preview strip reading This formula uses scope, which is not presently supported for evaluation, with Data type boolean, and the Edit button selected in the first gallery row

<> is "not equal to". A rejected entry keeps its button, so it can be corrected and sent again.

Step 2: Check It in Preview​

The approved night shift has no Edit button; the pending entry below it does:

Two gallery rows in Preview: Sat 24/10/2026 with 22:00 to 06:00 next day, 8.00 hours, Emergency Department, an Approved badge and no Edit button, and Thu 29/10/2026 with 18:00 to 20:00, 2.00 hours, Emergency Department, a Pending badge and an Edit button

The badge shows the status in words, so people can see why there's no button (How to Add a Badge Control in Power Apps).

Step 3: Send a Corrected Item for Approval Again​

Saving an edited entry sets its status back to Pending, whatever it was:

Part of btnSaveLO → OnSelect
Status: {Value: "Pending"},

A rejected entry that someone corrects is then waiting for approval again. In the example, a rejected Friday shift was opened from its Edit button, its finish corrected, and saved; it came back as Pending with its new hours.

The Button Isn't the Lock​

Hiding a button only changes the app. Someone with access to the list could still change the item in SharePoint. In the example, the OvertimeEntries list has content approval turned on, so any change made there puts the item back to Pending approval: Build an Overtime Timesheet App in Power Apps — Part 3. The button keeps the app tidy; the list's settings protect the data.

Common Mistakes​

MistakeWhat happensDo this instead
ThisItem.Status <> "Approved" without .ValueA Choice column is a record, not text: Fixed: "Expected Text Value" for a SharePoint Choice Column in Power AppsThisItem.Status.Value
Hiding the button as the only protectionPeople can still change the item in SharePointContent approval, or permissions, on the list
Saving an edit without changing the statusA rejected item stays rejected after it's fixedSet it back to Pending when saving

Troubleshooting​

SymptomLikely causeFix
This formula uses scope… in the preview stripThe formula uses ThisItemExpected; check it in Preview
Approved rows still show EditThe status text doesn't match exactlyCompare with the choice's exact text, such as Approved
Every row hides EditThe formula reads the wrong columnCheck it's the Status column's Value

FAQ​

Why hide the button instead of disabling it?​

A disabled button still takes up the row and suggests it might work later. Hidden, the badge explains the row on its own. Either works with the same condition, in Visible or DisplayMode.

What about the screen that edits the entry?​

It loads the entry fresh by its ID when it opens, so it edits what's in the list now: How to Use One Screen to Add and Edit Items in Power Apps.

Conclusion​

ThisItem.Status.Value <> "Approved" in the Edit button's Visible lets people change an item until it's approved. Set the status back to Pending when an edit is saved, and let the list's settings, not the button, protect the data.

Additional Resources​