ManufacturingKnowledge

Multi-BOM Management general functionality > Running accountability checks > Running an advanced accountability check

Accountability check of variant structure

If you optionally propagate rolled-up variant conditions from the EBOM to the MBOM or from the product BOP to the plant BOP, the accountability check recalculates the rolled-up variant condition on the source line and compares it with any occurrence variant condition already stored on the associated target line. It then reports any partial match discrepancies between the variant conditions. To allow this check, you must add the Variant Formula (bl_formula) property to the list of properties in the partial match criteria in the MEAdditionalPropagatableProperties preference. The comparison is based on logical equivalence and is not a string comparison, for example:

  • If you compare Color=red & Size=medium with Size=medium & Color=red, these variant conditions are logically equivalent.

  • If you compare Color=red & Size=medium with Color=red & Size=medium & Color=red, these variant conditions are logically equivalent.

In the following example, you assign the EBOM to the MBOM and roll up the variants:

EBOM:

Copy

EGen1.1  Load if Option A = "abc"
    EGen 1.1.1  Load if Option B = "fgh"
      Part 1
      Part 2
    EGen 1.1.2  Load if Option B = "ijk" 
      Part 3
      Part 4
EGen1.2  Load if Option A = "cde"
    EGen 1.2.1  Load if Option B = "fgh"
      Part 5
      Part 6
    Part 7  Load if Option B = "ijk"

MBOM:

Copy

Part 1  Load if Option A = "abc" AND Option B = "fgh"
Part 2  Load if Option A = "abc" AND Option B = "fgh"
Part 4  Load if Option A = "abc" AND Option B = "ijk"
Part 5  Load if Option A = "cde" AND Option B = "fgh"
MGen 1.1
  Part 3  Load if Option A = "abc" AND Option B = "ijk"
  Part 4  Load if Option A = "abc" AND Option B = "ijk"
  Part 7  Load if Option A = "cde" AND Option B = "ijk"

If you perform an accountability check and specify parts only, all colors except full match, and rolled up variant condition as a partial match option, the result shows no differences.

You then modify the parts under EGen 1.1.2 in the EBOM as follows:

Copy

Egen 1.1.2  Load if Option B = "lmn" – changed the variant condition
  Part 3  Load if Option C = "opq" –added the variant condition
  Part 4 – no change
  Part 8 – added the line

(You changed the variant condition to line 1, added the variant condition to part 3, made no changes to part 4, and added part 8.)

If you now perform an accountability check, it identifies that Part 3 is a partial match, Part 4 is also a partial match, and Part 8 is missing in the target. A tabular report shows the following results for the checked objects.

Source Target Match Variant condition rollup
123456/A;1-Part 3 123456/A;1-Part 3 X X
123457/A 1-Part 4 123457/A 1-Part 4 X X
1234569/A 1-Part 8 *** Not Found X

The check assumes lines are equivalent due to a user performing an assign action (that is linking them) and not simply by having the same in-context ID. When you run an accountability check on equivalent lines with the same in-context ID, it considers rolled up variant conditions on the source line and compares them with the occurrence variant condition on the target line. This may give unexpected results when comparing the Variant Formula property, and you should take care when propagating such differences.

For example, EBOM Top (000029) and MBOM Top (000035) are linked. The assigned line EBOM Sub Assembly (000031) has a rolled-up variant condition.

If you change the in-context ID of Part1 in the MBOM to make it equivalent to SubAssembly in the EBOM, the accountability check shows Part1 as a mismatched line, even though it is not assigned. This occurs because the rolled up variant condition on the source line is compared with occurrence variant condition on the target line. As the target line is not assigned, it does not have a rolled-up variant condition.

If you select Part1 and choose to propagate differences from the source to the target, Part1 receives the rolled-up variant condition of the source. This occurs because, although the line is not assigned, it has the same underlying occurrence. Part1 is now configured but not with the variant configuration you originally intended.

When Teamcenter calculates the variant condition when allocating from a product BOP to a generic BOP, it only calculates for the line being allocated. Therefore, if you allocate a process with child processes or operations, it does not calculate the rolled-up variant condition for any children of the process being allocated. This results in a mismatch if you run an accountability check between the product BOP and the plant BOP. You have two choices in this case:

  • Do not run the accountability check for a level lower than the one you allocate.

  • Propagate the mismatch between the children of the process from the product BOP to the plant BOP.

Related Topics

  • Setting up the accountability check

Source: https://docs.sw.siemens.com/en-US/doc/282219420/PL20251212545240207.xid1364469/xid499696 · retrieved 2026-07-11