Customize F5 List with Attributes (DELPPRF5Attributes_ID)

An opening ID is an entry point used to customize business logic. This opening ID is run to list the attributes displayed when pressing the F5 key.

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

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

PLM Opening ID DELPPRF5Attributes_ID
Customization intent Execution
Execution context Client

Input Objects

Input objects must be of the following types:

  • ThisObject: System, Operation, or Process occurrence.
  • Parameters: Corresponds to the context object.

Context Object Parameters

Parameter NameTypeRead/WriteComments
OutputListAttributeNamesListWriteList of attribute names to display
OutputListAttributeValues List Write List of attribute values to display. Must be strings.

Sample

The following sample is an example of how to use the opening ID in the CATRuleExit file.

<Script OpeningID="DELPPRF5Attributes_ID"
Type="ProdSystemOccurrence"						
ScriptName="DELPPRF5Attributes"/>
<Script OpeningID="DELPPRF5Attributes_ID"		
Type="FProcessOccurrence"						
ScriptName="DELPPRF5Attributes"/>

Sample

The following sample is an example of how the business logic can be implemented in the CATRule file.

/* ---- input ---- */
Let CurrentSystemOcc(ProdSystemOccurrence)
Let CurrentItemOcc(FProcessOccurrence)

/* ---- output ---- */
/*Edit these lists using BL logic and send as output*/
Let OutputListOfAttributeNames(List)
Let OutputListOfAttributeValues(List)

/*----- local variables ----*/
Let InputObjectReference(PLMCoreReference)
Let InputObjectInstance(PLMCoreInstance)
Let AttributeString(String)
Let AttributeReal(Real)


/* ---- RETRIEVE INPUT PARAMETERS ---- */
Set CurrentSystemOcc = ThisObject

if (NULL <> CurrentSystemOcc)
{
Set InputObjectReference = CurrentSystemOcc.Reference
Set InputObjectInstance = CurrentSystemOcc.Instance
}
else
{
Set InputObjectReference = CurrentItemOcc.Reference
Set InputObjectInstance = CurrentItemOcc.Instance
}

/* ---- CODE ---- */
/* if (NULL <> InputObjectInstance)
{
	if (InputObjectInstance.IsSupporting("DELLmiGeneralSystemInstance") == true) 
	{
		OutputListOfAttributeNames.Append("PLM_ExternalID")
		Set AttributeString = InputObjectInstance.GetAttributeString("PLM_ExternalID")
		OutputListOfAttributeValues.Append(AttributeString)
	}
}
if (NULL <> InputObjectReference)
{
	if (InputObjectReference.IsSupporting("DELLmiPPRSystemReference") == true) 
	{
		OutputListOfAttributeNames.Append("V_Capacity")
		Set AttributeReal = InputObjectReference.GetAttributeReal("V_Capacity")
		Set AttributeString = ToString(AttributeReal)
		OutputListOfAttributeValues.Append(AttributeString)
}
}
if (NULL <> InputObjectReference)
{
	if (InputObjectReference.IsSupporting("DELFmiFunctionReference") == true) 
	{
		if(InputObjectReference.HasAttribute("revision") == true)
		{
			OutputListOfAttributeNames.Append("revision")
			Set AttributeString = InputObjectReference.GetAttributeString("revision")
			OutputListOfAttributeValues.Append(AttributeString)
		}
}
}
/* ---- FILL OUTPUT PARAMETERS ---- */
if (true == Parameters.HasAttribute("OutputListOfAttributeNames")) 
{	
	Parameters.SetAttributeObject("OutputListOfAttributeNames", OutputListOfAttributeNames)
}
if (true == Parameters.HasAttribute("OutputListOfAttributeValues")) 
{
	Parameters.SetAttributeObject("OutputListOfAttributeValues", OutputListOfAttributeValues)
}