Subscription Topics for Basic Apps
There are two standard subscription topics that basic apps can subscribe to:
propertychange = this topic is available if the basic app has input parameters. Basic apps for views added directly to a workspace have input parameters if the mashable or mashup does.
Messages published to this subscription topic update input parameters for the app which refreshes the app’s data. If the topic includes user-defined properties for a chart view, published messages also update the dynamic content in chart captions or labels. You map the published message payload to these input parameters and user-defined properties during wiring.
rowselect = this topic is available for the
DataTable with the mashable or mashup results for the subscribing app.
Messages from the rowselect subscription topic update which row of data in mashable or mashup results is currently flagged as selected in the app’s DataTable. This in turn generally updates the views in the app, allowing them to change their visual properties, if that is appropriate. A grid, for example, may highlight a row to show it is selected or clear highlighting to show deselection.
Generally, MashZone NextGen built-in views with some type of 'click' event also listen for row selection updates in the DataTable. This allows synchronization of row selection across built-in and pluggable views when multiple views are included in one basic app, but also supports synchronization based on subscription messages from other apps.
For example, a user selects one row in a grid. This automatically causes the related slice in a pie to slide out or the related bar in a bar chart to be highlighted.
Pluggable views can also optionally choose to listen for rowselect events in the DataTable.
Note: If you wire a DataTable rowselect published topic from one app to a Datable rowselect subscription in another app in a workspace, you can mimic the automatic row selection behavior of a basic app with multiple views, with some known limitations. Mapping defines the relationship between the rows of results for the two apps.
Known limitations include:
When the DataTable for the subscribing app is paginated, matches to the row identified in a published
rowselect message may be missed if they are not in the current page of results in the DataTable. In this case, nothing happens to the views in subscribing app, making it look like there is no matching row.
If there are multiple rows that match a published selection, only the first match will be affected because the DataTable only tracks one selected row.