Skip to main content
Question

Formula refresh button issue

  • September 13, 2021
  • 0 replies
  • 56 views

I used to have a refresh button that when clicked will save the record and then open the record in edit mode. This button was using javascript below.

"<a class='Vibrant Success' onclick=$('#RedirectURL').val(document.location.href.replace(/&rl=[a-z0-9]*/,''));$('[name=rl]').val('');$('#saveButton').trigger('click'); href='#'>Refresh</a>"

An alternative is to use below

var text rid = If([Record ID#]>0, ToText([Record ID#]), "%%rid%%");

var text url = URLRoot() & "db/" & Dbid() & "?a=er&rid=" & $rid;

"<a class=\"Vibrant Primary SaveBeforeNavigating\" data-replaceRid=\"true\" href=\"" & $url & "\">Refresh</a>"


But, the issue is when you are editing a child record that is embedded in the parent and do not make any changes to the parent record the browser displays a pop up that "your changes may not be saved". Is there any alternatives to prevent the browser from displaying the popup and automatically save and open the record in edit mode (without using javascript).

------------------------------
Karthik Sekhar
------------------------------
This topic has been closed for replies.

MarkShnierYou
Forum|alt.badge.img+24
I noticed today that I was receiving that pop up in places where I never saw it pop up before I think that you should report this as a bug to the care team and see if they except it as a bug. It's quite possible it never used to behave this way.

------------------------------
Mark Shnier (YQC)
mark.shnier@gmail.com
------------------------------

  • Author
  • Registered
  • November 16, 2021
I was able to finally get a solution from QuickBase. The idea is to have a field in the parent that always gets modified when the record is opened. In order to achieve this every time, you must create a formula text field called "Change From" with the formula ToText(Now()) & ToText(MSecond(ToTimeOfDay(Now()))). Then, create another field called "Change to" which will be a regular text field. Then add a form rule like below.


The value of Change From will always evaluate to the nearest millisecond. This means that the Change To will always get modified whenever you click the Refresh button. The formula for the refresh button is

var text rid = If([Record ID#]>0, ToText([Record ID#]), "%%rid%%");

var text url = URLRoot() & "db/" & Dbid() & "?a=er&rid=" & $rid;

"<a class=\"Vibrant Primary SaveBeforeNavigating\" data-replaceRid=\"true\" href=\"" & $url & "\">Refresh</a>"

------------------------------
Karthik Sekhar
------------------------------