3D Piping Part - 3DEXP Types and Subtypes

Data model changes

Before 2014x : 

Only one Object type was available in 3DExperience for Piping Part, the subclass were manage through the Attribute "Part SubType"

Between 2014x and 2024x :

New object types have been introduced to integrate different behavior to the different family of piping components

  • The previous Object type was maintain as "Piping Miscellaneous" = Piping_PartV1
  • the new object types were derivated from a new Parent class called Piping_PartV2. these object types are :
    • Piping_Cap, Piping_Coupling, Piping_Cross, Piping_Flange, Piping_Gasket, Piping_Instrument, Piping_Elbow, Piping_Olet, Piping_Reducer, Piping_Tee, Piping_Union, Piping_Valve 

Since 25x releases :

  • What's new : 

2 new types has been introduced as children of the Piping_PartV2:

  • Piping_Nozzle, Piping_Miscellaneous

When you want to create a piping component that is not part of one of the existing family, you usualy use the "Piping Miscellaneous" type

  • since 2025x ;
    • when selecting "Piping Miscellaneous" you are creating an object with the new type  Piping_PartV2 / Piping_Miscellaneous
    • When selecting "Piping Legacy" you are creating an object with the old type Piping_PartV1 (old "Piping Miscellaneous")
    • "Piping Legacy" must now be used only in the context of CATIA V6 (before 2014x) component migration to 3DEXP(since 2014x)  and no more to create new component for 3DEXP

Impact for existing data

  • You have to adjust the Part Subtype table to map the value to "Piping_Miscellaneous" types. This will allows you to have the list of Subtype when creating a new Piping Miscellaneous" Part
  • Existing component will remain with their old type, and there is no way to convert "Piping_PartV1" to "Piping_Miscellaneous". 
    • Most of the piping command are using the "Part Subtype" attribute value to drive App behavior so having a mix of "Piping_PartV1" & "Piping_Miscellaneous" should not have any effect. 
  • Existing Reports and EKL code must be adjusted to introduce the new type "Piping_Miscellaneous" that is using "Piping_PartV1" type.
    • exemple ; If ( …. IsASortOf(”Piping_PartV1”)) must be replaced by : If ( …. IsASortOf(”Piping_PartV1”) OR …. IsASortOf(”Piping_Miscellaneous”))