Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The automatic refresh mechanism works by notifying all Business Entities that match the currently updated Business Entity table or custom handling using the RefreshScheme Attribute settings.

If the update/delete/create operations are not done using the Business Entity from the repository then the correct way to handle the refresh is by ClientLogic code, triggering the refresh programmatically for the needed entity tables.

The auto refresh is handled based on refresh schemes.

...


Above is the default Scheme, the refresh will add the BEs Business Entites own entityTable by default and you can add multiple Tables in the refreshScheme.Tables.

...

These params are a comma separated list of table names which will be ignored/skipped upon refresh. Wildcards still work for the skipRefresh lists. If the developer want's to skip all, he/she can add * (star/asterisk).

Code Block
languagejs
titleExample
{
    "Tables": "Table1*,Table2*",
    "AddRepositionTo": "#NewRecord,#KeepSelection", //default reposition to newly created record
    "UpdateRepositionTo":"#KeepSelection,#KeepSelection", // default keeps selection of the selected record
    "RemoveRepositionTo": "#NextRow,#KeepSelection" // default reposition to next available record using #NextRow
    "AddSkipRefresh": "*", // all tables are skipped for refresh on add action
    "UpdateSkipRefresh": "Table2" // Table2 will not be refreshed on update action
}


Starting with SWAT 2020.01 release, also the RepositionToKey parameter was added, to specify what field to use from the BE for the reposition (eg: what record from a grid)

Code Block
languagejs
{  
'Tables': 'Table1*,Table2*',  
'AddRepositionTo': '#NewRecord,#KeepSelection',  
'UpdateRepositionTo':'#KeepSelection,#KeepSelection', 
'RemoveRepositionTo': '#NextRow,#KeepSelection' ,
'RepositionToKey' : 'selfhdl,user_key' 
}

 

Starting with 2020.13, a new parameter refreshConditionCallback is available, support for callback refreshScheme method:


Code Block
languagejs
{
"Tables" : "Table1,Table2", 
"UpdateSkipRefresh": "Table2", 
"RefreshConditionCallback":"akioma.Function_Name(eventSource)"
}