The Portfolio Structure tab is used to create a hierarchy of nodes or conditions for grouping the data from the DataModel instances. The nodes are organized as a tree that provides embedded or overlapping conditions. The tab is divided into two sections. The left, the Nodes Tree section, contains the Portfolio nodes tree (see the following figure). The right, the Node Properties section, displays tabs with the properties related to a selected node in the tree. 

A plus sign next to a tree node indicates that there is a hierarchy of child nodes hidden from view. This list can be expanded to show more child nodes, which in turn can also have children. In the expanded view, the minus signs can be used to hide the respective lists of child nodes. 

The Portfolio Structure mini toolbar above the tree contains the following buttons: 

Add a new node  adds a child node to a selected parent node. 

Delete selected node(s)  deletes selected nodes from the tree. 

Move up a selected node, Move down selected node  moves up and down a selected child node within the sibling nodes group. 

Find in portfolio(s), Find next, and Find previous  allow you to search for values used in the logical conditions and assigned to the nodes within the open Portfolio object. 

When you click the Find in portfolio(s)  button, a menu appears. This menu contains the following commands. 

Find a node by name searches for a node using the name you enter in the open dialog box. 

Find a field used in condition searches for a condition with the field that you enter in the open dialog box. 

Find shorthand condition searches for an available shorthand condition applied to the Portfolio object using the name you enter in the open dialog box. 

Find a value used in condition searches for a condition with the value that you enter in the open dialog box. 

The Node Properties section contains the Node description text box and two Node Properties panels related to a selected node in the nodes tree (see the following figure). The Node description text box allows you to enter a more detailed description of the node. The two Node Properties panels are used to specify properties for a selected node in the tree. These properties are grouped according to their purpose. Each group is represented by a certain tab. The panels duplicate each other to provide you with a view of two tabs simultaneously. You can change the sizes of the panels by dragging the border between them. You can also collapse or expand either panel by clicking the respective button () located on the border. 

You can use the tabs to add logical conditions to filter the Portfolio data, activate or deactivate the DataModel objects used by the Portfolio object, and specify the node actions for populating additional columns in the resulting Portfolio instances. 

The properties on the Node Properties panel are distributed between the following tabs: Conditions, Inherited Conditions, Models, Actions, Documentation, and Expanded Conditions. 

Conditions sub-tab 

The Conditions sub-tab is used to add condition records to group the Portfolio instance data (see the following figure). The list of condition records is available for viewing and modifying. Each condition record is associated with a node selected in the tree. You need to make a particular worksheet active to manage the corresponding conditions. Each condition is specified with one of the functions predefined by AxiomSL. Initially, the Conditions panel is empty. 

The mini toolbar located at the top of the tab contains the following buttons. 

Insert new condition or grouping  button opens a menu with the list of functions predefined by AxiomSL. The conditions defined by these functions can be applied to the selected node. (For more information about these functions, click the Help on using this screen         button.) 

Delete selected condition  button deletes a selected condition. 

Move up selected condition, Move down selected condition  buttons moves up and down a selected condition record within the Conditions panel. 

Copy Conditions to clipboard  button copies all the node conditions to the Clipboard. 

Copy selected condition to clipboard   button copies a selected condition in the panel to the Clipboard. 

Paste conditions from clipboard  button insert conditions from the Clipboard to the Conditions panel. 

Validate  checkbox (if selected) identifies non-existent values entered in the condition records. If you want to use non-existent values, for example, the infinite margin of a date interval, you should clear the Validate checkbox. 

Help on using this screen  button opens the “Logical conditions” document that describes the condition functions provided by AxiomSL. 

Inherited Conditions sub-tab 

The Inherited Conditions sub-tab displays the condition records inherited by the selected node from its parent node. The inherited condition records are unavailable for modifying. To modify an inherited condition, select the parent node in the tree and open its Conditions sub-tab. The Inherited Conditions sub-tab contains a mini toolbar with the Copy Conditions to the clipboard, Copy selected condition to the clipboard, and Help on using this screen buttons—their purposes are described in the preceding section. 


Models sub-tab 

The DataModel objects on which the Portfolio object is based (specified on the Models tab) are displayed on the Models sub-tab of either Node Properties panel. The DataModel objects displayed on the Models sub-tab can be deactivated, i.e. excluded from the Portfolio execution process. To deactivate a DataModel object, clear the checkbox next to the name of the desired object. Deactivated DataModel objects are not displayed on the Models sub-tabs of the child nodes. 

Actions sub-tab 

The Actions sub-tab is used to assign Actions to additional columns in the resulting Portfolio instance. ASL expressions, SQL macros, or various values can be specified in the Actions properties depending on what data you want the additional columns to display. Actions can also refer to the DataSource instance columns directly. To apply an Action, add an Additional Column on the Additional Fields tab prior to assigning the action on the Actions sub-tab. The Actions sub-tab contains a table and a mini toolbar with a standard set of buttons for adding and deleting rows in the table. To create an Action, add a row with the help of the Add row or Insert row buttons and specify the Action properties in the added row. 

Action specifies the SET or UPDATE method applied with an SQL statement with references to the columns of either the DataSource instance or the resulting Portfolio instance. In most cases, SET and UPDATE methods can be used interchangeably. However, SET should be selected if the Action refers to a column from the original DataSource instance and the Long_queries execution algorithm is applied for the Portfolio object. UPDATE should be selected if the Action refers to Additional columns or levels generated during the Portfolio task execution. 

Destination Table allows you to select the destination table where you want the Action to be applied. 

PORTFOLIO should be selected if the Action is applied to an Additional field or level generated in the resulting Portfolio instance. 

SOURCE DATA should be selected if the Action is applied to a DataSource column within the DataModel instance. 

Destination Column allows you to specify a column to which you apply the Action. The combo box list depends on the item you have selected from the Destination Table combo box list. 

If PORTFOLIO is selected, all the fields—additional columns and levels generated in the resulting Portfolio instance—are displayed in the combo box list. 

If SOURCE DATA is selected, the combo box list displays all the DataSource columns within the underlying DataModel instance. 

Source Expression allows you to enter ASL expressions or SQL statements (e.g. ‘CASE WHEN’) to perform various actions upon the column data. You can also indicate which data you want to be displayed in the specified destination column. (The Lookup button opens the Select the column dialog box to select an existing column.) 

Destination Condition allows you to apply conditions to the specified destination column in the resulting Portfolio instance. (The Lookup  button opens the Condition Dialog box in which you can specify predefined AxiomSL conditions to group the column data.) 

Documentation sub-tab 

The Documentation sub-tab is used to enter additional information associated with the selected node. 

Expanded Conditions sub-tab 

The Expanded Conditions sub-tab displays the logic schema of the inherited and shorthand conditions applied to the Portfolio object. 

Expand conditions for model combo box is used to display the Shorthand conditions associated with a selected node. When the Expanded conditions sub-tab is selected, the combo box appears blank by default. To display the Shorthand conditions, select a DataModel used by the Portfolio from the combo box list. 

Include inherited conditions option button displays the Shorthand conditions associated with the inherited nodes of the currently selected node when ‘Yes’ is selected. 

Copy conditions to clipboard button copy all the node conditions to the Clipboard. 

Copy selected condition to clipboard  button copies a selected node condition to the Clipboard.