+2 votes

Dear All,

I was looking at code modification between Efficy 11.2 and Efficy 11.3 and I remarked that the RunQuery Function Tags has new Arguments :

update="Acti"
expires="10"

Full exemple from MacroWidget.txt

<%RunQuery("Todo", master="32", detail="1", update="Acti", expires="10", param1="today", param2="1", param3="%%GetUserKey()")%>

Expires is quite clear, if I am correct the queryHandle expire after 10 minutes in our example.
But I don't understand the update Argument, can anyone explain it, I could not find any documentation in EDN from this?

asked in Efficy/ Client side by (1.9k points)
They are indeed not documented in https://help.efficy.com/edn/tags#RunQuery
In the relase history, there is this line:
Queries: Allow caching of <%RunQuery()%> results with expiration after N minutes and refresh after update of entity.

So, the update="Acti" might imply that the cache is invalidated as soon as an Action gets updated

1 Answer

+2 votes
Best answer

This is a new query caching feature that can have a big impact on performance.
Apparently the documentation hasn't made it to the EDN folder yet :(.
Below the explanations that will appear:

expires
Integer
default value: "0"
Introduced in Efficy 11.3
The expiration time in minutes of the query results. By default 0, which means that the query result is not cached.
Specify a value to cache the query result for improved performance.

update
Introduced in Efficy 11.3
If the query is cached (expires not 0), invalidate a result stored in cache if a change (create, update or delete) is performed by the user on this entity.

answered ago by (1k points)
selected ago by
1,193 questions
1,459 answers
1,758 comments
327 users