View definition access - SmartPlant Foundation - IM Update 46 - Help - Hexagon

SmartPlant Foundation Help

Language
English
Product
SmartPlant Foundation
Search by Category
Help
SmartPlant Foundation / SDx Version
10
SmartPlant Markup Plus Version
10.0 (2019)
Smart Review Version
2020 (15.0)

View definitions group together sets of properties from one of more related objects. The structure of the related objects is defined in the graph definition on which the view definition is built.

View definitions are used to control how objects are presented in the properties grid and for the basis of ad hoc reports. Access to view definitions for ad hoc reports is controlled by related access groups. The view definitions used present an object's details in the properties grid. These details are controlled by relating view definitions to interface definitions and also honoring the interface definition ownership described in the section above.

IViewDef interface

This is the primary interface of the view definition class. It has many properties that are associated with the presentation of the different properties from within the graph definition on which it is based. This is described in more detail in the reporting documentation.

SPFInterfaceDefViewDef relationship definition

This relationship links the view definition to an object interface and is used to determine the view definition for presenting data in the properties grid. There can be more than one view definition related to the interfaces that have an object. For example, in the data warehouse, there may be process view definitions and instrumentation view definitions attached to interfaces on the same object, published by each discipline.

The view definition is determined for presentation as follows.

For each owning group configured on the user’s role, select the view definition of the most specialized interface:

  • If the interface has an owning group that does not match the one on the user's role, this interface (and view definition) is ignored.

  • If the interface has an owning group that matches the one on the user’s role, then this view definition is selected.

  • If the interface does not have an owning group, the view definition is again selected.

By searching for each of the owning groups configured on the user's role, it is possible that more than one view definition is returned in which case these alternative view definitions are available to the user in the properties grid.

SPFViewDefAccessGroup relationship definition

This relationship provides the access control for using the view definition to run an ad hoc report. When the user creates a new report, the reports available for selection are the view definitions with the related access groups that are configured on the user's role.

SPFAdhocReportViewDef relationship definition

When a user runs a report and then saves it, this relationship links the original view definition to the saved report (SPFAdhocReport). Saved reports instantiate the ISPFOwnedObj interface and so can be owned by a user or an owning group. This ownership controls access to the saved reports.

When running a saved report, the system checks that the user has access to the original view definition (based on access group) before the report is run.

In the future, a query filter condition will be configured on the SPFAdhocReport class definition that checks that the access group related to the original view definition is configured in the user's role. At present, this is not possible because the conditions engine does not support the comparison of two sets (access groups on the user’s role and access groups related to the view definition).