Discussion Templates

The Secure Social Messaging Subsystem allows the end user to post secure messages in the context of Innovator Items, reply to secure messages to create Secure Message Threads, and aggregate secure messages and/or history events into Discussions.

When an end user opens the Discussion Panel in an item window, the user sees Secure Messages which are either entered by other users or which come in an automated way from History records. Each discussion represents a set of Secure Messages aggregated from various Boards directly or through other discussions (recursively).

The administrator has the capability to aggregate the secure messages in this discussion panel by configuring the Discussion Template of the associated ItemType.

The aggregation of the Secure Messages occurs based on either DiscussionTemplate associated with the item’s ItemType or DiscussionDefinition associated with the item.

When an ItemType is enabled for social content, it has at least one DiscussionTemplate associated with it. The administrator has the capability of configuring the DiscussionTemplate of an ItemType or the DiscussionDefinition associated with the item.

The DiscussionTemplate is a relationship type with ItemType as its source. The DiscussionTemplate serves the following purposes:

  • Defines Feedsthat are used for aggregating Secure Messages and History records for items of this type.
  • Defines FileSelectorsthat are used for finding Filesassociated with the items of this type.
  • An administrator can make configurations to the DiscussionTemplateby doing the following:

  1. Login to Aras Innovator as an administrator.
  2. Go to Contents --> Administration --> ItemTypes.
  3. Run the search and open an ItemType, for example Document ItemType, for edit.
  4. Select the SecureSocial tab.
  5. Click the New Discussion Template

    button in the Relationship toolbar to add a new DiscussionTemplate in the relationship grid.

  6. Click the Class Path box and then click the ellipses to access the classification dialog box.
  7. Highlight the appropriate class path and click

    to select and add it to the new DiscussionTemplate.

  8. Right-click the DiscussionTemplate and select Secure Social --> Open from the context menu.
  9. This opens the item tear-off window for the DiscussionTemplate.

    Click

    to modify the properties provided in the DiscussionTemplate item tear-off window as required. Refer to Table 3 for the properties of the DiscussionTemplate along with its description.

DiscussionTemplate properties

Property Description
Class Path (string: 512) Classification for which the DiscussionTemplate would serve as the default template (is_default = true).It is a single template for a particular classification.
File Selection Depth (int; default: -1) This property defines the depth of the recursion in case of recursive message aggregation.The value “-1” means – no restriction.
Item Selection Depth (int; default: -1) This property defines from how many levels of recursion to collect files for viewing in the UI in case of recursive message aggregation.The value “-1” means – no restriction.
Default Visibility Identity (item: Identity) Identity to be used as the default shown in the Share with selector.A blank value means World.See section 7.1 for more details.
Message Visibility Supported (boolean) if ON, the Share with selector is exposed in the Discussion Panel of any items of the given ItemType. If OFF, the selector is not exposed, and all messages are set to visibility = World.See section 7.1 for more details.
Feed Template Tab The Feed Template tab defines Feeds and FileSelectors that are used for aggregating Secure Messages and History records for items of this type.For more information about the Feed Template, refer to .
DiscussionTemplateView Tab The DiscussionTemplateView Tab defines options to change the Secure Message template style. For more information about the DiscussionTemplateView, refer to .

A Feed is a function that returns a set of Secure Messages or History records associated with a set of items. Each Feed Item essentially represents a function.

A single FeedTemplate with the following default properties already appears in the Relationship grid:

  • Feed Type: Board
  • History Events: null
  • Reference: this
  • Polysource type name: null
  • Use the following procedure to make changes to the FeedTemplate:

    Click

    in the Relationship Toolbar to add a new FeedTemplate in the relationship grid.

  1. Click the down arrow in the Feed Type column and select the appropriate Feed Type from the dropdown list.
  2. Enter the appropriate Reference type in the Reference field.
  3. Right-click the FeedTemplate in the Relationship grid and select FeedTemplate --> Open from the context menu. This opens the FeedTemplate Item tear-off window.
  4. Click

    to modify the properties provided in the FeedTemplate as required. Refer to table 4 for the properties of the FeedTemplate along with its description.

FeedTemplate Properties

Property Description
Feed Type There are two types of Feed:Board: if this Feed Type is selected; it means that the Secure Messages (and History records) will be aggregated from Boards of items that are referred by reference property.Discussion: if this Feed Type is selected, it means that for each item referenced by reference property, Aras Innovator executes all Feeds for the Item’s DiscussionTemplate. It allows performing recursive aggregation of Secure Messages and History records from a hierarchical structure of items.
History Events (string:512) This property is used to aggregate History actions on an item together with the Secure messages. The syntax of History Events is (“|”) separated by a list of Configurable History Events. For example, “Add|Update|Promote”If the property value is “*” (asterisk wildcard) then all history records are aggregated. If the property value is blank, then no history records are aggregated.The property cannot be set for Feeds of Type Discussion.
Reference (text) This property is used to aggregate secure messages depending on the Reference property of an Item.The syntax of the reference is: reference = this | property | relationshipPath(property) | AMLproperty = Name of the property of type Item.relatinshipPath - relationshipName | relationshipName/relationshipPathrelationshipName - Name of a Relationship TypeAML = {valid AML with single top level Item that has action=”get | {custom method}”}Following are examples of few valid references:thisp1R1(p1)R1/R2/R3/R4(p1)<Item type=”CAD” id=”…” action=”get” />
Polysource type name This defines from what specific polysource type the Feed must aggregate Secure Messages. This property is set only when the reference of the Feed refers to a polyitem (For example, a Feed on the DiscussionTemplate for an ItemType Project has the reference=Project Docs(related_id) which references the deliverable which is a polyitem with out-of-the-box polysource Document).Defining a polysource is essential in case the Feed has at least one FileSelector, as a different polysource of the same Polymorphic itemtype can have different properties of type item with the data source file in their structure.
FileSelectorTemplate Tab Selecting this tab displays a .

VC has the capability to associate one or more FileTypes with an item to allow an end user to view files using the appropriate file viewer. This is a template for creating FileSelector relationships when Feed is created based on a FeedTemplate.

In the case of the Document ItemType as shown here, a single FileSelectorTemplate with default properties is already added in the Relationship grid:

  • Filter […]
  • Reference […]
  • Tooltip Template
  • Use the following procedure to make changes to the FileSelectorTemplate:

    Click

    in the FeedTemplate page.

    Click

    in the FileSelectorTemplate Relationship Toolbar to add a new FileSelectorTemplate in the relationship grid.

  1. Right-click the FileSelectorTemplate in the Relationship grid and select FileSelectorTemplate --> Open in the context menu.
  2. This opens the FileSelectorTemplate Item tear-off window.
  3. Modify the properties of the FileSelectorTemplate as required. Refer to Table 5 for the properties of the FileSelectorTemplatealong with its description.

FileSelectorTemplate properties

Property Description
Filter (text) This allows selecting required files based on their FileType(s) and filter out files of undesired types.It is indicated by “|” separated by a list of FileType Ids.If the property is not set, then Files of any types from which there is appropriate Viewer built-in can be selected.Lists of FileTypes already assigned to standard Innovator ItemTypes are shown in .
Reference (text) This property is used to select the files selected by appropriate FeedTemplate. The required files are selected from its own item files that belong to its relationships.The syntax of the reference is:reference = property | relationshipPath(property)property = Name of property of type ItemrelationshipPath = relationshipName | relationshipName/relationshipPathrelationshipName = Name of a Relationship TypeFollowing are few examples of valid References:p1R1(p1)R1/R2/R3/R4(p1)
Tooltip Template (string:128) It is a template for the tooltip. This tooltip is displayed when the user points the mouse over the appropriate file aggregated on sidebar.The tooltip template consists of a parameterized syntax with attribute or property name in it. For instance:File ${File:filename} from ${ItemType:label} ${Item:keyed_name} – This template is used to display the keyed name of the “markup” holder item.

The DiscussionTemplateView tab defines the secure message template styles and tooltip templates for the secure messages.

One DiscussionTemplateView with default properties is added to the Relationship grid:

  • Discussion panel behavior
  • Form tooltip template
  • SM template
  • Name
  • Client (“View Client” list)
  • To make configurations to the DiscussionTemplateView, do the following:

    Click

    in the Relationship Toolbar to add a new DiscussionTemplateView in the relationship grid.

  1. Right-click on the DiscussionTemplateView in the Relationship grid and select View SSVCPresentationConfiguration from the context menu.
  2. This opens the SSVCPresentationConfiguration Item tear-off window.
  3. Modify the properties provided in the SSVCPresentationConfiguration as required. Refer to Table 6 for the properties of the SSVCPresentationConfigurationalong with its description.

SSVCPresentationConfiguration properties

Property Description
Discussion Panel Behavior This indicates the default behavior of the discussion panel. This indicates whether the Discussion Panel is automatically displayed or not when the user opens the tear-off window
Form Tooltip Template (string:128) It is a template for the tooltip of the Item’s Form.The tooltip template consists of a parameterized syntax with the attribute or property name in it. For instance:"${ItemType:label} ${Item:keyed_name}" where keyed_name is property. This is the default value specified.“Form of ${@id}" where id is an attribute.
SM Template This gives a reference to the Secure Message Template used to display Secure Messages in the Discussion Panel. For more information, refer to .

This template defines the style and template used to display the Secure Messages in the discussion panel.

Modify the properties provided in the SecureMessageViewTemplate as required. Refer to Table 7 for the properties of the SecureMessageViewTemplate along with its description. SecureMessageViewTemplate properties

Property Description
Style (text) This indicates the specific styling of the client. For example, CSS or XAML.
Template (text) This is a template that is responsible for creating Secure Messages “mark-out”. For example, JS or XAML.
Thumbnail Tooltip Template (ml_string:128) This is a template for the thumbnail tooltip shown in the secure message. The tooltip template consists of a parameterized syntax with the following attribute/parameters in it:"markup holder” itemfile from which thumbnail was madethe SecureMessageMarkup itselfdata from the SecureMessageMarkup.markup_data For instance:File ${File:filename} ${SecureMessageMarkup:markup_data(//page)} from ${Item:@type} ${Item:keyed_name}
Note
Because of difference between Windows and Linux file systems it is required to use OS-specific path separator in paths. Remember that Linux file system is case sensitive so file names “./path/to/file.xml” and “./path/to/File.xml” are different. For more information about cross-platform development please see section 2.3 Cross-platform development in Aras Innovator 30 - Programmer’s Guide document.

An administrator can configure the DiscussionDefinition of an individual item that is based on the DiscussionTemplate. This is used when a user (administrator) explicitly expressed a desire to change how the Secure Messages are aggregated for that item. In case the user wants to change at least one of Feeds that is associated with the DiscussionTemplate for this item. Thus, two items of the same ItemType can have discussions that are differently defined. To change the settings in the individual item using DiscussionDefinition, do the following:

  1. Open an instance of an item that has been enabled for Secure Social.
  2. Click on Actions from the Item toolbar and select Change Discussion Definition.
  3. This opens the DiscussionDefinition item tear-off window.

  4. Modify the properties of the Feed tab to have multiple feeds used to aggregate secure messages in the discussion panel. For more information about the configurations that can be made in the Feed tab, refer to FeedTemplate.
  5. Modify the properties of the DiscussionDefinitionView tab to change the style, template and behavior of the Discussion Panel. For more information about the configurations that can be made in the DiscussionDefinitionView tab, refer to DiscussionTemplateView.
  6. Click

    and

    to close the window.