2
0
mirror of https://github.com/inventree/inventree-docs.git synced 2025-04-28 05:36:46 +00:00

Merge pull request #63 from SchrodingersGat/inherited-boms

Add docs for inheritable BOM items
This commit is contained in:
Oliver 2021-02-18 00:07:52 +11:00 committed by GitHub
commit a5c52f2dc2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 77 additions and 0 deletions

View File

@ -0,0 +1 @@
<mxfile host="app.diagrams.net" modified="2021-02-17T12:17:54.934Z" agent="5.0 (Windows)" etag="87DjzT5RRqVJtgo26s6S" version="14.3.2" type="device"><diagram id="pZJ5gzIsBflhyFRZTal-" name="Page-1">7Vpbb5swFP41SNvDJrCB0MeGdFukVevUqVufJhc7gQ5w5Di3/vqZYK4mlFYk7BKpUvHx/fs++5zjVoNutP3I0MK/ppiEGtDxVoMTDQDDBEBLfnS8Sy0jy0wNcxZg2agw3AZPRBp1aV0FmCwrDTmlIQ8WVaNH45h4vGJDjNFNtdmMhtVZF2hOFMOth0LV+j3A3E+tjqUX9k8kmPvZzIYuayKUNZaGpY8w3ZRM8EqDLqOUp1/R1iVhAl6GS9rvw4HafGGMxLxLh/vHn77r2uPp56/R4+Qp8qZw/U6OskbhSm74G4kWIeJEWG8Q4+LXpVw/32WgMLqKMUnGNTQ43vgBJ7cL5CW1GyEDYfN5FMpqOQNhnGwPLt3IARFKIjQinO1EE9kBOhJDKaKsuCkYMTKY/RIbtrQhKYJ5PnKBk/iQUL0ANqDApgE7FLOOcbAWn/Pk8w6xAMUJguOsVkxWajA4rqCGK9CHBhYqwBYouoPjZf5xeJkteE0Gx6uuLwiGxstuOLg1kEiMLxPHIUpeiJbLwKviQrYB/yG+9ffAksX7UtUk2bueFXZZIRarT3tZWfG+XFd025eyfunqCFacVI0CsQO6Yh55/qrniM0Jf+5uUyktUWY1MJbZGBHOI1hXl9tEo5zhhgZ7sWYnTK8qxoQ1JaTblL3K3q4+kFWTnlMbKMVBGWivqnzbrxfaqE+hjf5JocGz0HoQmtOn0LrrrEe9gI56Mc966UEvF4pexl+uhWHKSZQE+wIZ/c009gkT0QF+2xJD6M/HELMgDF0aUrbvCzEiziwR35Iz+ouUamzPIQ+zfqIOC1QRbsoW7AalgGMFHVku254uVGnIWzywIl14YRLRgaAjwG0YHYO84+GtZrUNeOcaTxK0+hHoH+lBjkLORVsA3nRrHo+bJn915kY7kEyelhvVN/yn3Ni1Ow003Wkn5QZ0utMqfIwVV34Kj1LnyyIONpv4csADtO0jnSU4OF/gzNcL/JI1OF9tL49XLRAP85JmmkO/pAH16VFBacjEc6hEEcILsZvWDK9rqqgOldN+omQRWOeIoPnGajyAp72xmt6yzx7mEF+jwflqehJu58s1TsNQD3grEXNXB3U8vDtlmhW8J38P3oZZi6C6/k38FXiLYvFvCqlrKf7ZA179Bg==</diagram></mxfile>

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

70
docs/build/bom.md vendored
View File

@ -6,6 +6,76 @@ title: Bill of Materials
A Bill of Materials (BOM) defines the list of component parts required to make an assembly, [create builds](../build) and allocate inventory.
A part which can be built from other sub components is called an *Assembly*.
## BOM Line Items
A BOM for a particular assembly is comprised of a number (zero or more) of BOM "Line Items", each of which has the following properties:
| Property | Description |
| --- | --- |
| Part | A reference to another *Part* object which is required to build this assembly |
| Quantity | The quantity of *Part* required for the assembly |
| Reference | Optional reference field to describe the BOM Line Item, e.g. part designator |
| Overage | Estimated losses for a build. Can be expressed as absolute values (e.g. 1, 7, etc) or as a percentage (e.g. 2%) |
| Inherited | A boolean field which indicates whether this BOM Line Item will be "inherited" by BOMs for parts which are a variant (or sub-variant) of the part for which this BOM is defined. |
| Optional | A boolean field which indicates if this BOM Line Item is "optional" |
| Note | Optional note field for additional information
!!! missing "Overage"
While the overage field exists, it is currently non-functional and has no effect on BOM operation
!!! missing "Optional"
The Optional field is currently for indication only - it does not serve a functional purpose (yet)
### Inherited BOM Line Items
When using the InvenTree [template / variant](../../part/template) feature, it may be useful to make use of the *inheritance* capability of BOM Line Items.
If a BOM Line Item is designed as *Inherited*, it will be automatically included in the BOM of any part which is a variant (or sub-variant) of the part for which the BOM Line Item is defined.
This is particulary useful if a template part is defined with the "common" BOM items which exist for all variants of that template.
Consider the example diagram below:
{% with id="inherited_bom", url="build/inherited_bom.png", description="Inherited BOM Line Items" %}
{% include 'img.html' %}
{% endwith %}
**Template Part A** has two BOM line items defined: *A1* and *A2*.
- *A1* is inherited by all variant parts underneath *Template Part A*
- *A3* is not inherited, and is only included in the BOM for *Template Part A*
**Variant B** has two line items:
- *A1* is inherited from parent part *A*
- *B1* is defined for part *B* (and is also defined as an inherited BOM Line Item)
**Variant C**
- *A1* inherited from *A*
- *C1* defined for *C*
**Variant D**
- *A1* inherited from *A*
- *B1* inherited from *B*
- *D1* defined for *D*
**Variant E**
- Well, you get the idea.
Note that inherited BOM Line Items only flow "downwards" in the variant inheritance chain. Parts which are higher up the variant chain cannot inherit BOM items from child parts.
!!! info "Editing Inherited Items"
When editing an inherited BOM Line Item for a template part, the changes are automatically reflected in the BOM of any variant parts.
## BOM Creation
BOMs can be created manually, by adjusting individual line items, or by upload an existing BOM file.
### Add BOM Item
To manually add a BOM item, navigate to the part/assembly detail page then click on the "BOM" tab. On top of the tab view, click on the <span class='fas fa-edit'></span> icon then, after the page reloads, click on the <span class='fas fa-plus-circle'></span> icon.

View File

@ -26,6 +26,12 @@ Refer to the [report documentation](../../report/report) for further information
[#1292](https://github.com/inventree/InvenTree/pull/1292) adds support for build order / work order reports. Refer to the [build report documentation](../../report/build) for further information.
### Inherited BOM Items
[#1313](https://github.com/inventree/InvenTree/pull/1313) adds support for inherited BOM items, allowing greater flexibility for Bill of Materials management when combined with the Template / Variant part system.
Refer to the [BOM documentation](../../build/bom) for further information.
## Major Bug Fixes
| PR | Description |
| --- | --- |