Typically, when a user clicks an object's name in the ENOVIA
products to see details about the object, emxTree.jsp uses the tree menu
object that has the same symbolic name as the object's type. For example,
when a user clicks the name of a Part Quality Plan, the system uses the
tree menu object named type_PartQualityPlan. The menu object that matches
the symbolic name for a type is referred to as the standard tree menu
for an object.
There are cases when the standard tree menu for an object is not suitable.
For example, some object types are used by more than one ENOVIA product
and each application may have a unique tree menu. In this case, the application
that owns that object type installs the standard tree menu object and
all other applications that use the type install an alternate tree menu
for the type. The owner application is the one that has primary responsibility
for creating and managing that type of object. For example, most ENOVIA
products use parts but Engineering Central is the owner of the Part type.
Therefore, Engineering Central installs the type_Part menu and other
applications install an alternate menu for parts. Specific installations
may also need to define custom tree menus. (Using custom tree menus instead
of the system's standard or pre-defined alternate menu is not recommended.)
When a user clicks a link to view details for an object, the system
uses the following methods to determine which tree to display for the
object, in this order of precedence:
- Override all trees using treeMenu parameter--The system first looks for
the treeMenu parameter passed to emxTree.jsp URL. The value for the treeMenu
parameter is the name of a menu object for a navigation tree and you
can use the parameter to override all other trees that could be used
for the object.
Use the treeMenu parameter when you want to use a tree menu other
than the standard (as described in item 3 below) or alternate (as described
in item 2 below) tree menu for the object's type. Also use the treeMenu
parameter to call an application's alternate tree menu for an object
when the link is external to the application. For example, if the link
is within IconMail or email, the system will not pick up an application's
alternate menu because the link is not within a particular application
(so it would not know which application's alternate tree menu to use).
- Use application's alternate tree--If no treeMenu
parameter is passed, the system gets the suite directory that called
emxTree.jsp and checks if that application has an alternate tree menu
defined for the object type. ENOVIA products define alternate trees for
objects used by more than one application. The alternate tree menus need not be
assigned to the top-level menu called Tree but the standard tree menus
must be assigned to the top-level menu.
Application-specific alternate menus are defined using the property
SUITEKEY.emxTreeAlternateMenuName.TYPE_SYMBOLIC_NAME in the application's
property file, such as emxEngineeringCentral.properties. SUITEKEY is
the same as the value assigned to the property eServiceSuites.DisplayedSuites
in the emxSystem.properties file. The naming convention for the alternate
menus is the type's symbolic name prepended with the 3-letter abbreviation
for the application, for example, ENCtype_Part. If the specified alternate
menu does not exist in the database, the standard tree menu for that
type, for example type_Part, is used. (The naming conventions for the
application abbreviations are listed in Naming Conventions.) For example, the emxEngineeringCentral.properties file contains this
property:
eServiceSuiteEngineeringCentral.emxTreeAlternateMenuName.type_P
art=ENCtype_part In special cases, such as when forwarding or redirecting
the response to emxTree.jsp, the alternate tree menu may not display
correctly. In these cases, you must pass the URL parameter "emxSuiteDirectory"
with the appropriate directory to emxTree.jsp. This directory is the
same as defined in the emxSystem.properties (SUITE_NAME.Directory = ....),
where the value is the application directory installed below the ematrix
directory.
- Use type's standard tree--If you have not defined
an application-specific alternate menu for the object type, the system
looks for a menu object with the same name as the type's symbolic name.
If it does not find one, the system looks for a menu object with the
symbolic name for the type's parent type, then grandparent type, and
so on until it reaches the top of the type hierarchy.
- Use Default Tree--If there is no menu object
for the object's type or parent types, the system uses the Default Tree
menu object. For more information on the default tree, see About the Default Tree.
|