Choice of Attribute Used as Logical Name (INFRALogicalNameAttribute)

An opening ID is an entry point used to customize business logic. The Choice of Attribute Used as Logical Name opening is used to compute a display name by concatenating the logical name and the additional attributes if any. It is recommended that you use this opening to customize the display names instead of using masks.

Note: For more information about customization by business rules, see Installation and Setup: Customize: Behavior: Data Setup: Customization by Business Rules.
It is not mandatory to implement this business logic. By default, the PLM_ExternalID is considered as the logical name attribute (or the V_Name in a One-Click environment).

This page discusses:

Environment: On premises only

General Information

This opening ID is invoked when the "Name" attribute is used on a PLM object in the Enterprise Knowledge Language.

The table below provides you with information related to the definition of the Opening ID.

Opening ID: INFRALogicalNameAttribute
Customization intent: Computation
Execution context:Client/Server

Input Objects

This Opening ID is invoked on a void object of the type of the object on which we are accessing the "Name" attribute. It means that your rule cannot be based on anything except the type of the object. Input objects must be of the following types:

  • ThisObject
  • Parameters corresponds to the context object.

Context Object Parameters

In addition to the fact object, some parameters are available in the scripting rule to be computed.

Parameter NameTypeRead/WriteComments
AttributeNamestring WriteName of the attribute to be used for computing the logical name.
AdditionalAttributesListWriteList of attribute names. This parameter is optional.
PolicyStringReadPolicy name

Sample 2

The following sample shows you how to compute a display name (both on the server and on the client side) by concatenating the logical name and the additional attributes names.

  let l(List)
Parameters->SetAttributeString("AttributeName","Att0")
l = Parameters->GetAttributeObject("AdditionalAttributes")
l.Append("Att1")
l.Append("Att2")
Parameters->SetAttributeObject("AdditionalAttributes",l)