Oracle® Agile Product Lifecycle Management for Process

Hierarchy Navigator Solution Pack

Extensibility Pack 3.5
E42101-01

  

 

  

 

August 2013

 

 

 

 

 

 

 

 

 

 

 

Oracle_Logo_485C.jpg                                           00104BF0Macintosh HD                   BE05FFEF:

 


Copyrights and Trademarks

Agile Product Lifecycle Management for Process

Copyright © 1995, 2013 Oracle and/or its affiliates. All rights reserved.

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

This software or hardware and documentation may provide access to or information on content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.

 


Contents

Preface.. 6

Audience. 6

Variability of Installations. 6

Documentation Accessibility. 6

Access to Oracle Support 6

Software Availability. 6

Hierarchy Navigator.. 7

Purpose. 7

Overview.. 7

Installing the Hierarchy Navigator.. 8

Database Setup. 8

Application Installation. 9

Assigning User Roles. 9

Accessing the Hierarchy Navigator.. 10

Linking to Hierarchies (URLs) 10

View Options. 10

Read Only View of the Specification(s) 10

Editable View of the Specification(s) 11

Display Just the Hierarchy. 11

Using the Hierarchy Navigator.. 11

Navigator Control 12

Hierarchy Navigator Panel 12

Display Options. 14

Applying Filters. 15

Key Data Points. 17

Hierarchy Data Accuracy.. 17

Security and Visibility.. 19

Hierarchy Navigator Settings.. 19


Extending Hierarchy Navigator.. 20

Display Options (Identity) 20

Example. 20

<Identity> Attributes. 21

<Identity/Retriever> Attributes. 21

Creating an Identity. 21

Example. 21

Sort Options (SortBy) 22

Example. 22

<SortBy> Attributes. 23

<SortBy/Retriever> Attributes. 23

Creating a SortBy. 23

Example. 23

Filters. 24

Example. 24

<Filter> Attributes. 25

<Filter/Retriever> Attributes. 25

Creating a Filter 25

Example: 25

Context Menu. 26

Example: 26

<MenuItem> Attributes. 26

Variables. 27

Creating a Context Menu Item.. 27

 


Preface

Audience

This guide is intended for client programmers involved with integrating Oracle Agile Product Lifecycle Management for Process. Information about using Oracle Agile PLM for Process resides in application-specific user guides. Information about administering Oracle Agile PLM for Process resides in the Oracle Agile Product Lifecycle Management for Process Administrator User Guide.

Variability of Installations

Descriptions and illustrations of the Agile PLM for Process user interface included in this manual may not match your installation. The user interface of Agile PLM for Process applications and the features included can vary greatly depending on such variables as:

§  Which applications your organization has purchased and installed

§  Configuration settings that may turn features off or on

§  Customization specific to your organization

§  Security settings as they apply to the system and your user account

Documentation Accessibility

For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.

Access to Oracle Support

Oracle customers have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.

Software Availability

Oracle Software Delivery Cloud (OSDC) provides the latest copy of the core software. Note the core software does not include all patches and hot fixes. Access OSDC at:

http://edelivery.oracle.com


Hierarchy Navigator

Purpose

This guide describes how to install, configure, and use the Hierarchy Navigator Solution Pack.  Solution packs are designed to be pluggable modules that can be added to the Agile PLM for Process application suite without modifying the existing release code base.

Overview

The Hierarchy Navigator is a tool that allows you to see the entire specification hierarchy in one view. This solution pack requires the hierarchy denormalization service to be installed. Once installed you can launch the hierarchy navigator by using the Navigator icon .  The hierarchy navigator tool is available on GSM specifications, SCRM companies, facilities and sourcing approvals

Figure 1.        Trade Hierarchy

Figure 2.        Formulation Hierarchy


Installing the Hierarchy Navigator

Note: Before installing the Hierarchy Navigator, you must have Oracle Agile PLM for Process 6.1.1.1.0 and the Hierarchy Denormalization Service installed.  See the Agile Product Lifecycle Management for Process Hierarchy Denormalization Guide for more information around installing Hierarchy Denormalization.

 To Install the Hierarchy Navigator:

1.    Unzip the contents of Extensibility Pack 3.5.

2.    Unzip the contents of the SolutionsPack\HierarchyNavigator\HierarchyNavigator.zip file and note the location.

Database Setup

1.    Create a backup of the Prodika database.

2.    Apply the database scripts.

a.    SQL Server

                                  i.    Open a command prompt and navigate to the directory where you unzipped the solution pack.

                                 ii.    Change directories (cd) to the Database directory.

                                iii.    Apply the scripts using the following calls to the ApplyScripts.exe utility:

ApplyScripts –c "server=<database_server>;uid=<user>; password=<password>;database=<database>" –f HierarchyNavigator.xml

                               iv.    After the ApplyScripts call, you can confirm that the database scripts have been applied successfully when the system prompts you with the following message: "Complete – with no errors".

b.    Oracle

                                  i.    Open a command prompt and navigate to the directory where you unzipped the solution pack.

                                 ii.    Change directories (cd) to the Database directory.

                                iii.    Apply the scripts using the following calls to the ApplyScripts.exe utility:

ApplyScripts –c "User Id=<user>;Password=<password>; Data Source=<datasource>" –dbvendor="orcl" –f HierarchyNavigator-orcl.xml

                               iv.    After the ApplyScripts call, you can confirm that the database scripts have been applied successfully when the system prompts you with the following message: "Complete – with no errors".

Application Installation

1.    Run the HierarchyNavigator.exe file from the location where you unzipped the solution pack and follow the onscreen instructions to install the necessary files to your specified PLM for Process directory. 

A backup folder called SolutionPackBackup is created during the installation to facilitate the uninstall process. Inside of that folder, a new folder called HierarchyNavigator is created to hold the files that were changed during the installation.

2.    OPTIONAL: Update the <prodika_home>\config\extensions\HierarchyNavigatorConfig.xml file if you want to modify the default values for HierarchyNavigatorAverageDenormTimePerRequest, HierarchyNavigatorDefaultExpandedLevels, HierarchyNavigatorMaxExportItems, and HierarchyNavigatorMaxExpandItems.

§  HierarchyNavigatorAverageDenormTimePerRequest: The estimate duration of each denorm request in seconds.

§  HierarchyNavigatorDefaultExpandedLevels: Decides the default number of levels that will be expanded when the navigator is opened.

§  HierarchyNavigatorMaxExportItems: Decides the max amount of items that will be included in the hierarchy export file. Values greater than 300 are unsupported.

§  HierarchyNavigatorMaxExpandItems: Decides the max amount of items that expand all button can be used.

Here is an example of what this would look like:

<HierarchyNavigatorSettings configChildKey="key">

                <add key="HierarchyNavigatorAverageDenormTimePerRequest" value="3"/>

<add key="HierarchyNavigatorDefaultExpandedLevels" value="2"  />

<add key="HierarchyNavigatorMaxExportItems" value="300" />

<add key="HierarchyNavigatorMaxExpandItems" value="300" />            

</HierarchyNavigatorSettings>

 

3.    Restart IIS.

4.    Login to the application.

 

Assigning User Roles

Users must have the new role [Hierarchy_Navigator_Viewer] to access the hierarchy navigator.


Accessing the Hierarchy Navigator

Once installed you can launch the hierarchy navigator by using the Navigator icon  in the action menu or by selecting Tools > Hierarchy Navigator.

Figure 3.        Accessing the Hierarchy Navigator

     

Linking to Hierarchies (URLs)

You can also access the Hierarchy Navigator using the following URLS.  These URLS can be used to link hierarchies as a URL supporting document to objects like NPD activities, NPD projects and GSM activities.

http://<localhost>/gsmview/webcommon/hierarchynavigator/HierarchyNavigatorRedirector.aspx?SpecNum=<SpecNumber-VersionNumber>

http://<localhost>/scrm/webcommon/hierarchynavigator/HierarchyNavigatorRedirector.aspx?EntityID=xxxxxxx

Note: Applications currently supported are GSM (GSMView) and SCRM only.

View Options

There are different ways you can view a hierarchy. There are different recommendations depending on where you are launching the URL from.

Read Only View of the Specification(s)

Use the GSMVIEW application. This is recommended when launching a hierarchy from another GSM object. Agile PLM for Process does not support having multiple specifications open in edit mode at the same time in the same session. Example: http://<localhost>/gsmview/webcommon/hierarchynavigator/HierarchyNavigatorRedirector.aspx?SpecNum=xxxxxxx-xxx

Editable View of the Specification(s)

Use the GSM application. This URL should only be used when launching a hierarchy from another application besides GSM. Agile PLM for Process does not support having multiple specifications open in edit mode at the same time in the same session.  http://<localhost>/gsm/webcommon/hierarchynavigator/HierarchyNavigatorRedirector.aspx?SpecNum=xxxxxxx-xxx

Display Just the Hierarchy

This is a view of just the hierarchy without the active specification open. Add &popup=true to the end of the URL. Example: http://<localhost>/<App>/webcommon/hierarchynavigator/HierarchyNavigatorRedirector.aspx?SpecNum=xxxxxxx-xxx&popup=true

Using the Hierarchy Navigator

The navigator is a control that floats on top of the active object on the right.  In the example below the navigator was launched from the “Mini Cakes – Sweet Spice” formulation specification. You can then use the hierarchy to navigate to individual specifications. In the example below the “Vanilla Extract” material specification is open while the “Mini Cakes – Sweet Spice” hierarchy is still presented. Notice how the open specification appears bolded letting you know where exactly you are within the hierarchy.

Figure 4.        Formulation Hierarchy Example

 


 

Navigator Control

The Navigator control contains the hierarchy navigator panel. The navigator control can be minimized and closed using the icons on the navigator header. The control can also be resized. 

Figure 5.        Navigator Header

Action

Description

Auto Hide

 

 

By default when open the navigator control is always shown. Since the navigator floats above the active object you may want to set the panel to auto hide. You can do this by selecting the pin icon  and unpinning the control. Once unpinned the navigator control will auto hide and a navigator tab will appear. Hover over the tab to re-open the panel.

Minimize

You can also minimize the panel by selecting the minimize icon .  This will minimize the panel and display the Navigator tab. Hover over the tab to re-open the panel and you’ll notice it has kept the pinned state.

Close

You can close the panel by clicking the close icon

Resize

You can resize the control by hovering over the left border of the control. Once the mouse turns into a resize cursor System:private:var:folders:pf:ph78kwvn1_13pjgbz4kcxb180000gn:T:TemporaryItems:images.jpeg you are able to drag the control to be wider or narrower. 

 

Hierarchy Navigator Panel

The Navigator panel displays inside the navigator control under the Hierarchy Navigator header.  This panel has many options that can be used to adjust how the hierarchy is displayed and which data is shown.   

Figure 6.        Hierarchy Navigator Panel

 


 

Action

Description

Display Options

 

 

Adjust how the tree is sorted and displayed by selecting specific display options using the display options icon   See the Display Options section below for more information.

Filters

Filter data within the tree by selecting filter options using the filter icon  When filters are applied the icon will appear blue.  See the Applying Filters section below for more information. 

Refresh

Refresh the tree to return the latest data available by selecting the refresh icon

Export

Export the hierarchy as an excel file by selecting the export icon  

The export includes Level, Object Type, Object Name, Object Number, Status, Preferred Equivalent, Short Name, Owner and Subtype. The export also includes a hierarchy column, which displays the hierarchy nodes based on the display options you have selected at the time of export.

Expand All

Quickly expand all nodes in the hierarchy by selecting the expand all icon

Note: if the hierarchy is larger than 300 items this functionality will not be available.

Collapse All

Quickly collapse all nodes in the hierarchy by selecting the collapse all icon

    

Display Options

You can customize your own Hierarchy view. Select the Display Options Icon to adjust node display as well as sort order.

The following Display Options are available:

§  Object Name – Displays the object title

§  Object Number – Displays the system number

§  Status – Displays the object’s status

§  Equivalent – Displays the first preferred cross-reference Equivalent found

§  Short Name – Displays the object’s short name

§  Owner – Displays the current owner

§  Sub Type – Displays the sub type if one is applicable. For example, Trade Item Type of Consumer Unit versus Traded Unit.

You can also adjust the sort order of nodes. You can sort nodes in ascending or descending order based on the following attributes:

§  Object Name

§  Object Number

§  Status

Display options are stored on the server so when you log back into the system they will be remembered.

Display Options are extensible.  See the Extending Hierarchy Navigator section for more information

Applying Filters

You can filter the hierarchy to only show data you are interested in. You can filter the hierarchy by the following options:

  • Object Type – This is a great way to see only the object types you are interested in. For example, if you deal only with packaging you can display all packaging specifications for a specific hierarchy. You can quickly see the entire supply chain for your entire product hierarchy.
  • Status – This is a quick and easy way to check if your entire hierarchy is approved.  
  • Alternates – By default alternates are shown.  However, this filter allows you to show/hide alternates within your hierarchy.

These filters are reset when you open a new hierarchy.  

Filters are extremely powerful.  Below are some examples of how they can be used to provide powerful views.


 

 

Figure 7.        Quickly see all Suppliers for an entire Product Hierarchy

 

 

Figure 8.        Quickly see all materials for a product hierarchy that aren’t in an approved status

 

 

Filters are extensible.  See the Extending Hierarchy Navigator section for more information.

Key Data Points

Some data within the hierarchy is displayed differently even though it is the same object type.

Alternates

Alternates are displayed in italics. Notice “Imitation Rum Extract” and “Frozen Whipped Cream Icing” in the figure on the right. You can show and hide alternates using the Alternates Filter. 

Outputs

Outputs appear with a different icon than a material specification. Notice “Frozen Whipped Cream Icing”, “Whipped Cream Icing” and “Whipped Cream Waste” in the figure on the right.

Secondary Outputs aren’t always shown in all hierarchies. When looking at a formulation hierarchy all of the outputs of the formulation are displayed, including Alternate outputs (shown in italics).  Notice in “Frozen Whipped Cream Icing” is an alternate output for the “Whipped Cream Icing” formulation.

When looking at a formulation hierarchy through a trade hierarchy, output hierarchy or intermediate formulation hierarchy the additional outputs of the formulation are not shown. 

Hierarchy Data Accuracy

Generally if you are reading approved hierarchies the data will always be accurate since there is little to no change happening. However when actively editing and building hierarchies you will experience different levels of accuracy. The hierarchy displayed in the navigator is pulled from the hierarchy denormalization data. When this data is updated depends on your configuration setting. By default this data is updated every 2 minutes. The system will display messages to help you determine the accuracy of the hierarchy.

When you select the Refresh icon the system will detect if the current hierarchy tree is up to date.

§  When the tree is accurate and you click the Refresh icon, you will receive the following message:  ‘This is the latest version of the data.’   This message will disappear in a few seconds.

 

§  When you are on the Top Level Parent and you have recently made changes to the hierarchy by adding or removing related items then you will see the following message after clicking Save: ‘This hierarchy has recently changed.  An accurate hierarchy should be available in approximately X minute(s).’    

        

The navigator will display an accurate single level hierarchy until a full hierarchy is available. Providing an always-accurate top-level hierarchy will allow you to use the navigator instantly as you build a hierarchy.

Once the full hierarchy is available you will automatically see the following message: ‘An accurate hierarchy is now available, Refresh to see the latest hierarchy.’  You can now refresh and see the full hierarchy.   

§  If you make hierarchy changes to a child node within the hierarchy you will see the following message: ‘This hierarchy has recently changed.  An accurate hierarchy should be available soon.’   The old hierarchy will remain visible until an accurate hierarchy is available and you select Refresh.

           

Note: Changes to sourcing approvals associated to a GSM hierarchy will not cause an accuracy message. These will appear after denormalization has completed and you have refreshed your hierarchy.


Security and Visibility

You will only see specifications within the hierarchy that you have read access. The hierarchy will stop building when it encounters a specification you cannot read. Read access is determined by Workflow permissions and Business Unit Security. For example, if you are on a Traded Unit trade specification and you have read access to all lower level trade specifications but not the formulation tied to the consumer unit you will not see specifications below the consumer unit.

Note: In current Hierarchy Navigator, all the objects with ‘Hide Specs’ tag or ‘Visibility’ tag will still be visible in the hierarchy . If you want to hide those specifications, you may add a new Filter option. Please see the Extending Hierarchy Navigator section for more information.

Hierarchy Navigator Settings

There are a few out of the box configurations that can be adjusted for Hierarchy Navigator.   These exist in the HierarchyNavigatorSettings node of the HierarchyNavigatorConfig.xml file found in the Extensions folder.

<HierarchyNavigatorSettings configChildKey="key">

       <add key="HierarchyNavigatorAverageDenormTimePerRequest" value="3" />

       <add key="HierarchyNavigatorDefaultExpandedLevels" value="2" />           

       <add key="HierarchyNavigatorMaxExportItems" value="300" />   

<add key="HierarchyNavigatorMaxExpandAllItems" value="300" />

</HierarchyNavigatorSettings>

HierarchyNavigatorAverageDenormTimePerRequest

This value is used to display an estimated time to the user of when the tree they are viewing will be re-denormalized. This is measured in minutes.  It is used in the following message: 

‘This hierarchy has recently changed.  An accurate hierarchy should be available in approximately X minute(s).’

The estimate is calculated using the following equation:

Requests in Denorm Queue * HierarchyNavigatorAverageDenormTimePerRequest

HierarchyNavigatorDefaultExpandedLevels

Decides the default number of levels that will be expanded when the navigator is opened.  

For optimal performance, this is set to 2 levels by default.

HierarchyNavigatorMaxExpandAllItems

 

Decides the limit for the “expand all” functionality on the navigator panel.  

For optimal performance, this is set to 300 items by default anything more is not recommended.

HierarchyNavigatorMaxExportItems

Decides the max amount of items that will be included in the excel export. 

For optimal performance, this is set to 300 items by default anything more is not recommended.

Extending Hierarchy Navigator

The following areas of the hierarchy navigator are extensible:

§  Display Options (Identities)

§  Sort By Options

§  Filters

§  Node Contextual Menus

This section outlines important files used to enable the solution pack. The installation process handles the initial setup for you but you may want to modify it based on your implementation.

Note: When reviewing the xml files after the installer runs, it is possible the order the elements are listed in the documentation will differ from the files on your system. XML is not particular about order, so simply verify the elements are the same from a content standpoint.

Display Options (Identity)

Identities are used to display object information in a tree node.  There are several default identities for display view under “HierarchyNavigatorCustomExtensions\ IdentityExtensions” section. You can add new entries or override an existing one to change the display item.

Example

<IdentityExtensions>

    <Identity Key="ObjectNameIdentity" SortOrder="10" DisplayText="Object Name" Default="true" >

      <Retriever ObjectTypes="1004,1005,1006"  Factory="Class:Oracle.PLM4P.SolutionPack.HierarchyNavigator.CustomExtensions.ObjectNameIdentity.GSMObjectNameIdentityExtension, HierarchyNavigator" />

    </Identity>

</IdentityExtensions>


<Identity> Attributes

Attribute

Description

Comment

Key

Identify the entry

Used for translation as well

SortOrder

Specify an order number

 

DisplayText

Specify text note for the entry.

 

This will be used as the caption of the item if the node has no translation.

Default

Specify if the item will be default displayed on the hierarchy node

true/false

 

<Identity/Retriever> Attributes

Attribute

Description

Comment

ObjectTypes

Specify the object type which the retriever applied for

Can be set with multiple object types

Factory

Specify the retriever implementation factory

 

 

Creating an Identity

Complete the following steps for creating a new identity. The user can select the new identity from display view after configured. It will display the information on the tree node when new identity is checked on.

Step 1: Create a new identity retriever extension based on the interface. 

Example

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using Xeno.Prodika.Common;

 

namespace Oracle.PLM4P.SolutionPack.HierarchyNavigator.CustomExtensions.IdentityExtensions

{

    public class IdentityExtensionFactoryExample1 : IFactory

    {

        public Object Create()

        {

            return new IdentityExample1();

        }

    }

 

    public class IdentityExample1 : IIdentityExtension

    {

        public string GetFormatedIdentity(IHierarchyNavigatorNode obj)

        {

            return "IdentityExample1";

        }

 

        public virtual string GetIdentity(IHierarchyNavigatorNode obj)

        {

            return "IdentityExample1";

        }

    }

}

 

Step 2: Build and put the compiled DLL into application directory. Let’s say “MyExtensions.dll”.

Step 3: Add an entry to “HierarchyNavigatorCustomExtensions\ IdentityExtensions”.

<Identity Key="TestIdentity" SortOrder="60" DisplayText="TestIdentity" Default="true" >

      <Retriever ObjectTypes="<YourObjectTypes>"  Factory="Class:Oracle.PLM4P.SolutionPack.HierarchyNavigator.CustomExtensions.IdentityExtensions.IdentityExtensionFactoryExample1, MyExtensions" />

</Identity>

 

Step 4: Restart IIS.

 

Sort Options (SortBy)

There are several default entries for sort view under “HierarchyNavigatorCustomExtensions\SortByExtensions” section. User can add new entry or override existing one to change the sort item.

Example

<SortByExtensions>

    <SortBy Key="ObjectNameSort" DisplayText="Object Name" SortOrder="10" >

        <Retriever ObjectTypes="1004,1005,1006" Factory="Class:Oracle.PLM4P.SolutionPack.HierarchyNavigator.CustomExtensions.ObjectNameSort.GeneralObjectNameSort, HierarchyNavigator"/>

    </SortBy>

</SortByExtensions>

<SortBy> Attributes

Attribute

Description

Comment

Key

Identify the entry

Used for translation as well

SortOrder

Specify an order number

 

DisplayText

Specify text note for the entry.

 

This will be used as the caption of the item if the node has no translation.

Default

Specify if the item will be default displayed on the hierarchy node

true/false

 

<SortBy/Retriever> Attributes

Attribute

Description

Comment

ObjectTypes

Specify the object type which the retriever applied for

Can be set with multiple object types

Factory

Specify the retriever implementation factory

 

 

Creating a SortBy

Complete the following steps for creating a new SortBy. The user can sort hierarchy content by the new SortBy from sorting view after configured.

Step 1: Create a new SortBy retriever extension based on the interface. 

Example

using Xeno.Data;

 

namespace Oracle.PLM4P.SolutionPack.HierarchyNavigator.CustomExtensions.SortByExtensions

{

    public class SortByFactoryExample1 : IFactory

    {

        public Object Create()

        {

            return new SortByExample1();

        }

    }

 

    public class SortByExample1 : ISortExtension

    {

        public int Compare(object x, object y)

        {

            return 0;

        }

    }

}

 

Step 2: Build and put the compiled DLL into application directory. Let’s say “MyExtensions.dll”.

Step 3: Add an entry to “HierarchyNavigatorCustomExtensions\SortByExtensions”.

<SortBy Key="TestSortBy" DisplayText="Test SortBy" SortOrder="60" >

     <Retriever ObjectTypes="<YourObjectTypes>" Factory="Class:Oracle.PLM4P.SolutionPack.HierarchyNavigator.CustomExtensions.SortByExtensions.SortByFactoryExample1, MyExtensions"/>

</SortBy>

 

Step 4: Restart IIS.

 

Filters

There are several default entries for sort view under “HierarchyNavigatorCustomExtensions\FilterExtensions” section. User can add new entry or override existing one to change the filter item.

Example

<FilterExtensions>

    <Filter Key="All" DisplayText="Select All" SortOrder="10" >

        <Filter Key="ObjectTypeFilter" DisplayText="Object Type" SortOrder="10" DynamicGenerator="Class:Oracle.PLM4P.SolutionPack.HierarchyNavigator.CustomExtensions.ObjectTypeFilter.ObjectTypeFilterGenerator, HierarchyNavigator">                             

        </Filter>

        <Filter Key="AlternateFilter" DisplayText="Alternate" SortOrder="30" >

            <Retriever ObjectTypes="1004,1005,1006" Factory="Class:Oracle.PLM4P.SolutionPack.HierarchyNavigator.CustomExtensions.AlternateFilter.AlternateFilter, HierarchyNavigator"/>

        </Filter>                      

    </Filter>

</FilterExtensions>

 


<Filter> Attributes

Attribute

Description

Comment

Key

Identify the entry

Used for translation

SortOrder

Specify an order number

 

DisplayText

Specify text note for the entry.

 

Used as the caption of the item if the node has no translation

DynamicGenerator

Specify a generator for generating a list based on the hierarchy content 

No need to add retriever if you specify this attribute

<Filter/Retriever> Attributes

Attribute

Description

Comment

ObjectTypes

Specify the object type which the retriever applied for

Can be set with multiple object types

Factory

Specify the retriever implementation factory

 

Creating a Filter

Complete the following steps for creating a new filter. The user can filter hierarchy content by the new filter from filter view after configured. Nested filter is supported.

Step 1: Create a new filter retriever extension based on the interface.

Example:

using System;

using System.Collections.Generic;

using System.Text;

 

namespace Oracle.PLM4P.SolutionPack.HierarchyNavigator.CustomExtensions.FilterExtensions

{

   public class FilterExtensionFactoryExample1 : IFactory

    {

        public Object Create()

        {

            return new FilterExample1();

        }

    }

   

    public class FilterExample1 : IFilter

    {

        public bool IsItemIncluded(IHierarchyNavigatorNode node)

        {

            return (int)node.DenormResult["fkAncestorRelationshipContext"] >= 0;

        }

    }

}

 

Step 2: Build and put the compiled DLL into application directory. Let’s say “MyExtensions.dll”.

Step 3: Add an entry to “HierarchyNavigatorCustomExtensions\FilterExtensions”.

<Filter Key="FilterExample1" DisplayText="FilterExample1" SortOrder="30" >

    <Retriever ObjectTypes="1004,1005,1006" Factory="Class:Oracle.PLM4P.SolutionPack.HierarchyNavigator.CustomExtensions.FilterExtensions.FilterExtensionFactoryExample1, MyExtensions"/>

</Filter>

 

Step 4: Restart IIS.

 

Context Menu

The navigator allows you to add a contextual menu per node. This menu is accessed by right clicking on the node. For example, the user could launch a report from a node within the tree. User can configure context menu when right click on one node from hierarchy navigator. The menu configuration follows the same structure and concepts as the action navigation extension. (See the Agile Product Lifecycle Management for Process Navigation Configuration Guide for more details.)

The “HierarchyNavigatorTreeviewContextMenu” node located in Sitemap-extensions.xml is used for the hierarchy navigator context menu.

Example:

<HierarchyNavigatorTreeviewContextMenu>

    <MenuItem ID="lblTest" DisplayText="test"

ClientSideCommand="alert(NavigatorNode.nodeIdentifier)" />

</HierarchyNavigatorTreeviewContextMenu>

<MenuItem> Attributes

See the Agile Product Lifecycle Management for Process Navigation Configuration Guide.


Variables

Variable

Value

Comment

NavigatorNode.nodeIdentifier

The active node PKID when right clicking

 

NavigatorNode.level

The level of current node

 

NavigatorNode.url

The object URL for current node

 

NavigatorNode.childItems

Child item of current node

An array of node items

NavigatorNode.hasChildren

Indicate a node has children or not

true/false

 

Creating a Context Menu Item

Complete the following steps for adding a new context menu item. The user can right click on a node to get the menu item configured.

Step 1: Add an entry to “HierarchyNavigatorTreeviewContextMenu”.

<HierarchyNavigatorTreeviewContextMenu>

    <MenuItem DisplayText="test" ClientSideCommand="alert(NavigatorNode.nodeIdentifier)" />

</HierarchyNavigatorTreeviewContextMenu>

 

Step 2: Restart IIS.