Manage Operator Part Type and Part Number (PIP_ManageOperatorPartType_PartNumber)

An opening ID is an entry point used to customize business logic. The Manage Operator Part Type and Part Number opening ID is available in the Piping/Tubing Specification Resources resource set and it is used to define the values of part type and part number attributes for operators.

Note: For more information about customization by business rules, see Installation and Setup: Customize: Behavior: Data Setup: Customization by Business Rules.

This page discusses:

General Information

This opening ID is invoked during design process, for example, a logical to physical placement process.

This opening ID is used to read the following attributes:

  • Operator Part Type
  • Operator Part Number

DefinitionDescription
PLM Opening IDPIP_ManageOperatorPartType_PartNumber
Customization intent Execution
Execution contextClient

Input Objects

Input objects must be of the following types:

  • ThisObject: the analyzed logical component or part must be a LogicalOccurrence type or a pertinent derived type from LogicalOccurrence.
  • Parameters corresponds to the context object.

Context Object Parameters

Parameter NameTypeRead or WriteComments
ListAttributeNameList ReadInput argument containing the list of attributes names for which the value need to be retrieved from the logical component or part. The expected values are V_Ens_OperatorPartType and V_Ens_OperatorPartNumber.
ListComputedAttributeValueListReadValues of the attributes contained in the ListAttributeName list.
Note: List members of ListComputedAttributeValue must always be a one to one mapping with ListAttributeName.

Sample

The following sample retrieves PLM instance from input ThisObject.

/* CATRule signature (do not edit) : (ThisObject : #In LogicalOccurrence, Parameters : #In RuleContext) : #Void */
Let AttributeName_List (List)
Let ComputedAttributeValue_List (List)
Let AttrNameString (String)
Let ThisInstance (RFLVPMLogicalInstance)
Let OperatorPartType(String)
Let OperatorPartNumber(String)
Let index (INTEGER)
Let size (INTEGER)

AttributeName_List = Parameters.GetAttributeObject("ListAttributeName")
ComputedAttributeValue_List = Parameters.GetAttributeObject("ListComputedAttributeValue")

set ThisInstance = ThisObject.Instance

set size = AttributeName_List.Size()
set index = 1
for index while index <= size
{
	set AttrNameString = AttributeName_List.GetItem(index)
	if(AttrNameString == "V_Ens_OperatorPartType")
	{
		if (ThisInstance.HasAttribute("V_description") == true )
		{
			OperatorPartType = ThisInstance.GetAttributeString("V_description")
			ComputedAttributeValue_List.Append(OperatorPartType)
		}
	}
	else if (AttrNameString == "V_Ens_OperatorPartNumber")
	{
		if (ThisInstance.HasAttribute("PLM_ExternalID") == true )
		{
			OperatorPartNumber = ThisInstance.GetAttributeString("PLM_ExternalID")
			ComputedAttributeValue_List.Append(OperatorPartNumber)
		}
	}
}
Parameters.SetAttributeObject("ListComputedAttributeValue", ComputedAttributeValue_List)