diff --git a/_includes/donate.html b/_includes/donate.html deleted file mode 100644 index 33e6183..0000000 --- a/_includes/donate.html +++ /dev/null @@ -1,8 +0,0 @@ -
- - - - - -
- \ No newline at end of file diff --git a/docs/admin/admin.md b/docs/admin/admin.md index 71320dd..6f3d58b 100644 --- a/docs/admin/admin.md +++ b/docs/admin/admin.md @@ -1,6 +1,5 @@ --- title: InvenTree Admin Interface -layout: page --- ## Admin Interface diff --git a/docs/admin/export.md b/docs/admin/export.md index fd619ea..fad9131 100644 --- a/docs/admin/export.md +++ b/docs/admin/export.md @@ -1,6 +1,5 @@ --- title: Exporting Data -layout: page --- ## Exporting Data diff --git a/docs/admin/import.md b/docs/admin/import.md index b39af97..f6d801a 100644 --- a/docs/admin/import.md +++ b/docs/admin/import.md @@ -1,6 +1,5 @@ --- title: Importing Data -layout: page --- ## Importing Data diff --git a/docs/assets/images/build/bom_add_item.png b/docs/assets/images/build/bom_add_item.png new file mode 100644 index 0000000..a535629 Binary files /dev/null and b/docs/assets/images/build/bom_add_item.png differ diff --git a/docs/assets/images/build/bom_invalid.png b/docs/assets/images/build/bom_invalid.png new file mode 100644 index 0000000..f6fa0e2 Binary files /dev/null and b/docs/assets/images/build/bom_invalid.png differ diff --git a/docs/assets/images/build/bom_select_fields.png b/docs/assets/images/build/bom_select_fields.png new file mode 100644 index 0000000..dd46a07 Binary files /dev/null and b/docs/assets/images/build/bom_select_fields.png differ diff --git a/docs/assets/images/build/bom_select_parts.png b/docs/assets/images/build/bom_select_parts.png new file mode 100644 index 0000000..eaa77a0 Binary files /dev/null and b/docs/assets/images/build/bom_select_parts.png differ diff --git a/docs/assets/images/build/bom_upload_file.png b/docs/assets/images/build/bom_upload_file.png new file mode 100644 index 0000000..a070bd0 Binary files /dev/null and b/docs/assets/images/build/bom_upload_file.png differ diff --git a/docs/assets/images/build/bom_valid.png b/docs/assets/images/build/bom_valid.png new file mode 100644 index 0000000..dfd6dd3 Binary files /dev/null and b/docs/assets/images/build/bom_valid.png differ diff --git a/docs/assets/images/build/build_complete.png b/docs/assets/images/build/build_complete.png new file mode 100644 index 0000000..b83237c Binary files /dev/null and b/docs/assets/images/build/build_complete.png differ diff --git a/docs/assets/images/build/build_start_new.png b/docs/assets/images/build/build_start_new.png new file mode 100644 index 0000000..0868f91 Binary files /dev/null and b/docs/assets/images/build/build_start_new.png differ diff --git a/docs/assets/open-in-new-custom.svg b/docs/assets/open-in-new-custom.svg new file mode 100644 index 0000000..f78ecd6 --- /dev/null +++ b/docs/assets/open-in-new-custom.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/docs/assets/paypal-logo-small-min-300x136.png b/docs/assets/paypal-logo-small-min-300x136.png new file mode 100644 index 0000000..9a71b50 Binary files /dev/null and b/docs/assets/paypal-logo-small-min-300x136.png differ diff --git a/docs/build/bom.md b/docs/build/bom.md index f27d1f7..03e8bf9 100644 --- a/docs/build/bom.md +++ b/docs/build/bom.md @@ -1,11 +1,84 @@ --- title: Bill of Materials -layout: page --- ## Bill of Materials -A Bill of Materials (BOM) defines the list of component parts required to make an assembly. +A Bill of Materials (BOM) defines the list of component parts required to make an assembly, [create builds](/build/build) and allocate inventory. -!!! missing "TODO" - This section requires further work +### 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 :fontawesome-solid-edit: icon then, after the page reloads, click on the :fontawesome-solid-plus-circle: icon. + +The `Create BOM Item` form will be displayed: +{% with id="bom_add_item", url="build/bom_add_item.png", description="Create BOM Item Form" %} +{% include 'img.html' %} +{% endwith %} + +Fill-out the `Quantity` (required), `Reference`, `Overage` and `Note` (optional) fields then click on the "Submit" button to add the BOM item to this part's BOM. + +### Upload BOM + +Uploading a BOM to InvenTree is a three steps process: + +1. upload BOM file +0. select matching InvenTree fields +0. select matching InvenTree parts. + +To upload a BOM file, navigate to the part/assembly detail page then click on the "BOM" tab. On top of the tab view, click on the :fontawesome-solid-edit: icon then, after the page reloads, click on the :fontawesome-solid-file-upload: icon. + +The following view will load: +{% with id="bom_upload_file", url="build/bom_upload_file.png", description="BOM Upload View" %} +{% include 'img.html' %} +{% endwith %} + +#### Upload BOM File + +Click on the "Choose File" button, select your BOM file when prompted then click on the "Upload File" button. + +!!! info "BOM Formats" + The following BOM file formats are supported: CSV, TSV, XLS, XLSX, JSON and YAML + +#### Select Fields + +Once the BOM file is uploaded, the following view will load: +{% with id="bom_select_fields", url="build/bom_select_fields.png", description="Select Fields View" %} +{% include 'img.html' %} +{% endwith %} + +InvenTree will attempt to automatically match the BOM file columns with InvenTree part fields. `Part_Name` is a **required** field for the upload process and moving on to the next step. Sprcifying the `Part_IPN` field matching is very powerful as it allows to create direct pointers to InvenTree parts. + +Once you have selected the corresponding InvenTree fields, click on the "Submit Selections" button to move on to the next step. + +#### Select Parts + +Once the BOM file columns and InvenTree fields are correctly matched, the following view will load: +{% with id="bom_select_parts", url="build/bom_select_parts.png", description="Select Parts View" %} +{% include 'img.html' %} +{% endwith %} + +InvenTree automatically tries to match parts from the BOM file with parts in its database. For parts that are found in InvenTree's database, the `Select Part` field selection will automatically point to the matching database part. + +!!! info "Create New Part" + The :fontawesome-solid-plus: icon in the `Select Part` column let's you load the `Create New Part` form which allows you to create an InvenTree part during the BOM upload process. + +In this view, you can also edit the parts `Reference` and `Quantity` fields. + +Once you have selected the corresponding InvenTree parts, click on the "Submit BOM" button to complete the BOM upload process. + +### Validate BOM + +After [adding BOM items manually](#add-bom-item) or [uploading a BOM file](#upload-bom), you should see the following view: +{% with id="bom_invalid", url="build/bom_invalid.png", description="Invalid BOM View" %} +{% include 'img.html' %} +{% endwith %} + +The first message in the red box `The BOM for PCBA TEST has changed, and must be validated.` points out that InvenTree BOM needs to be "validated". BOM validation is a way to ensure a BOM does not have duplicate items/parts. + +To process with BOM validation, click on the :fontawesome-solid-clipboard-check: icon and the `Validate BOM` form will be displayed. Click one the "Validate" switch then click on the "Submit" button. + +Voilà, this Bill or Materials is validated :material-emoticon-cool: + +{% with id="bom_valid", url="build/bom_valid.png", description="Valid BOM View" %} +{% include 'img.html' %} +{% endwith %} diff --git a/docs/build/build.md b/docs/build/build.md index 2b3baa0..b899f6f 100644 --- a/docs/build/build.md +++ b/docs/build/build.md @@ -1,9 +1,101 @@ --- -title: Build -layout: page +title: Build Parts --- ## Building Parts -!!! missing "TODO" - This section requires further work +Build management can be accessed via the *Build* navigation tab. + +A "basic" build flow is as follow: + +1. create a part with the [*Assembly option*](/part/views/#part-options) turned-on +0. add a Bill of Material (BOM) +0. create a "Build Order" for this part +0. allocate stocks from your inventory +0. update build status and notes +0. complete the build. + +##### Future Features + +| Feature | Status | +| ----------- | ----------- | +| Allow edit of completed builds | :material-progress-clock: [Work In Progress](https://github.com/inventree/InvenTree/pull/993) | +| Track subparts used in build | :material-progress-clock: [Work In Progress](https://github.com/inventree/InvenTree/pull/991) | +| Partial build completion | :material-close: Not yet supported | + +### Build Status + +| Status | Description | +| ----------- | ----------- | +| `Pending` | "Build Order" has been created and build is ready for subpart allocation | +| `Allocated` | All subparts stocks in the part BOM have been allocated | +| `Cancelled` | Build has been cancelled | +| `Completed` | Build has been completed | + +### Part BOM + +A Part BOM is required to allocate inventory to a build. + +Read through the [Bill of Materials documentation](/build/bom). + +### Build Order + +Builds orders are used to create parts builds. + +To create a build order for your part, you have two options: + +1. navigate to the Part detail page, click on "Build Orders" tab then click on "Start New Build" button +0. navigate to the Build page, click on "New Build Order". + +{% with id="build_start_new", url="build/build_start_new.png", description="Start New Build Form" %} +{% include 'img.html' %} +{% endwith %} + +Fill-out the form then click the "Submit" button to create the build. + +### Stock Allocation + +To allocate stock for a build, you have two options: + +1. **automatic** allocation: if each subpart has only **one** storage location, InvenTree can allocate stock from this location automatically +0. **manual** allocation: user can define allocation for each subpart in the build. + +During allocation, InvenTree relies on [Stock items](/stock/stock/#stock-item) to reference parts that will be used for the build. Make sure to read through the [stock documentation](/stock/stock) before proceeding with stock allocation. + +#### Automatic Allocation + +Click on the "Allocated Parts" tab then click on the "Auto Allocate" button to automatically allocate stock for this build. + +The `Allocate Stock` form will be displayed. Verify each subpart automatic allocation, click on the confirmation switch, then click on the "Submit" button to process the stock allocation. + +#### Manual Allocation + +Click on the "Allocated Parts" tab then click on the :fontawesome-solid-plus: icon next to each subpart in the build to manually allocate stock. + +The `Allocate new Part` form will be displayed. Select a `Stock Item` and fill-out the `Quantity` field then click on the "Submit" button to allocate stock for this subpart. + +#### Unallocate + +Click on the "Allocated Parts" tab then click on the "Unallocate" button to unallocate stock items allocated for this build. + +### Cancel Build + +To cancel a build, click on :fontawesome-regular-times-circle: icon on the build detail page. + +The `Cancel Build` form will be displayed, click on the confirmation switch then click on the "Cancel Build" button to process the build cancellation. + +!!! warning "Cancelled Build" + **A cancelled build cannot be re-opened**. Make sure to use the cancel option only if you are certain that the build won't be processed. + +### Complete Build + +To complete a build, click on :fontawesome-solid-tools: icon on the build detail page, the `Complete Build` form will be displayed. + +!!! info "Incomplete Allocation" + If the warning message `Warning: Build order allocation is not complete` is shown, make sure to allocate stock for the build before proceeding with build completion. + +Select a `Location` to store the resulting parts from the build then click on the confirmation switch. +Finally, click on the "Complete Build" button to process the build completion. + +!!! warning "Completed Build" + **A completed build cannot be re-opened**. Make sure to use the confirm only if you are certain that the build is complete. diff --git a/docs/buy/po.md b/docs/buy/po.md index 87b78cc..7d43c72 100644 --- a/docs/buy/po.md +++ b/docs/buy/po.md @@ -1,6 +1,5 @@ --- title: Purchase Order -layout: page --- ## Purchase Orders diff --git a/docs/buy/supplier.md b/docs/buy/supplier.md index 8268c7e..454802e 100644 --- a/docs/buy/supplier.md +++ b/docs/buy/supplier.md @@ -1,6 +1,5 @@ --- title: Suppliers -layout: page --- ## Suppliers diff --git a/docs/contribute.md b/docs/contribute.md index 8ce12aa..055eaaf 100644 --- a/docs/contribute.md +++ b/docs/contribute.md @@ -1,6 +1,5 @@ --- title: Contributing to InvenTree -layout: page --- ## Contribute to InvenTree @@ -34,4 +33,6 @@ Documenting a large software project is a challenging and ongoing effort. If you If you are unable to provide contributions as listed above, or you find InvenTree to be useful, please consider donating to support its ongoing development. -{% include 'donate.html' %} +[ Donate :material-emoticon-cool: ](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=T4M976M5URSUE¤cy_code=AUD){: .md-button .md-button--primary } +PayPal Logo + diff --git a/docs/extend/api.md b/docs/extend/api.md index 1ac58bb..0fefced 100644 --- a/docs/extend/api.md +++ b/docs/extend/api.md @@ -1,6 +1,5 @@ --- title: InvenTree API -layout: page --- ## InvenTree API diff --git a/docs/extend/integrate.md b/docs/extend/integrate.md index bd7e50e..1e19ad7 100644 --- a/docs/extend/integrate.md +++ b/docs/extend/integrate.md @@ -1,6 +1,5 @@ --- title: Third Party Integrations -layout: page --- ## Third Party Integrations diff --git a/docs/extend/plugins.md b/docs/extend/plugins.md index bc89fc8..30fab08 100644 --- a/docs/extend/plugins.md +++ b/docs/extend/plugins.md @@ -1,6 +1,5 @@ --- title: Plugins -layout: page --- ## InvenTree Plugin Architecture diff --git a/docs/extend/python.md b/docs/extend/python.md index cea1fd6..a2bf642 100644 --- a/docs/extend/python.md +++ b/docs/extend/python.md @@ -1,6 +1,5 @@ --- title: Python Interface -layout: page --- ## Python Module diff --git a/docs/index.md b/docs/index.md index 40b12c1..71a4154 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,7 +1,5 @@ --- title: InvenTree -layout: page -permalink: "/" --- ## InvenTree - Intuitive Inventory Management diff --git a/docs/javascripts/extra.js b/docs/javascripts/extra.js new file mode 100644 index 0000000..ccacf7b --- /dev/null +++ b/docs/javascripts/extra.js @@ -0,0 +1,7 @@ +/* Add target="_blank" to external links */ +/* Source: https://html.com/attributes/a-target/#:~:text=browser */ +function externalLinks() { + for(var c = document.getElementsByTagName("a"), a = 0;a < c.length;a++) { + var b = c[a]; b.getAttribute("href") && b.hostname !== location.hostname && (b.target = "_blank") + } +} ; externalLinks(); diff --git a/docs/part/parameter.md b/docs/part/parameter.md index 9d10f7b..d8d1d2c 100644 --- a/docs/part/parameter.md +++ b/docs/part/parameter.md @@ -1,6 +1,5 @@ --- title: Part Parameters -layout: page --- ## Part Parameters diff --git a/docs/part/part.md b/docs/part/part.md index 975f8d6..e55c8c5 100644 --- a/docs/part/part.md +++ b/docs/part/part.md @@ -1,6 +1,5 @@ --- title: Parts -layout: page --- # Part diff --git a/docs/part/template.html b/docs/part/template.html deleted file mode 100644 index d50faea..0000000 --- a/docs/part/template.html +++ /dev/null @@ -1,1075 +0,0 @@ -Part Templates

Part Templates

-

There are various purposes for using part templates, among them: -* template parts can hold information that can be re-used across “variants”, a template part could be useful for creating a base variant of an assembly which can be derived from, with BoM changes for instance -*

-

“Variants” parts will reference the “Template” part therefore explicitly creating and showing direct relationship. -They also allow you to do special things like: -* Serial Numbers -Parts that are linked in a template / variant relationship must have unique serial numbers. e.g. if you have a template part Widget, and two variants Widget-01 and Widget-02 then any assigned serial numbers must be unique across all these variants.

-

Stock Reporting -The “stock” for a template part includes stock for all variants under that part

-

Logical Grouping -The template / variant relationship is subtly different to the category / part relationship

-

Create Variant

-

When a part’s Template option is turned-on, “Variants” of this part can be created.

-

To create a variant, navigate to a specific part detail page, click on the “Variants” tab then click on the “New Variant” button. -The Create Variant form will be displayed: -{% with id=”create_part_variant”, url=”part/create_part_variant.png”, description=”Create Part Variant Form” %} -{% include ‘img.html’ %}

\ No newline at end of file diff --git a/docs/part/template.md b/docs/part/template.md index 4dfaca8..407f406 100644 --- a/docs/part/template.md +++ b/docs/part/template.md @@ -1,6 +1,5 @@ --- title: Part Templates -layout: page --- ## Part Templates diff --git a/docs/part/test.md b/docs/part/test.md index a029594..fcb1e12 100644 --- a/docs/part/test.md +++ b/docs/part/test.md @@ -1,6 +1,5 @@ --- title: Part Test Templates -layout: page --- ## Part Test Templates diff --git a/docs/part/views.md b/docs/part/views.md index cf10b7f..046227b 100644 --- a/docs/part/views.md +++ b/docs/part/views.md @@ -1,6 +1,5 @@ --- title: Part Views -layout: page --- The Part information page organizes part data into sections, displayed as tabs. diff --git a/docs/report/labels.md b/docs/report/labels.md index 7016577..90fa71b 100644 --- a/docs/report/labels.md +++ b/docs/report/labels.md @@ -1,6 +1,5 @@ --- title: Custom Labels -layout: page --- ## Custom Labels diff --git a/docs/report/order.md b/docs/report/order.md index 6281499..cfec047 100644 --- a/docs/report/order.md +++ b/docs/report/order.md @@ -1,6 +1,5 @@ --- title: Order Report -layout: page --- ## Order Report diff --git a/docs/report/pack.md b/docs/report/pack.md index c0dde81..dc5b315 100644 --- a/docs/report/pack.md +++ b/docs/report/pack.md @@ -1,6 +1,5 @@ --- title: Packing List Report -layout: page --- ## Packing List diff --git a/docs/report/report.md b/docs/report/report.md index 222d0a2..2a1bc0c 100644 --- a/docs/report/report.md +++ b/docs/report/report.md @@ -1,6 +1,5 @@ --- title: Report Generation -layout: page --- ## Custom Reporting diff --git a/docs/report/test.md b/docs/report/test.md index 72739e1..3e3ceee 100644 --- a/docs/report/test.md +++ b/docs/report/test.md @@ -1,6 +1,5 @@ --- title: Test Report -layout: page --- ## Test Report diff --git a/docs/start/config.md b/docs/start/config.md index 2f631df..f143e36 100644 --- a/docs/start/config.md +++ b/docs/start/config.md @@ -1,6 +1,5 @@ --- title: Database Configuration -layout: page --- ## Database Configuration diff --git a/docs/start/deploy.md b/docs/start/deploy.md index 7f55488..c0e6677 100644 --- a/docs/start/deploy.md +++ b/docs/start/deploy.md @@ -1,6 +1,5 @@ --- title: Deploy InvenTree -layout: page --- ## Deploying InvenTree diff --git a/docs/start/install.md b/docs/start/install.md index 9e7bea2..b7e55ff 100644 --- a/docs/start/install.md +++ b/docs/start/install.md @@ -1,6 +1,5 @@ --- title: Install InvenTree -layout: page --- ## Introduction diff --git a/docs/start/migrate.md b/docs/start/migrate.md index 6619652..f4d39ee 100644 --- a/docs/start/migrate.md +++ b/docs/start/migrate.md @@ -1,6 +1,5 @@ --- title: Migrating Data -layout: page --- ## Migrating Data diff --git a/docs/start/themes.md b/docs/start/themes.md index 41719df..d1081b8 100644 --- a/docs/start/themes.md +++ b/docs/start/themes.md @@ -1,6 +1,5 @@ --- title: Changing color theme -layout: page --- ## Color Themes diff --git a/docs/start/update.md b/docs/start/update.md index fab61b2..c288596 100644 --- a/docs/start/update.md +++ b/docs/start/update.md @@ -1,6 +1,5 @@ --- title: Update InvenTree -layout: page --- ## Update InvenTree diff --git a/docs/stock/adjust.md b/docs/stock/adjust.md index 6d95a19..be1d1da 100644 --- a/docs/stock/adjust.md +++ b/docs/stock/adjust.md @@ -1,6 +1,5 @@ --- title: Stock Adjustments -layout: page --- ## Stock Adjustments diff --git a/docs/stock/stock.md b/docs/stock/stock.md index be49442..72e1471 100644 --- a/docs/stock/stock.md +++ b/docs/stock/stock.md @@ -1,6 +1,5 @@ --- title: Stock -layout: page --- ## Stock Location diff --git a/docs/stock/stocktake.md b/docs/stock/stocktake.md index 3294c09..6054b98 100644 --- a/docs/stock/stocktake.md +++ b/docs/stock/stocktake.md @@ -1,6 +1,5 @@ --- title: Stocktake -layout: page --- ## Stocktake diff --git a/docs/stock/test.md b/docs/stock/test.md index 72a36f0..cea7b9e 100644 --- a/docs/stock/test.md +++ b/docs/stock/test.md @@ -1,6 +1,5 @@ --- title: Stock Test Result -layout: page --- ## Stock Test Result diff --git a/docs/stylesheets/extra.css b/docs/stylesheets/extra.css index a9be42e..f483bbe 100644 --- a/docs/stylesheets/extra.css +++ b/docs/stylesheets/extra.css @@ -1,3 +1,4 @@ +/* Image "popping" feature */ .overlay { /* Display over the entire page */ position: fixed; @@ -44,4 +45,26 @@ .overlay:target img { transform: scale(1); +} + +/* Add icon after external links */ +/* Ignore auto-generated material theme links */ +a[target="_blank"]:not([class*="md-"]):after { +/* content: " " url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24'%3E%3Cpath fill='rgb(123,136,204)' d='M14,3V5H17.59L7.76,14.83L9.17,16.24L19,6.41V10H21V3M19,19H5V5H12V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V12H19V19Z' /%3E%3C/svg%3E%0A");*/ + content: " " url('../assets/open-in-new-custom.svg'); +} + +/* Set text alignment to "justify" */ +p { + text-align: justify; +} + +/* Remove page title */ +.md-content h1:first-child { + display: none; +} + +/* Remove top margin for first h2 header */ +.md-typeset h2:first-of-type { + margin-top: 0em; } \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index d07c89e..9fb4f92 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -19,10 +19,12 @@ theme: icon: repo: fontawesome/brands/github features: - - instant - tabs +edit_uri: "" # Disable "Edit" button extra_css: - stylesheets/extra.css +extra_javascript: + - javascripts/extra.js # Navigation nav: @@ -39,7 +41,7 @@ nav: - Parts: part/part.md - Part Views: part/views.md - Parameters: part/parameter.md - - Template Parts: part/template.md + - Templates: part/template.md - Tests: part/test.md - Stock: - Stock Items: stock/stock.md @@ -48,7 +50,7 @@ nav: - Test Results: stock/test.md - Build: - Build Parts: build/build.md - - BOM: build/bom.md + - Bill of Materials (BOM): build/bom.md - Buy: - Suppliers: buy/supplier.md - Purchase Orders: buy/po.md @@ -77,8 +79,14 @@ plugins: # Extensions markdown_extensions: - admonition + - attr_list + - meta - pymdownx.details - - markdown.extensions.codehilite + - pymdownx.highlight + - pymdownx.superfences + - pymdownx.emoji: + emoji_index: !!python/name:materialx.emoji.twemoji + emoji_generator: !!python/name:materialx.emoji.to_svg - toc: permalink: ⚓