Looking for Broken Constraints in Assembly

When storing Assembly data into ENOVIA, it is strongly recommended to do not have broken constraints.
Note that a broken constraint is not a data corruption, it is a normal state, supported in CATIA, but the design of the ENOVIA integration constraints considers this state as a trouble.

Needed Options


Before You Begin

  • This macro scans recursively the assembly to identify its broken constraints and put them into the selection to be managed:
    • Broken constraints for which one of its related instances is missing are taken into account by the macro.
    • Broken constraints for which only the geometry is missing, but not the related instance, are not taken into account by the macro.

Macro Usage

The macro is delivered in the application runtime view (./operating_system/VBScript/AssemblyConstraints/SelectBrokenConstaints.catvbs)
  1. Launch the application.

  2. Open the assembly to be checked (CATProduct document).

  3. Launch Macro (Alt-F8 + SelectBrokenConstaints.catvbs)

  4. Manage the broken constraints.

  5. Save and close the document.

  6. Close the application.


Result File Location

  It is possible to dump traces in a text file by valuating the DumpFileName variable with the absolute path to the text file, e.g. DumpFileName = E:\temp\dump_traces.txt


  1. Open the following document: Assembly_06.CATProduct

  1. Run the macro.


The assembly name processed is displayed in a message box:

  1. Click OK.


The number of broken constraints is displayed:

  1. Click OK.


Broken constraints are selected in the specification tree: