# 🆕 Action to open Edit screen

**URL:** <https://community.glideapps.com/t/action-to-open-edit-screen/29468>\
**Category:** Ask for Help\
**Created:** [July 23, 2021, 8:09am UTC](https://community.glideapps.com/t/action-to-open-edit-screen/29468 "2021-07-23T08:09:50Z")\
**Posts on this page:** 6\
**Page:** 2

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [July 27, 2021, 11:50am UTC](https://community.glideapps.com/t/action-to-open-edit-screen/29468/21 "2021-07-27T11:50:31Z")

</div>

These are great ideas, I’m writing my ideas out to see potential challenges.

> [@Gregory](#):
>
> allowing only one editor at a time, by locking the edit button

Add an action to set the user’s email to a global column. Only allow going to the edit screen when that column is empty or that column is the signed-in user.

However, if I recall right, the “on submit” action of the edit screen does not work with the “cancel” button. If you go into the edit screen and decide to cancel the edit process then that email column never gets cleared.

> [@Gregory](#):
>
> a changelog for app users: copying data when Edit Screen is opened, and comparing this data to new data after submitting to identify changes.

If the data is not too big then we can theoretically use a set column to copy all global columns to a set of columns under the “column folder” Log, then after the edit you can do a comparison.

Other way is add a new row to a new Sheet and compare data to the last line of that sheet (retrieved through last row using single column). However it will cost a lot of rows.

---

<div class="post-metadata">

**Author:** ![Gregory](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/gregory/32/21180_2.png) [@Gregory](https://community.glideapps.com/u/Gregory)\
**Post date:** [July 28, 2021, 4:38pm UTC](https://community.glideapps.com/t/action-to-open-edit-screen/29468/22 "2021-07-28T16:38:16Z")

</div>

Thanks for the jumpstart @ThinhDinh

I came up with [a solution for the changelog](https://successful-geese-0374.glideapp.io/) (not yet for locking the edit button, which requires a timeout with math and date columns). Feel free to copy this app.

It relies on a “temp” sheet, in which every user gets two rows, once signed up (“add rows” during sign-up is not implemented yet).  
Every sheet, for which changes should be tracked, needs to have two [looked-up arrays](https://community.glideapps.com/t/rollups-single-values-and-joinlists-from-arrays/29634) and two many-to-one relations to these two above mentioned “user-specific” rows in “temp”.

Every “open edit screen” action sets the first “user-specific” row in “temp”. Every “on submit” action sets the second “user-specific” row. The comparison between those two rows is made through single value, ITE and template columns in the “temp” sheet. “[Set column actions](https://community.glideapps.com/t/set-column-action-alter-a-different-sheets-values/18342)” work through the above mentioned relations.

You can monitor as many columns as you like (I implemented 4: A, B, C, D). Best is to have different columns per data type (not implemented yet).  
This solution with 2 user-specific rows in temp is not sensitive to cancelled edit screens, since the first row will always be overwritten once an edit screen is opened.

Let me know what you think. Improvements/feedback are welcome!

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [July 29, 2021, 12:21am UTC](https://community.glideapps.com/t/action-to-open-edit-screen/29468/23 "2021-07-29T00:21:41Z")

</div>

That’s a good start!

I tried a bit with replacing the Cancel text with my own text but haven’t succeeded ☹ Can’t put a customized div in front of the top bar without breaking something else.

---

<div class="post-metadata">

**Author:** ![Test\_Test](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/test_test/32/30930_2.png) [@Test\_Test](https://community.glideapps.com/u/Test_Test)\
**Post date:** [January 2, 2022, 3:25pm UTC](https://community.glideapps.com/t/action-to-open-edit-screen/29468/24 "2022-01-02T15:25:54Z")

</div>

> [@Gregory](#):
>
> I came up with [a solution for the changelog](https://successful-geese-0374.glideapp.io/)

Hi @Gregory ,  
Great job with this app. I tried to play with it and it did “catch” the fact that I changed something, but I couldn’t see the change itself, or a before/after comparison. In any case, it seems that this solution is rather cumbersome. Has anyone thought of another approach to logging all changes?

> [@Mns\_Glide](#):
>
> After edit, you still need to go to top right to click on “Done”, correct?

well, not sure. I tried to edit some forms and when you press “back” the changes are already implemented in the data. Not sure if this is a planned behavior or if I have something misconfigured.

Thanks

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [January 3, 2022, 12:27am UTC](https://community.glideapps.com/t/action-to-open-edit-screen/29468/25 "2022-01-03T00:27:25Z")

</div>

> [@Test\_Test](#):
>
> Has anyone thought of another approach to logging all changes?

One approach I can think of is using a form instead of an edit screen. However, it’s still cumbersome.

Let’s say your data has only one column and you “submit” a new value for it through the form. The form writes a row to the new Sheet with that column’s “current” value and “new” value. Then the “on submit” action would do a set column back to the original row to save the change.

---

<div class="post-metadata">

**Author:** ![Gregory](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/gregory/32/21180_2.png) [@Gregory](https://community.glideapps.com/u/Gregory)\
**Post date:** [January 3, 2022, 9:24am UTC](https://community.glideapps.com/t/action-to-open-edit-screen/29468/26 "2022-01-03T09:24:46Z")

</div>

Hi @Test_Test

coincidentially, I progressed the last few days on this feature and made a new version for you:

> [@In-app Change Log / History](https://community.glideapps.com/t/in-app-change-log-history/36619):
>
> Hi Gliders, since I experimented with version 1 in July 2021, I found tremendous support by @Darren_Murphy with [custom forms](https://community.glideapps.com/t/how-do-i-create-a-custom-form/25014)@Manu.n 's CSS magic to introduce nice [looking sections](https://community.glideapps.com/t/beautiful-design-app/16191/623) the Glide’s team developing hyperformula and can give something back today: It uses user specific columns for drafting changes (all users can make their own draft in parallel, so you don’t need to restrict access to the custom form) hyperformula =EXACT(A1,A2) to check if changes were made 2 relations and…

The old version of the app is broke, since I worked on it to improve it (and made no copy for that). I’ll delete it.

[Previous page](https://community.glideapps.com/t/action-to-open-edit-screen/29468.md?page=1)
