we are moving an existing ZEN-Application to a new version of Caché (2017.2.2). It is a rather old application and we need to do some modifications due to the thightend security of ZEN in this and prior release (we came from 2013.1). One of the changes required is to alter a table Name of a ZEN-Table on the server-side. Anyway this gives us a problem, since we receive an error
ERROR #5001: Client modification of protected property ( tableName) disallowed for security reasons.
SOURCELEMENT: %ZEN.Component.tablePane (tpSimilarity)
The tableName change is triggered from a js method
var table = zenPage.getComponentById('tpSimilarity');
var selectedView = zenPage.getComponentById('SearchType').getProperty('text');
var tSyncMode = zenSynchronousMode;
zenSynchronousMode = true;
zenPage.SetTableName('tpSimilarity', "MyApp_Maps.dyn" + selectedView + "View");
zenSynchronousMode = tSyncMode;
// label name: 'View: <conf>'
table.setProperty("label", "View: " + selectedView);
invoking the ZenMethod SetTableName on the server
pTableName) As %Status [ ZenMethod ]
Set %page.%GetComponentById(pComponent).tableName = pTableName
When view is to be changed we receive the above mentioned error. Is there something wrong in the way we are trying to set the tableName property of the table on the server? How can a change on the server be done?