Forum Discussion

JonFroderberg's avatar
JonFroderberg
Qrew Cadet
3 years ago

End Of Life For Dynamic Formula Rich Text Queries

Harder Mechanical has learned this week that use of URL query parameters when calling a report (such as in a formula rich text button) is not supported by the new style timeline reports, and is not planned to be supported.  The current solution to see the correctly filtered report is to slide the 'New style' toggle to the off position.

We have also learned from QB that while use of query parameters in a URL string in a formula rich text button is currently functional with new style table reports, this use case will not be supported once the old style table report is retired and the toggle switch removed.

Reference QB Ticket 692460
api guide - Components of a query

QB has not yet provided a timeframe for when URL query parameters will go end-of-life.  The application engineer is working on finding more information.

From a security perspective, we can understand not wanting to allow the use of app or user tokens in a URL that can be seen from a formula rich text button.  However the ability to include query parameters that reference field values on the current record is tremendously useful, and we would be very disappointed to see this feature go away as we have used it extensively throughout our app ecosystem.

There are numerous examples of what can currently be done with formula URLs in the 'Magic Buttons' app by Kirk Trachy that is available from the App Exchange.  How much of this functionality will remain intact?

Reference Magic Buttons - Having fun with formula URLs

One possible solution may be expanding our use of a User Focus table. We were recently introduced to this solution by Mark Schnier (Thank you Mark!) for a specific use case in one of our apps. This would leverage native QB functionality to work around the need to dynamically filter a report in formula rich text.  The downside to this solution is that the user must first click a button to make a particular set of records 'in focus' before accessing them.  And, this will necessitate building a lot of lookups/relationships to make it work.

With the prospect of formula rich text query parameters going EOL, our team has a lot of development work in front of us to maintain our user experience and adoption.

Some things we need from QB:
  • A better understanding of when these features will sunset. (Old style report toggle, formula query parameters.)
  • A better understanding of what will sunset.  (All use of formula URL query, or just certain aspects of it?)
  • What alternative solutions will QB promote to app builders to mitigate/minimize loss of functionality? (Will QB proactively update the Magic Buttons app to show us what will continue to be possible/available?)
We look forward to hearing from QB and the community for ideas and strategies.

------------------------------
Jon Froderberg
PRIME Developer
Harder Mechanical Contractors
https://www.harder.com
Portland, OR
801.946.0576
------------------------------
  • Our team met with Mark Shnier today and we believe he has identified a solution to this issue.  For any values that we would dynamically reference from the formula rich text button, we set those fields up as <ask the user> filter criteria.  Run the report the first time and answer the question which then generates a URL. Then place that URL string into the formula rich text button.

    For example:
    The previous URL was this:
    URLRoot() & "db/" & [_DBID_SCHEDULE_LIBRARY] & "?a=q&qid=40&query={28.EX." & URLEncode ([Related Contract]) & "}AND{145.EX.1}AND{103.XEX.1}&qrppg=500
    We had to reference all the report query parameters as using "&query=" overrides all the report parameters in the native report qid.
    We also found that use of the "&query=" was not honored once the user clicked on the next page of a paginated report, so we had to force more records to be displayed at a time by using "&qrppg=500" or similar large number.

    The new URL looks like this:
    URLRoot() & "db/" & [_DBID_SCHEDULE_LIBRARY] & "?a=q&qid=40&nv=1&v0=" & URLEncode ([Related Contract])
    The parameter "&nv=" is the number of <ask the user> questions (or number of values).
    The parameter "&v0=" is the answer or value to the first question.
    Any values that are non-numeric will need to be URLEncoded.

    We will be updating our dynamic formula rich text buttons to this method.

    ------------------------------
    Jon Froderberg
    PRIME Developer
    Harder Mechanical Contractors
    https://www.harder.com
    Portland, OR
    801.946.0576
    ------------------------------
    • PrashantMaheshw's avatar
      PrashantMaheshw
      Qrew Captain
      Jon,

      Thanks for posting this ! This work through is really helpful to us as well to have all 1 report to be used by all user and allow us to bypass 5 filter limits inside. 

      Plus I just tested this , no pagination issues

      Mark Shnier is an absolute QuickBase genius

      ------------------------------
      Prashant Maheshwari
      ------------------------------