AssemblyDefinition Class — NXOpen Python API Reference 12.0.0 documentation

# AssemblyDefinition Class

class `NXOpen.Routing.``AssemblyDefinition`

  Bases: `NXOpen.Routing.ItemDefinition`

  Represents a collection of `NXOpen.Routing.SingleDevice` objects that are used in an assembled product.

  This class is abstract.

  No creator is available in KF because this is an abstract class.

  New in version NX4.0.2.

# Properties

Property | Description
--- | ---
DefiningNxObject | Returns the NX object associated with the item definition object.
Guid | Returns or sets the object’s Global Unique Identifier (GUID).
IsOccurrence | Returns whether this object is an occurrence or not.
JournalIdentifier | Returns the identifier that would be recorded in a journal for this object.
Name | Returns the custom name of the object.
OwningComponent | Returns the owning component, if this object is an occurrence.
OwningPart | Returns the owning part of this object
Prototype | Returns the prototype of this object if it is an occurrence.
Tag | Returns the Tag for this object.

# Methods

Method | Description
--- | ---
AddSingleDeviceChild | Adds a `NXOpen.Routing.SingleDevice` object to the list of objects contained in the assembly.
CreateAttributeIterator | Create an attribute iterator
DeleteAllAttributesByType | Deletes all attributes of a specific type.
DeleteAttributeByTypeAndTitle | Deletes an attribute by type and title.
DeleteCharacterstics | Removes the input list of characteristics from this object.
DeleteUserAttribute | Deletes the first attribute encountered with the given Type, Title.
DeleteUserAttributes | Deletes the attributes on the object, if any, that satisfy the given iterator
FindObject | Finds the `NXOpen.NXObject` with the given identifier as recorded in a journal.
GetAttributeTitlesByType | Gets all the attribute titles of a specific type.
GetBooleanUserAttribute | Gets a boolean attribute by Title and array Index.
GetCharacteristics | Get all of the characteristics values on the this object.
GetComputationalTimeUserAttribute | Gets a time attribute by Title and array Index.
GetDestinationCharacteristics | Returns the destination characteristics from the input object.
GetIntegerAttribute | Gets an integer attribute by title.
GetIntegerCharacteristic | Get the value of an integer characteristic associated with the input name.
GetIntegerUserAttribute | Gets an integer attribute by Title and array Index.
GetNextUserAttribute | Gets the next attribute encountered on the object, if any, that satisfies the given iterator.
GetPdmReferenceAttributeValue | Gets the value of PDM Reference attribute for given object.
GetRealAttribute | Gets a real attribute by title.
GetRealCharacteristic | Get the value of a real characteristic associated with the input name.
GetRealUserAttribute | Gets a real attribute by Title and array Index.
GetReferenceAttribute | Gets the reference string (not the calculated value) of a string attribute that uses a reference string.
GetReferencingDevice | Gets the `NXOpen.Routing.SingleDevice` object that has this AssemblyDefinition object as its definition.
GetSingleDeviceChildren | Gets the list of `NXOpen.Routing.SingleDevice` objects contained in the assembly.
GetStringAttribute | Gets a string attribute value by title.
GetStringCharacteristic | Get the value of a string characteristic associated with the input name.
GetStringUserAttribute | Gets a string attribute by Title and array Index.
GetTimeAttribute | Gets a time attribute by title.
GetTimeUserAttribute | Gets a time attribute by Title and array Index.
GetUserAttribute | Gets the first attribute encountered on the object, if any, with a given Title, Type and array Index.
GetUserAttributeAsString | Gets the first attribute encountered on the object, if any, with a given title, type and array index.
GetUserAttributeCount | Gets the count of set attributes on the object, if any, that satisfy the given iterator.
GetUserAttributeLock | Determine the lock of the given attribute.
GetUserAttributeSize | Gets the size of the first attribute encountered on the object, if any, with a given Title and Type.
GetUserAttributeSourceObjects | Returns an array of objects from which this object presents attributes.
GetUserAttributes | Gets all the attributes that have been set on the given object, if any, that satisfy the given iterator.
GetUserAttributesAsStrings | Gets all the attributes that have been set on the given object.
HasUserAttribute | Determines if an attribute exists on the object, that satisfies the given iterator
IsSingleDeviceChild | Determines if a `NXOpen.Routing.SingleDevice` object is contained in the assembly
Print | Prints a representation of this object to the system log file.
RemoveSingleDeviceChild | Removes a `NXOpen.Routing.SingleDevice` from the list of objects contained in the assembly.
ReplaceSingleDeviceChildren | Replaces the list of `NXOpen.Routing.SingleDevice` objects contained in the assembly.
SetAttribute | Creates or modifies an integer attribute.
SetBooleanUserAttribute | Creates or modifies a boolean attribute with the option to update or not.
SetCharacteristic | Set the value of an integer characteristic associated with the input name, adds a new characteristic to the list if one doesn’t exist already.
SetCharacteristic2 | Sets or creates an integer type attribute associated with the input title.
SetCharacteristics | Set all of the characteristics values on this object.
SetCharacteristics2 | Sets all attributes associated with the titles from the input list, creating new attributes for the ones that don’t exist already.
SetName | Sets the custom name of the object.
SetPdmReferenceAttribute | Sets the value of PDM Reference attribute on the object.
SetReferenceAttribute | Creates or modifies a string attribute which uses a reference string.
SetTimeAttribute | Creates or modifies a time attribute.
SetTimeUserAttribute | Creates or modifies a time attribute with the option to update or not.
SetUserAttribute | Creates or modifies an attribute with the option to update or not.
SetUserAttributeLock | Lock or unlock the given attribute.

# Property Detail

## IsOccurrence

`AssemblyDefinition.``IsOccurrence`

  Returns whether this object is an occurrence or not.

  `-------------------------------------`

  Getter Method

  Signature `IsOccurrence`

  Returns: | This object is an occurrence
  Return type: | bool

  New in version NX3.0.0.

  License requirements: None.

## JournalIdentifier

`AssemblyDefinition.``JournalIdentifier`

  Returns the identifier that would be recorded in a journal for this object.

  This may not be the same across different releases of the software.

  `-------------------------------------`

  Getter Method

  Signature `JournalIdentifier`

  Returns: |
  Return type: | str

  New in version NX3.0.0.

  License requirements: None.

## Name

`AssemblyDefinition.``Name`

  Returns the custom name of the object.

  `-------------------------------------`

  Getter Method

  Signature `Name`

  Returns: |
  Return type: | str

  New in version NX3.0.0.

  License requirements: None.

## OwningComponent

`AssemblyDefinition.``OwningComponent`

  Returns the owning component, if this object is an occurrence.

  `-------------------------------------`

  Getter Method

  Signature `OwningComponent`

  Returns: |
  Return type: | `NXOpen.Assemblies.Component`

  New in version NX3.0.0.

  License requirements: None.

## OwningPart

`AssemblyDefinition.``OwningPart`

  Returns the owning part of this object

  `-------------------------------------`

  Getter Method

  Signature `OwningPart`

  Returns: | The owning part of this object or null if it does not have an owner
  Return type: | `NXOpen.BasePart`

  New in version NX3.0.0.

  License requirements: None.

## Prototype

`AssemblyDefinition.``Prototype`

  Returns the prototype of this object if it is an occurrence.

  `-------------------------------------`

  Getter Method

  Signature `Prototype`

  Returns: | The prototype of this object or null if this object is not an occurrence
  Return type: | `NXOpen.INXObject`

  New in version NX3.0.0.

  License requirements: None.

# Method Detail

## AddSingleDeviceChild

`AssemblyDefinition.``AddSingleDeviceChild`

  Adds a `NXOpen.Routing.SingleDevice` object to the list of objects contained in the assembly.

  Signature `AddSingleDeviceChild(device)`

  Parameters: | device (`NXOpen.Routing.SingleDevice`) – object to add

  New in version NX4.0.2.

  License requirements: routing_advanced (“Routing Advanced”), routing_base (“Routing Basic”)

## DeleteCharacterstics

`AssemblyDefinition.``DeleteCharacterstics`

  Removes the input list of characteristics from this object.

  Signature `DeleteCharacterstics(values)`

  Parameters: | values (`NXOpen.Routing.CharacteristicList`) –

  New in version NX4.0.0.

  License requirements: routing_base (“Routing Basic”)

## FindObject

`AssemblyDefinition.``FindObject`

  Finds the `NXOpen.NXObject` with the given identifier as recorded in a journal.

  An object may not return the same value as its JournalIdentifier in different versions of the software. However newer versions of the software should find the same object when FindObject is passed older versions of its journal identifier. In general, this method should not be used in handwritten code and exists to support record and playback of journals.

  An exception will be thrown if no object can be found with the given journal identifier.

  Signature `FindObject(journalIdentifier)`

  Parameters: | journalIdentifier (str) – Journal identifier of the object
  Returns: |
  Return type: | `NXOpen.INXObject`

  New in version NX3.0.0.

  License requirements: None.

## GetCharacteristics

`AssemblyDefinition.``GetCharacteristics`

  Get all of the characteristics values on the this object.

  Signature `GetCharacteristics()`

  Returns: |
  Return type: | `NXOpen.Routing.CharacteristicList`

  New in version NX4.0.0.

  License requirements: routing_base (“Routing Basic”)

## GetDestinationCharacteristics

`AssemblyDefinition.``GetDestinationCharacteristics`

  Returns the destination characteristics from the input object.

  Retrieves the description of which destination characteristics to read from the application view and then reads those destination characteristics from the object

  > - Ports: Reads characteristics from the port.
  > - RCPs: Attempts to find a port at the RCP, reads characteristics from

  the port if it exists, otherwise reads from the stock associated with the rcp.

  > - Segments: Reads characteristics from the stock associated with the segment.
  > - Components: Reads characteristics directly from the component.
  > - Stock: Reads characteristics from the stock or from the stock’s data.

  Signature `GetDestinationCharacteristics()`

  Returns: |
  Return type: | `NXOpen.Routing.CharacteristicList`

  New in version NX4.0.0.

  License requirements: routing_base (“Routing Basic”)

## GetIntegerCharacteristic

`AssemblyDefinition.``GetIntegerCharacteristic`

  Get the value of an integer characteristic associated with the input name.

  Signature `GetIntegerCharacteristic(name)`

  Parameters: | name (str) –
  Returns: |
  Return type: | int

  New in version NX4.0.0.

  License requirements: routing_base (“Routing Basic”)

## GetRealCharacteristic

`AssemblyDefinition.``GetRealCharacteristic`

  Get the value of a real characteristic associated with the input name.

  Signature `GetRealCharacteristic(name)`

  Parameters: | name (str) –
  Returns: |
  Return type: | float

  New in version NX4.0.0.

  License requirements: routing_base (“Routing Basic”)

## GetReferencingDevice

`AssemblyDefinition.``GetReferencingDevice`

  Gets the `NXOpen.Routing.SingleDevice` object that has this AssemblyDefinition object as its definition.

  Signature `GetReferencingDevice()`

  Returns: | instance of the AssemblyDefinion
  Return type: | `NXOpen.Routing.SingleDevice`

  New in version NX4.0.2.

  License requirements: routing_advanced (“Routing Advanced”), routing_base (“Routing Basic”)

## GetSingleDeviceChildren

`AssemblyDefinition.``GetSingleDeviceChildren`

  Gets the list of `NXOpen.Routing.SingleDevice` objects contained in the assembly.

  The returned list is empty if the assembly does not contain any objects.

  Signature `GetSingleDeviceChildren()`

  Returns: | list of objects in the assembly
  Return type: | list of `NXOpen.Routing.SingleDevice`

  New in version NX4.0.2.

  License requirements: routing_advanced (“Routing Advanced”), routing_base (“Routing Basic”)

## GetStringCharacteristic

`AssemblyDefinition.``GetStringCharacteristic`

  Get the value of a string characteristic associated with the input name.

  Signature `GetStringCharacteristic(name)`

  Parameters: | name (str) –
  Returns: |
  Return type: | str

  New in version NX4.0.0.

  License requirements: routing_base (“Routing Basic”)

## IsSingleDeviceChild

`AssemblyDefinition.``IsSingleDeviceChild`

  Determines if a `NXOpen.Routing.SingleDevice` object is contained in the assembly

  Signature `IsSingleDeviceChild(device)`

  Parameters: | device (`NXOpen.Routing.SingleDevice`) – object to test
  Returns: | TRUE if the object is in the AssemblyDefinition
  Return type: | bool

  New in version NX4.0.2.

  License requirements: routing_advanced (“Routing Advanced”), routing_base (“Routing Basic”)

## Print

`AssemblyDefinition.``Print`

  Prints a representation of this object to the system log file.

  Signature `Print()`

  New in version NX3.0.0.

  License requirements: None.

## RemoveSingleDeviceChild

`AssemblyDefinition.``RemoveSingleDeviceChild`

  Removes a `NXOpen.Routing.SingleDevice` from the list of objects contained in the assembly.

  Signature `RemoveSingleDeviceChild(device)`

  Parameters: | device (`NXOpen.Routing.SingleDevice`) – object to remove

  New in version NX4.0.2.

  License requirements: routing_advanced (“Routing Advanced”), routing_base (“Routing Basic”)

## ReplaceSingleDeviceChildren

`AssemblyDefinition.``ReplaceSingleDeviceChildren`

  Replaces the list of `NXOpen.Routing.SingleDevice` objects contained in the assembly.

  Using None for replacementChildren is not allowed.

  Signature `ReplaceSingleDeviceChildren(replacementChildren)`

  Parameters: | replacementChildren (list of `NXOpen.Routing.SingleDevice`) – `NXOpen.Routing.SingleDevice` children to use in replacing the children of this Assembly Definition.

  New in version NX4.0.2.

  License requirements: routing_advanced (“Routing Advanced”), routing_base (“Routing Basic”)

## SetCharacteristic

`AssemblyDefinition.``SetCharacteristic`

  Overloaded method SetCharacteristic

  - `SetCharacteristic(name, value)`
  - `SetCharacteristic(name, value)`
  - `SetCharacteristic(name, value)`

  `-------------------------------------`

  Set the value of an integer characteristic associated with the input name, adds a new characteristic to the list if one doesn’t exist already. Converts the type of an existing characteristic with the same name to integer if it’s type is not integer.

  Signature `SetCharacteristic(name, value)`

  Parameters:

  - name (str) –
  - value (int) –

  New in version NX4.0.0.

  Deprecated since version NX11.0.0: Use `NXOpen.Routing.ICharacteristic.SetCharacteristic2()` instead.

  License requirements: routing_base (“Routing Basic”)

  `-------------------------------------`

  Set the value of an real characteristic associated with the input name, adds a new characteristic to the list if one doesn’t exist already. Converts the type of an existing characteristic with the same name to real if it’s type is not real.

  Signature `SetCharacteristic(name, value)`

  Parameters:

  - name (str) –
  - value (float) –

  New in version NX4.0.0.

  Deprecated since version NX11.0.0: Use `NXOpen.Routing.ICharacteristic.SetCharacteristic2()` instead.

  License requirements: routing_base (“Routing Basic”)

  `-------------------------------------`

  Set the value of an string characteristic associated with the input name, adds a new characteristic to the list if one doesn’t exist already. Converts the type of an existing characteristic with the same name to string if it’s type is not string.

  Signature `SetCharacteristic(name, value)`

  Parameters:

  - name (str) –
  - value (str) –

  New in version NX4.0.0.

  Deprecated since version NX11.0.0: Use `NXOpen.Routing.ICharacteristic.SetCharacteristic2()` instead.

  License requirements: routing_base (“Routing Basic”)

  `-------------------------------------`

## SetCharacteristic2

`AssemblyDefinition.``SetCharacteristic2`

  Overloaded method SetCharacteristic2

  - `SetCharacteristic2(title, value)`
  - `SetCharacteristic2(title, value)`
  - `SetCharacteristic2(title, value)`

  `-------------------------------------`

  Sets or creates an integer type attribute associated with the input title. creating a new attribute if one doesn’t exist already.

  If the method is called on a stock `Assemblies.Component`, the method will create or edit a part attribute on the stock part. For legacy parts where the attribute is on the stock component, the attribute will be moved to the stock part.

  If the method is called on a non-stock `Assemblies.Component`, the method will create or edit an attribute on the corresponding instance. For legacy parts where the attribute is on the component, the attribute will be moved to the corresponding instance.

  If the method is called on any non-component object, the method will access or create an attribute on the object itself.

  Signature `SetCharacteristic2(title, value)`

  Parameters:

  - title (str) – Unique title for the Attribute or Characteristic
  - value (int) – New Value to be set on the Attribute

  New in version NX11.0.0.

  License requirements: routing_base (“Routing Basic”)

  `-------------------------------------`

  Sets or creates a double type attribute associated with the input title. creating a new attribute if one doesn’t exist already.

  If the method is called on a stock `Assemblies.Component`, the method will create or edit a part attribute on the stock part. For legacy parts where the attribute is on the stock component, the attribute will be moved to the stock part.

  If the method is called on a non-stock `Assemblies.Component`, the method will create or edit an attribute on the corresponding instance. For legacy parts where the attribute is on the component, the attribute will be moved to the corresponding instance.

  If the method is called on any non-component object, the method will access or create an attribute on the object itself.

  Signature `SetCharacteristic2(title, value)`

  Parameters:

  - title (str) – Unique title for the Attribute or Characteristic
  - value (float) – New Value to be set on the Attribute

  New in version NX11.0.0.

  License requirements: routing_base (“Routing Basic”)

  `-------------------------------------`

  Sets or creates a string type type attribute associated with the input title. creating a new attribute if one doesn’t exist already.

  If the method is called on a stock `Assemblies.Component`, the method will create or edit a part attribute on the stock part. For legacy parts where the attribute is on the stock component, the attribute will be moved to the stock part.

  If the method is called on a non-stock `Assemblies.Component`, the method will create or edit an attribute on the corresponding instance. For legacy parts where the attribute is on the component, the attribute will be moved to the corresponding instance.

  If the method is called on any non-component object, the method will access or create an attribute on the object itself.

  Signature `SetCharacteristic2(title, value)`

  Parameters:

  - title (str) – Unique title for the Attribute or Characteristic
  - value (str) – New Value to be set on the Attribute

  New in version NX11.0.0.

  License requirements: routing_base (“Routing Basic”)

  `-------------------------------------`

## SetCharacteristics

`AssemblyDefinition.``SetCharacteristics`

  Set all of the characteristics values on this object.

  Signature `SetCharacteristics(values)`

  Parameters: | values (`NXOpen.Routing.CharacteristicList`) –

  New in version NX4.0.0.

  Deprecated since version NX11.0.0: Use `NXOpen.Routing.ICharacteristic.SetCharacteristics2()` instead.

  License requirements: routing_base (“Routing Basic”)

## SetCharacteristics2

`AssemblyDefinition.``SetCharacteristics2`

  Sets all attributes associated with the titles from the input list, creating new attributes for the ones that don’t exist already.

  If the method is called on a stock `Assemblies.Component`, the method will create or edit part attributes on the stock part. For legacy parts where the attributes are on the stock component, the attributes will be moved to the stock part.

  If the method is called on a non-stock `Assemblies.Component`, the method will create or edit attributes on the corresponding instance. For legacy parts where the attribute is on the component, the attributes will be moved to the corresponding instance.

  If the method is called on any non-component object, the method will access or create attributes on the object itself.

  Signature `SetCharacteristics2(values)`

  Parameters: | values (`NXOpen.Routing.CharacteristicList`) – `NXOpen.Routing.CharacteristicList` having the titles, types and values of Attributes to be set

  New in version NX11.0.0.

  License requirements: routing_base (“Routing Basic”)

## SetName

`AssemblyDefinition.``SetName`

  Sets the custom name of the object.

  NOTE: This method should not be used to edit a read-only object such as a Mirrored PMI object. If it is, the changes will be overridden when the part is updated.

  Signature `SetName(name)`

  Parameters: | name (str) –

  New in version NX3.0.0.

  License requirements: None.