FBDI App Attributes (PLMEnsFBDIApplicationAttribute)

An opening ID is an entry point used to customize business logic.

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:

  • to specify any value to be set for the piping & tubing application attributes.
  • to specify which attributes are to be copied from a V5 to a 3DEXPERIENCE on instance or reference during the FBDI import.

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

PLM Opening ID: PLMEnsFBDIApplicationAttribute
Customization intent: Computation
Execution context: Client

Input Objects

Input objects must be of the following types:

  • ThisObject: VPMReference (derivated 3DEXPERIENCE piping type) or VPMInstance (derivated 3DEXPERIENCE piping type).
  • Parameters corresponds to the context object.
  • Validation: not applicable in computation rule.

Context Object Parameters

Parameter NameTypeRead/WriteComments
V5ApplBaseTypeString ReadRoot System class in application feat class.
V5ApplUserTypeStringReadV5 customer Class Type (Internal Name) in CATfct.
V5Attributes Feature Read V5 Attributes depending on the V5 object data. This includes unmapped attributes.
Note: V5 attributes that had V4 legacy names like Nominal Size, Commodity type, will be accessed by the corresponding internal names (see “Attribute Key” field in the FDE report) with no spaces. For example, Commodity type becomes CommodityType.
V6ApplAttributes Feature Read/Write 3DEXPERIENCE application attributes.

Sample

The following sample

/* CATRule signature (do not edit) : (ThisObject : #In Piping_Pipe_Inst, Parameters : #In RuleContext) : #Void */

/*-------------------------------------------------------------------------*/
/* Variable Declaration                                                    */
/*----------------------------------------------------------------------------*/
Let refPrd(Piping_Pipe_Inst)   /* Custo Type */
Let v5AttrList (Feature)
Let v6ApplAttrList (Feature)
Let attrValue(String)

/*-------------------------------------------------------------------------*/
/* RULE BEGIN                                                              */
/*-------------------------------------------------------------------------*/
Trace (1, "Invoked Rule_InstanceAttributes.CATRule")			
set refPrd = ThisObject

/* Get V5 attributes */			
set v5AttrList = Parameters->GetAttributeObject("V5Attributes") 			
/* Get V6 Application attributes on Rule context*/			
set v6ApplAttrList = Parameters->GetAttributeObject("V6ApplAttributes") 			
	
if ( refPrd <> NULL)
{		
  if( v5AttrList <> NULL and  v6ApplAttrList <> NULL)
  {	
    Trace (1, "v5AttrList is not null"  ) 
    Trace (1, "v6ApplAttrList is not null"  )    
 	  
    if (v5AttrList->HasAttribute("NominalSize") == true) 
    {
      v6ApplAttrList->SetAttributeString("V_NominalSize", v5AttrList->GetAttributeString("NominalSize"))
    }   
  }			
}