Skip Headers

Agile Product Lifecycle Management Product Governance and Compliance User Guide Release 9.3.3 E39296-01 |
| Contents

Previous | Next |

# C Defining Approach to Compliance Management

The internal business logic described below is provided for those compliance managers who want to analyze precisely how the system arrived at calculated or result compliance states.Compliance rollups can be managed by logic built into the Agile PG&C application; we use the shorthand "internal engine" for this approach to compliance management. The internal engine determines compliance at the lowest level within the top level object (part or top level assembly) such that it compares the amount of a substance within each sub-object (part or subpart) against the weight/mass of that sub-object. The rollup is then the worst case scenario of the compliance statuses of the individual sub-objects.

Examples:

- Compliance status of subparts rolls up to set compliance of a part.

- Compliance status of parts rolls up to set compliance of top level assembly.

Alternatively, compliance rollups can be managed by customer-originating systems; we use the shorthand "external engine" for this approach to compliance management. The external engine determines compliance for the top level object (part or top level assembly) such that it rolls up the amount of a substance from all of the sub-objects in the top level object and compares it to the weight/mass of that entire top level object.

Examples:

- Compliance status of a part is the total weight/mass of a substance in all the subparts compared to the weight/mass of the part.

- Compliance status of a top level assembly is the total weight/mass of a substance in all the BOM parts compared to the weight/mass of the top level assembly.

## C.1 Internal Rollup Engine Rule Change

As mentioned earlier in the guide, the internal rollup engine does not handle rollup for REACH; only the external rollup engine does. A specification's attribute of Internal or External qualifies it for the related rollup.

For internal specifications, if no information is found in 'calculated compliance' or 'declared compliance' attribute, logic treats this as 'missing info'. The engine rolls up the status to make the bubble red on the Compliance tab header by updating the summary compliance to 'Missing Info'.

If the rollup engine finds no specifications with rollup set to Internal, the internal rollup engine task is stopped, and instead a rollup of the calculated compliance statuses of the specifications occurs and the summary compliance attribute is set accordingly.

A user cannot run 'Calculate Compliance' on a specification that is marked as 'External'. An error message is issued to the user if this occurs: 'The selected specification is marked as external. External specifications cannot be rolled up using calculate compliance'.

## C.2 System Logic of BOS/Composition Rollups

Be sure you have read Bill Of Substances (Composition) Rollup; the following information is supplemental to that section. This summarizes how the rollup works for BOS tree with various substance objects.

### C.2.1 Rollup Logic for Substances

If there is a value in the Declared Compliance attribute, the rollup uses this value. If there is no value in the Declared Compliance, the system looks for Declared PPM and uses it for the rollup. If there is no value in Declared PPM attribute, the system looks for substance mass and part mass. If both values are available, the system calculates the PPM, compares it with threshold PPM, and sets the proper value in the Calculated Compliance attribute.

In a Fully Disclosed composition, if the substances or substance groups in the spec are missing in the composition, they become compliant automatically.

In a Partially Disclosed composition, the system checks compliance against the Unreported substance for all the spec substances or substance groups that are missing in the composition. Only when all the specifications' substances or substance groups that are missing in the composition are compliant against the Unreported substance, the composition is considered as compliant for that spec.

If the "Unreported (System)" substance PPM is higher than on the specifications' substances or substance groups that are missing in the composition, then the calculated compliance for that composition or parent of the substances will be Missing Info because the missing substance could be that substance or substance group from the spec, so the system cannot determine the compliance.

### C.2.2 Rollup Logic for Substance Groups

If there is a value in the Declared Compliance attribute at the substance group level, the rollup uses this value. If there is no value in the Declared Compliance attribute at the substance group level, it looks for Declared PPM or Declared Mass at the substance group level and uses it for the rollup. If there is no value in the Declared PPM or Declared Mass at the substance group level, it looks for substance mass and conversion factor for all the substances in the substance group (the system does not calculate the compliance for substances within substance group, even if user provided Declared Compliance attribute value, it is ignored), then it calculates the base substance mass for each of the substances (substance mass multiplied by conversion factor), and it updates the calculated mass at the substance group level. If user provided the mass for immediate parent of substance group (it could be part or part group, subpart or material), the system calculates the PPM, compares it with threshold PPM for the substance group (it reads the threshold PPM from spec), and sets the appropriate value in the Calculated Compliance attribute.

### C.2.3 Rollup Logic for Materials

If there is a value in the Declared Compliance attribute at the material level, the rollup uses this value. If there is no value in the Declared Compliance attribute, it looks at the children of the BOS tree under the material (it ignores the value in the declared PPM at the material level). If the BOS tree contains a substance group or substances, it uses the logic above to calculate the compliance. If there are multiple substance groups, the material is compliant, providing all the substance groups are compliant. If any one of the substance groups is missing info or not compliant, it affects the Calculated Compliance of the material.

### C.2.4 Rollup Logic for Subparts

If there is a value in the Declared Compliance attribute at the subpart level, the rollup uses this value. If there is no value in the Declared Compliance attribute, it looks at the children of the BOS tree of the subpart (it ignores the value in the declared PPM at the subpart level). If the BOS tree contains materials, substance groups or substances, it uses the logic above to calculate the compliance. If there are multiple materials, the subpart is compliant, providing all the materials are compliant. If any one of the materials is missing info or not compliant, it affects the Calculated Compliance at the subpart level.

### C.2.5 Rollup Logic for Parts and Part Groups

If there is a Declared Compliance, the rollup uses this value. If there is no value in the Declared Compliance attribute, it looks at the BOS tree for that part. If the BOS tree contains subparts, materials, substance groups and substances, it uses the logic above to calculate the compliance. If there are multiple subparts, the part is compliant, providing all the subparts are compliant. If any one of the subparts is missing info or not compliant, it affects the Calculated Compliance at the part level.

### C.2.6 Special Cases that can Result in Missing Info Compliance State

Let there be five substances in a substance group; two of them do not have a conversion factor. The system calculates the substance group mass based on the other three substances, calculates the PPM, and compares it with the threshold PPM from the specification. (Actually, this is only true if the substance has mass, but no conversion factor: if the substance doesn't have mass, the system just ignores it.) If it is not compliant, it sets the Calculated Compliance to Not Compliant. If it is compliant, then it sets the Calculated Compliance to Missing Info, because the other two substances do not have a conversion factor.

Here are some other potential use cases where Missing Info can be returned as Calculated Compliance.

- The parent mass is not provided to calculate Calculated PPM, so the rollup has nothing to compare with Threshold PPM from the specification, so it results in Missing Info.

- If some of the mandatory substances from the specification are missing in the declaration, even if all the existing substances are compliant, the parent - either material or subpart or part - is marked as Missing Info.

As of Rel. 9.2.2, this depends on the Mass Disclosure Type. The initial statement is true for Undisclosed compositions. For Partially Disclosed compositions, the system attempts to access compliance of missing substances against the "Unreported (System)" substance added by the system. For Fully Disclosed compositions, the missing substances are automatically Compliant.

- If the Conversion Factor for a substance under a substance group is missing, but the substance has value in the Mass field, the system flags Missing Info at the substance group level.

In 9.2.2, if the same substance exists in the substance group during import, the system attempts to copy over the Conversion Factor from the substance group.

- If the specification does not have any substances (or only "optional" substances), Calculated Compliance is Missing Info.

### C.2.7 Additional Information

Declared PPM values at the material level and subpart level are not considered by the rollup.

The Calculated PPM is set at the leaf substance and substance group level only (the Calculated PPM for substances within substance group are not calculated).

Declared Compliance values for substances within substance group are not considered by the rollup.

The Calculated Compliance and Result Compliance for substances within substance group and for all Optional substances (either Reporting set to Optional in the spec or substances do not even exist in the spec) are not calculated. In 9.2.2, the system calculates compliance for Optional substances as well, but these results are ignored when calculating the compliance of the parent of substances.

In cases where the system uses the value in Declared Compliance field, it still updates the Calculated Compliance, but the Result Compliance is set to the value in Declared Compliance field.

In cases where the system uses declared PPM, it still calculates the calculated PPM if all the values (mass and parent mass) are available.

#### C.2.7.1 Corner Case

If the user provided declared PPM for substances within a substance group, the system calculates the substance mass based on the PPM and mass of the parent of the substance group (material, subpart or part), then it uses the same logic for substance group to calculate the compliance. If the parent mass is missing, then it uses the declared mass (if its available) to calculate the mass at substance group level.

## C.3 System Logic of BOM/Compliance Rollups

Be sure you have read Bill Of Materials (Compliance) Rollup; the information below is supplemental to that section.

### C.3.1 Compliance Calculation

Compliance Validation is a very taxing operation within Agile PLM. It is currently impossible for the system to catch up in a split second (like Excel) with all changes a user makes in the system that might impact compliance, although this is clearly the goal. The problem is clearly exponential. A compliance change to a manufacturer part will impact all items that have this manufacturer part in their AML. This in turn will impact all top level assemblies and all intermediary assembly levels that have that item in their BOM. In the worst of cases, a small change may require the calculation of the whole system.

Excel has the same problem when spreadsheets get too big. Therefore Excel has introduced the ability to turn automatic calculation off and to use a manual calculation.

PG&C has the same type of a user launched manual calculation option. On top of that PG&C has a timer-based automatic calculation that recalculates the compliance state of everything in the system based on some rules.

#### C.3.1.1 Automatic Calculation

The system performs a compliance rollup automatically in these cases:

- Per the schedule set by the administrator using Compliance Rollup rules;

- For all items flagged as Shippable Items, all Latest released revs and Pending revs (previously released revs of shippable items are not rolled up again);

- Every part which has Need Compliance Check to Yes for at least one spec.

#### C.3.1.2 Manual Calculation

Manual calculations always run in the foreground. The calculation happens for the currently selected rev of the item. The user can use the manual calculation to recalculate a back rev if needed.

### C.3.2 Calculation and Publishing of Compositions

Compliance calculation does not happen automatically for an item or manufacturer part upon publishing data from a declaration to the part. When a composition is published, all the specifications for that part are flagged with Need Compliance Check, because the new composition could be Fully Disclosed and it may influence the compliance of existing specs that don't have matching spec compositions; it is set on the corresponding part's Compliance tab > Specifications table (again, it is not visible on items, but it is present and the system responds to it). Its compliance is evaluated either when the user launches the calculation or the next time the automatic compliance validation runs.

When there are changes in an assembly (that is, an ECO changes a BOM or an MCO changes a manufacturer part), there is no trigger to recalculate the compliance. If the item is marked as Shippable Item, the scheduled rollup recalculates the compliance; otherwise, you have to manually run the rollup to calculate compliance.

When importing specifications directly into an item or manufacturer part, after the Import procedure is completed, the system does a composition rollup and updates the Calculated Compliance and Result Compliance on the Composition table; however, it does not recalculate the compliance of all the specifications in the item or manufacturer part. It adds the specifications from the compositions being imported to the item or manufacturer part's Specifications table and sets the Need Compliance Check to Yes.

Note that if the composition being imported does not have a specification, the system does not do a composition rollup after the import. However, as of 9.2.2, it still calculates the PPM for substances and substance groups in the composition, identifies the Mass Disclosure type, and sets Need Compliance Check on all existing specs to Yes.

## C.4 Internal Logic of Substances and Weights Rollups

Be sure you have read Substances and Weights Rollups using Excel Integration; the information below is supplemental to that section.

These calculations describe how to roll up information from the lowest level of substances to the highest top-level assembly (TLA). The following levels can be identified within this "extended BOM," that is, a BOM of parts combined with its constituent Bill of Substances (BOS). All the parts come first - the TLA, subassemblies, internal parts, and manufacturer parts. Then comes the composition for any given part - again, this is not an Agile object but an idea combining the part, a specification, and an information provider. Finally, the composition is the top level of the BOS, which comprises any subparts, homogeneous materials, substance groups, and base substances.

Not all extended BOMs have all the different levels. Of course the structure will further have one or more instances at every level within as dictated by the BOM structure and the numbers of part manufacturers for each manufactured part in the BOM.

### C.4.1 Hierarchy of BOM and BOS

Top-level assembly (top level of the BOM) >

Subassembly >

Part >

Manufacturer part >

Active Composition (top level of the BOS: part + spec + supplier-specific) >

Subpart >

Material >

Substance Group >

Substance

### C.4.2 Aggregate Rule

The "Aggregate" rule refers to the distinction between "aggregated substances" and "directly assigned substances." Aggregated substances are substances that are implicitly assigned to a level through the rollups. If the substance is directly assigned at the level under observation, it is a directly assigned substance. But if a substance is assigned lower in the hierarchy - and through the rollups it becomes part of this particular level - then this substance is an aggregated substance.

In addition to the basic structure of an extended BOM, different types of rollups can be performed that make use of multiple manufacturers of the manufactured parts when calculations are made. The Pessimistic Worst Case (PWC) is the absolute worst of the worst that could ever be in found in a BOM in terms of hazardous material content. In this scenario the BOM/BOS tree is the amalgamation of compositions of all available suppliers of each part in the BOM.

For example, if Mfr part A is available from three sources, the PWC of the BOM/BOS tree includes the amount of lead from the composition with the most lead of the three. As you can see, no such actual assembly is ever built. However, if the PWC case is compliant versus the threshold values that will be set by a given specification, then any configuration of the BOM in terms of the AML will be compliant. The pessimistic worst case trades realism for ease of use. It requires no user determination in terms of AML management to identify the worst mfr. part in an AML and to calculate this case.

### C.4.3 Substance to Substance Group-level Rollup

For each substance in the group, there is a conversion factor that converts (by weight) the weight of the substance to a weight of the base substance (see column Conversion Factor to metal mass). In the end, the base substance gets the sum of all the converted weights assigned as its weight. The base substance is the same as the aggregated substance.

The system does not allow you to add two substance groups with the same base substance to the same specification.

When the system performs rollup from substance to substance group level, it calculates the weight of the base substance by examining all substances that belong to the substance group, taking the weight of each substance multiplied by its conversion factor, adding all substances together, and assigning it at the substance group level.

If a substance group has declared weight, that has precedence over the weight of the substances under that substance group. Excel Rollup takes the weight of the substance group.

#### C.4.3.1 Example

Lead and lead compound: Declared weight: 1 g

-Lead Declared weight: 1 g Conversion factor = 1

-Lead Oxide Declared weight: 2 g Conversion factor = 0.866

- Substance group's calculated weight = (1 x 1) + (2 x 0.866) = 1 + 1.732 = 2.732 g

- If substance group has declared weight, then its calculated weight is its declared weight = 1 g

### C.4.4 Substance Group to Composition

When rolling up from substance group to composition, first the system does the rollup from substance to substance group. If there are multiple substance group and/or substances in a composition, it adds up all the substances weight and substance group weight and assign the sum to the calculated weight of the composition.

If a composition has declared weight, that has precedence over the summed weight of the substances and substance group. Excel Rollup takes the declared weight of the composition.

#### C.4.4.1 Example

Composition Declared weight: 5 g

-Al Declared weight: 3 g Conversion factor = 1

-Lead and lead compound:

-Lead Declared weight: 1 g Conversion factor = 1

-Lead Oxide Declared weight: 2 g Conversion factor = 0.866

-Cadmium and cadmium compound: Declared weight: 2 g

-Cadmium Declared weight: 1 g Conversion factor = 1

- Composition's calculated weight = (3 x 1) + (1 x 1) + (2 x 0.866) + 2 = 7.732 g

- If the composition has declared weight, then its calculated weight is its declared weight = 5 g

### C.4.5 Substance Group/Substance to Material-level Rollup

1. The system first creates a unique list of substances across the aggregated and directly assigned substances. In case the same substance appears both as a directly assigned as well as an aggregated substance, the system adds up the weights of both of those instances into one aggregated substance.

2. The system adds up all the weights of all the substances and assigns this weight as the calculated weight of the material.

3. The system calculates the PPMs for each of the substances and populates the aggregated substances' calculated PPMs field with these values.

Note: The material might have a user-entered weight as well. In cases where the user makes such manual entries, the system uses the entered weight of the material instead of the calculated weight of the material. Also, declared weights take precedence over calculated weights.

### C.4.6 Material to Subpart-level Rollup

The system first creates a unique list of substances and materials across the aggregated and directly assigned substances and materials. In case the same substance / material appears both as a directly assigned as well as an aggregated substance / material, the system adds up the weights of both of those instances into one aggregated substance / material.

1. The system adds up all the weights of all the substances / materials and assigns this weight as the calculated weight of the subpart.

2. The system calculates the PPMs for each of the substances / materials and populate the aggregated substances/materials' calculated PPMs field with these values. Note that the subpart might have a user-entered weight as well. In cases where the user makes such manual entries, the system uses the entered weight of the subpart instead of the calculated weight of the subpart. Also, declared weights take precedence over calculated weights.

### C.4.7 Subpart to Composition-level Rollup

The system first creates a unique list of substances and materials across the aggregated and directly assigned substances and materials. In case the same substance / material appears both as a directly assigned as well as an aggregated substance / material, the system adds up the weights of both of those instances into one aggregated substance / material.

1. The system adds up all the weights of all the substances / materials and assigns this weight as the calculated weight of the composition.

2. The system calculates the PPMs for each of the substances / materials and populates the aggregated substances/materials' calculated PPMs field with these values.

Note: The composition might have a user-entered weight as well. In cases where the user makes such manual entries, the system uses the entered weight of the composition instead of the calculated weight of the composition. Also, declared weights take precedence over calculated weights.

### C.4.8 Composition to Part-level Rollup

In the Pessimistic Worst Case rollup:

1. The system creates a unique list of substances and aggregated substances for each of the compositions within the mfr. part/part by adding up the weights of like substances. For example, a composition can have lead directly assigned to it but lead could also be coming from lower levels of the BOS as an aggregated substance. In this case, the weight of lead is added to lead as an aggregated substance to have only one entry for lead.

2. The system makes a unique list of all the substances across all the compositions of the mfr. part, both the ones that are directly added as well as the aggregated substances that are the result from lower-level rollups assigned to the part and assign the highest weight of the substances found across the compositions to that substance.

The system assigns the lowest weight of all the compositions in the AML to the calculated weight of the mfr. part/part.

### C.4.9 Composition to Manufacturer Part

When rolling up from composition to manufacturer part, follow the PWC rule. If a mfr. part has multiple compositions, get the lowest "composition weight" from among all the compositions and assign it to the mfr. part's weight. Then, get a consolidated list of all substances from all compositions, and get the highest substance weight for each kind of substance at mfr. part level.

If a mfr. part has declared weight, that has precedence over the weight of the compositions under that mfr. part. Excel Rollup takes the declared weight of the mfr. part.

#### C.4.9.1 Example

Manufacturer part Declared weight: 4 g

- Composition_1: Calculated weight = (3 x 1) + (1 x 1) + (2 x 0.866) = 5.732 g

- Al Declared weight: 3 g Conversion factor = 1

- Lead and lead compound:

- Lead Declared weight: 1 g Conversion factor = 1

- Lead Oxide Declared weight: 2 g Conversion factor = 0.866

- Composition_2: Calculated weight = (4 x 1) + 2 = 6 g

- Al Declared weight: 4 g Conversion factor = 1

- Cadmium and cadmium compound: Declared weight: 2 g

- Cadmium Declared weight: 1 g Conversion factor = 1

- Manufacturer part's calculated weight = 5.732 g, which is the lowest

- If manufacturer part has declared weight, then its calculated weight is its declared weight = 4 g

### C.4.10 Manufacturer Part to Part-level Rollup

To go from the manufacturer part to the part level, the following logic applies:

In the Pessimistic Worst Case rollup:

1. The system creates a unique list of substances and aggregated substances for each of the manufacturer parts within the AML by adding up the weights of like substances. For example, a mfr. part can have lead directly assigned to it but lead could also be coming from lower levels of the BOS as an aggregated substance. In this case the weight of lead is added to lead as an aggregated substance to have only one entry for lead.

2. The system makes a unique list of all the substances across all the manufacturer parts of the AML, both the ones that are directly added as well as the aggregated substances that are the result from lower-level rollups assigned to the part and assign the highest weight of the substances found in the entire AML to that substance.

3. The system assigns the lowest weight of all the mfr. parts in the AML to the calculated weight of the part.

4. The system recalculates the weights of the substances in order to get the PPM values in sync with the assigned weight of the part.

When rolling up from manufacturer part to part, follow the PWC rule. If an item has multiple mfr. parts, get the lowest mfr. part weight from all the mfr. parts and assign it as the part weight. Then, get the consolidated list of all substances from all mfr. parts, and get the highest substance weight for each kind of substance at part level.

If part has declared weight, that is only for reference. Excel Rollup takes the calculated weight of the part.

#### C.4.10.1 Example

Part Declared weight: 1 g

- Manufacturer part_1 Calculated weight = 2.732 g

- Composition Calculated weight = (1 x 1) + (2 x 0.866) = 2.732 g

- Lead and lead compound

- Lead Declared weight: 1 g Conversion factor = 1

- Lead Oxide Declared weight: 2 g Conversion factor = 0.866

- Manufacturer part_2 Calculated weight = 2.866 g

- Composition Calculated weight = (2 x 1) + (1 x 0.866) = 2.866 g

- Lead and lead compound

- Lead Declared weight: 2 g Conversion factor = 1

- Lead Oxide Declared weight: 1 g Conversion factor = 0.866

- Part's calculated weight = 2.732 g, which is the lowest

- Lead and lead compound's calculated weight = 2.866 g, which is the highest

#### C.4.10.2 More on How Mfr Part to Part Works

If part has its direct composition and composition from manufacturer parts, treat the direct composition as manufacturer part, and apply PWC rule.

#### C.4.10.3 Example

Part

- Composition Calculated weight = (1 x 1) + (1 x 0.866) = 1.866 g

- Lead and lead compound

- Lead Declared weight: 1 g Conversion factor = 1

- Lead Oxide Declared weight: 1 g Conversion factor = 0.866

- Manufacturer part_1 Calculated weight = 2.732 g

- Composition Calculated weight = (1 x 1) + (2 x 0.866) = 2.732 g

- Lead and lead compound

- Lead Declared weight: 1 g Conversion factor = 1

- Lead Oxide Declared weight: 2 g Conversion factor = 0.866

- Manufacturer part_2 Calculated weight = 2.866 g

- Composition Calculated weight = (2 x 1) + (1 x 0.866) = 2.866 g

- Lead and lead compound

- Lead Declared weight: 2 g Conversion factor = 1

- Lead Oxide Declared weight: 1 g Conversion factor = 0.866

- Part's calculated weight = 1.866 g, which is the lowest

- Lead and lead compound's calculated weight = 2.866 g, which is the highest

### C.4.11 Part to Assembly

When rolling up from part to assembly, follow the Aggregate rule. If an assembly has multiple items, sum the weights of all items and assign it to the assembly weight. Likewise, get the consolidated list of all substances from all the items and get their total weight.

If assembly has declared weight, that is only for reference. Excel Rollup takes the calculated weight of assembly.

#### C.4.11.1 Example

Assembly Declared weight: 1 g

- Part_1 Calculated weight = 2.732 g

- Composition Calculated weight = (1 x 1) + (2 x 0.866) = 2.732 g

- Lead and lead compound

- Lead Declared weight: 1 g Conversion factor = 1

- Lead Oxide Declared weight: 2 g Conversion factor = 0.866

- Part_2 Calculated weight = 2.866 g

- Composition Calculated weight = (2 x 1) + (1 x 0.866) = 2.866 g

- Lead and lead compound

- Lead Declared weight: 2 g Conversion factor = 1

- Lead Oxide Declared weight: 1 g Conversion factor = 0.866

- Assembly's calculated weight = 2.732 + 2.866 = 5.598 g

- Lead and lead compound's calculated weight = 2.732 + 2.866 = 5.598 g

#### C.4.11.2 More on How Part to Assembly Works

If an assembly has direct compositions and compositions from BOM, follow the aggregated rule.

#### C.4.11.3 Example

Assembly

- Composition Calculated weight = 1.866 g

- Lead and lead compound

- Lead Declared weight: 1 g Conversion factor = 1

- Lead Oxide Declared weight: 1 g Conversion factor = 0.866

- Part_1 Calculated weight = 2.732 g

- Composition Calculated weight = 2.732 g

- Lead and lead compound

- Lead Declared weight: 1 g Conversion factor = 1

- Lead Oxide Declared weight: 2 g Conversion factor = 0.866

- Part_2 Calculated weight = 2.866 g

- Composition Calculated weight = 2.866 g

- Lead and lead compound

- Lead Declared weight: 2 g Conversion factor = 1

- Lead Oxide Declared weight: 1 g Conversion factor = 0.866

- Assembly's calculated weight = 1.866 + 2.732 + 2.866 = 7.464 g

- Lead and lead compound's calculated weight = 1.866 + 2.732 + 2.866 = 7.464 g

#### C.4.11.4 Another Example of How Part to Assembly Works

If an assembly has direct compositions, compositions from MPN and also compositions from BOM, follow PWC rule between direct- compositions and MPN- compositions. Between the result and the BOM- compositions, follow the aggregated rule.

In the following example, first the Composition and Mfr Part data is assessed; then this is combined with the two parts' composition data.

#### C.4.11.5 Example

Assembly

- Composition Calculated weight = 1.866 g

- Lead and lead compound

- Lead Declared weight: 1 g Conversion factor = 1

- Lead Oxide Declared weight: 1 g Conversion factor = 0.866

- Manufacturer part

- Composition Calculated weight = 1.5 g

- Lead and lead compound Declared weight: 1.5 g

- Lead Declared weight: 1 g Conversion factor = 1

- Lead Oxide Declared weight: 1 g Conversion factor = 0.866

- Part_1

- Composition Calculated weight = 2.732 g

- Lead and lead compound

- Lead Declared weight: 1 g Conversion factor = 1

- Lead Oxide Declared weight: 2 g Conversion factor = 0.866

- Part_2

- Composition Calculated weight = 2.866 g

- Lead and lead compound

- Lead Declared weight: 2 g Conversion factor = 1

- Lead Oxide Declared weight: 1 g Conversion factor = 0.866

First, get the 'middle' data from "Manufacturer Part" and "Composition":

- Mfr. Part Composition weight: 1.5

- Lead and lead compound wt: 1.866

Then, separately add this 'middle' data to the composition data for Part 1 and Part 2:

- Assembly's calculated weight = 1.5 + 2.732 + 2.866 = 7.098 g

- Lead and lead compound's calculated weight = 1.866 + 2.732 + 2.866 = 7.464 g

### C.4.12 Notes

xxxx

#### C.4.12.1 Multiple composition

If there are multiple compositions for a part for the same Spec, the server returns all active compositions for the part, and the rollup- logic follows the PWC rule among those active compositions.

#### C.4.12.2 Level, Type, Declared PPM, Declared weight, CAS Number

They are populated from "Data" sheet to "Substance And Weight Rollup" sheet after running scenario. In Rel. 9.2.1.3, it has value after running the scenario, but the value may not be correct.

### C.4.13 Rollup Rules

When there is at least one substance OR substance group, that has PPM above the threshold, we have to select the "This part does contain substances listed in the referenced specification above reporting limits as detailed below," because the moment one substance or substance group is not compliant, the whole part is not compliant. That's not true the other way, that is, only if all the substances are compliant, the part becomes compliant.

For the UOM, when open the rollup Excel, the mass value is exported and auto converted, using the standard UOM.

If Quantity value is Null or non- numeric in Excel, when do rollup system returns proper message. There is no cell highlighting and Quantity can have a non- numeric (string) value.