--- pdfexport: true module: Electronics timetoread: True tutorial: deepdive alias: tutorials-floor-life-propagation glightbox: True --- # Tutorial: Floor Life and Expiration Date Propagation ## Objective Learn how to configure and validate the propagation of floor life and expiration date during material operations, ensuring that the most critical material conditions are preserved throughout assembly. --- ## Step 0: Validate Preconditions Before executing propagation, ensure: - Source materials have: - Floor Life defined - Expiration Date defined (if applicable) - The relevant Product Revision has: - `SMTPropagateFloorLife = true` (if floor life propagation is required) - `SMTPropagateExpirationDate = true` (if expiration propagation is required) - A valid **BOM** exists (for assembly scenarios) --- ## Step 1: Configure Product for Propagation - Navigate to the **Product** and enable: - `SMTPropagateFloorLife = true` - `SMTPropagateExpirationDate = true` > This ensures that materials of this product, when consumed, will propagate these properties during assembly operations. --- ## Step 2: Prepare Materials ### 2.1 Define Source Material Conditions - Create or identify consumable materials - The materials should have set: - A **floor life remaining time** - An **expiration date** > Ensure at least one material is more critical (e.g., earlier expiration, lower remaining floor life) --- ![Floor Life Material Information](images/image_4.png) --- ### 2.2 Prepare Target Material - Create or identify the target material (e.g., Board) - Verify its current: - Floor life - Expiration date --- ![Floor Life Material Information](images/image_5.png) --- ## Step 3: Execute Assembly Operation - Perform one of the supported operations: - Automatic Assemble Material (recommended for this scenario) _(or any supported operation like Assemble, Combine, Compose)_ - Ensure materials are correctly assembled and processed --- ## Step 4: Validate Propagation - After execution, open the **target material** - Verify: - The **expiration date** is updated to the earliest from source materials - The **floor life remaining** reflects the lowest available value --- ![Floor Life Material Information](images/image_6.png) --- ## Expected Result - Target material inherits the most critical values: - Lowest floor life remaining - Earliest expiration date - If the target already had more critical values: - No changes are applied --- ## Frequent Configuration Questions ### Why is no propagation occurring? Check that the product attributes are correctly configured: - `SMTPropagateFloorLife` - `SMTPropagateExpirationDate` ### Why is propagation only occurring partially? Ensure that both attributes are enabled. Floor life and expiration date propagation are independent and must be configured separately. ### Why is the target material not being updated? The target material may already contain the most critical value. This is the expected behavior.