From 3c3f5209860d496a4b74dae0d3912a1bc19a6a3b Mon Sep 17 00:00:00 2001 From: eeintech Date: Wed, 4 Nov 2020 15:48:23 -0500 Subject: [PATCH 01/14] Added What's New page --- docs/new.md | 37 +++++++++++++++++++++++++++++++++++++ mkdocs.yml | 1 + 2 files changed, 38 insertions(+) create mode 100644 docs/new.md diff --git a/docs/new.md b/docs/new.md new file mode 100644 index 0000000..bfde54b --- /dev/null +++ b/docs/new.md @@ -0,0 +1,37 @@ +--- +title: What's New +--- + +## What's New + +### Release 0.1.4 + +#### Build Management System + +Improved build management system: + +- Partial builds +- Batch tracking + +!!! TODO + More information to come soon + +#### InvenTree Settings +##### Dedicated sections + +Dedicated sections were added for: + +- Category +- Build +- Purchase Order +- Sales Order + +!!! TODO + More information to come soon + +##### Category Parameter Templates + +Added support for configuring parameter templates defined by categories. + +!!! TODO + More information to come soon diff --git a/mkdocs.yml b/mkdocs.yml index d08af7a..fb5f1e3 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -31,6 +31,7 @@ extra_javascript: nav: - InvenTree: - About InvenTree: index.md + - What's New: new.md - Contribute: contribute.md - Getting Started: - Installation: start/install.md From 277e0bfac093bfa141436d770c1c436503d833b6 Mon Sep 17 00:00:00 2001 From: eeintech Date: Thu, 5 Nov 2020 10:56:43 -0500 Subject: [PATCH 02/14] Added Related Parts information to 0.1.4 new feature list Improved img template to take in direct URLs --- _includes/img.html | 16 +++++++++++----- docs/new.md | 18 ++++++++++++++++++ 2 files changed, 29 insertions(+), 5 deletions(-) diff --git a/_includes/img.html b/_includes/img.html index f680758..8547740 100644 --- a/_includes/img.html +++ b/_includes/img.html @@ -4,27 +4,33 @@ {% set assets = '/assets' %} {% endif %} +{% if 'http' in url %} +{% set doc_url = url %} +{% else %} +{% set doc_url = '{{ assets }}/images/{{ url }}' %} +{% endif %} +
{% if id %} - {% elif url %} - + {% elif doc_url %} + {% endif %} - {{ description }} - {% if id or url %} + {% if id or doc_url %} {% endif %} {% if id %} - {{ description }} + {{ description }} {% endif %}
diff --git a/docs/new.md b/docs/new.md index bfde54b..3450322 100644 --- a/docs/new.md +++ b/docs/new.md @@ -16,6 +16,24 @@ Improved build management system: !!! TODO More information to come soon +#### Related Parts +##### Definition + +Related Part denotes a relationship between two parts, when users want to show their usage is "related" to another part or simply emphasize a link between two parts. + +##### Implementation + +- New PartRelated model/table to store relationships between parts (requires migration) +- New Related tab shown in Part detail page +- Ability to add relationships between parts through both main and admin interfaces +- Can only manage relationship if user has "change" permission on Part ruleset + +##### Example View + +{% with id="related_parts_example", url="https://user-images.githubusercontent.com/4020546/96306587-8f2d0b80-0fc5-11eb-8fdb-20cb2dabfcc6.png", description="Related Parts Example View" %} +{% include 'img.html' %} +{% endwith %} + #### InvenTree Settings ##### Dedicated sections From 1de93c1fbb12e3caba032702673352ab55e8e228 Mon Sep 17 00:00:00 2001 From: eeintech Date: Thu, 5 Nov 2020 12:29:49 -0500 Subject: [PATCH 03/14] Renamed 'Buy' section to 'Companies' Added pages for manufacturer, customer and sales orders documentation --- docs/companies/customer.md | 19 ++++++++++++ docs/companies/manufacturer.md | 33 +++++++++++++++++++++ docs/{buy => companies}/po.md | 0 docs/{buy/supplier.md => companies/so.md} | 8 ++---- docs/companies/supplier.md | 35 +++++++++++++++++++++++ mkdocs.yml | 9 ++++-- 6 files changed, 96 insertions(+), 8 deletions(-) create mode 100644 docs/companies/customer.md create mode 100644 docs/companies/manufacturer.md rename docs/{buy => companies}/po.md (100%) rename docs/{buy/supplier.md => companies/so.md} (52%) create mode 100644 docs/companies/supplier.md diff --git a/docs/companies/customer.md b/docs/companies/customer.md new file mode 100644 index 0000000..cd98529 --- /dev/null +++ b/docs/companies/customer.md @@ -0,0 +1,19 @@ +--- +title: Customers +--- + +## Customers + +A customer is a client who parts are sold to. + +To access the customer page, click on the "Sell" navigation tab and click on "Customers" option in the dropdown list. + +### Add Customer + +!!! missing "TODO" + This section requires further work + +### Edit Customer + +!!! missing "TODO" + This section requires further work diff --git a/docs/companies/manufacturer.md b/docs/companies/manufacturer.md new file mode 100644 index 0000000..8e2ef45 --- /dev/null +++ b/docs/companies/manufacturer.md @@ -0,0 +1,33 @@ +--- +title: Manufacturers +--- + +## Manufacturers + +A supplier is an external vendor of parts and raw materials. + +To access the supplier page, click on the "Buy" navigation tab and click on "Manufacturers" option in the dropdown list. + +### Add Manufacturer + +!!! missing "TODO" + This section requires further work + +### Edit Manufacturer + +!!! missing "TODO" + This section requires further work + +## Manufacturer Parts + +Manufacturer parts are linked to a manufacturer and supplier part: they are the "items" sold by a supplier. + +### Add Manufacturer Part + +!!! missing "TODO" + This section requires further work + +### Edit Manufacturer Part + +!!! missing "TODO" + This section requires further work diff --git a/docs/buy/po.md b/docs/companies/po.md similarity index 100% rename from docs/buy/po.md rename to docs/companies/po.md diff --git a/docs/buy/supplier.md b/docs/companies/so.md similarity index 52% rename from docs/buy/supplier.md rename to docs/companies/so.md index 454802e..bc9f5c9 100644 --- a/docs/buy/supplier.md +++ b/docs/companies/so.md @@ -1,15 +1,13 @@ --- -title: Suppliers +title: Sales Order --- -## Suppliers - -A supplier is an external vendor of parts and raw materials. +## Sales Orders !!! missing "TODO" This section requires further work -## Supplier Parts +## Line Items !!! missing "TODO" This section requires further work diff --git a/docs/companies/supplier.md b/docs/companies/supplier.md new file mode 100644 index 0000000..1e0985c --- /dev/null +++ b/docs/companies/supplier.md @@ -0,0 +1,35 @@ +--- +title: Suppliers +--- + +## Suppliers + +A supplier is an external vendor of parts and raw materials. + +To access the supplier page, click on the "Buy" navigation tab and click on "Suppliers" option in the dropdown list. + +### Add Supplier + +Once the supplier page is loaded, click on the "New Supplier" button: the "Create new Supplier" form opens. Fill-in the supplier informations (`Company name` and `Company description` are required) and click on "Submit". + +!!! note "Supplier vs Manufacturer" + In the case the supplier is a manufacturer who sells directly to customers, you may want to enable the checkbox `is manufacturer` before submitting the form (you can also enable it later on). + +### Edit Supplier + +!!! missing "TODO" + This section requires further work + +## Supplier Parts + +Supplier parts are linked to a supplier and defined as purchasable items. + +### Add Supplier Part + +!!! missing "TODO" + This section requires further work + +### Edit Supplier Part + +!!! missing "TODO" + This section requires further work diff --git a/mkdocs.yml b/mkdocs.yml index d08af7a..5793753 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -52,9 +52,12 @@ nav: - Build: - Build Parts: build/build.md - Bill of Materials (BOM): build/bom.md - - Buy: - - Suppliers: buy/supplier.md - - Purchase Orders: buy/po.md + - Companies: + - Suppliers: companies/supplier.md + - Manufacturers: companies/manufacturer.md + - Customers: companies/customer.md + - Purchase Orders: companies/po.md + - Sales Orders: companies/so.md - Report: - Labels: report/labels.md - Templates: report/report.md From 3c151b5673f10232fb6f83df555ece73a03474ca Mon Sep 17 00:00:00 2001 From: eeintech Date: Thu, 5 Nov 2020 12:49:13 -0500 Subject: [PATCH 04/14] Added more companies documentation --- docs/companies/customer.md | 2 +- docs/companies/manufacturer.md | 12 +++++++----- docs/companies/po.md | 2 ++ docs/companies/so.md | 2 ++ docs/companies/supplier.md | 2 +- 5 files changed, 13 insertions(+), 7 deletions(-) diff --git a/docs/companies/customer.md b/docs/companies/customer.md index cd98529..3bc46c2 100644 --- a/docs/companies/customer.md +++ b/docs/companies/customer.md @@ -4,7 +4,7 @@ title: Customers ## Customers -A customer is a client who parts are sold to. +A customer is an external client to whom parts are sold. To access the customer page, click on the "Sell" navigation tab and click on "Customers" option in the dropdown list. diff --git a/docs/companies/manufacturer.md b/docs/companies/manufacturer.md index 8e2ef45..55e39ce 100644 --- a/docs/companies/manufacturer.md +++ b/docs/companies/manufacturer.md @@ -4,14 +4,16 @@ title: Manufacturers ## Manufacturers -A supplier is an external vendor of parts and raw materials. +A manufacturer is an external **producer** of parts and raw materials. -To access the supplier page, click on the "Buy" navigation tab and click on "Manufacturers" option in the dropdown list. +To access the manufacturer page, click on the "Buy" navigation tab and click on "Manufacturers" option in the dropdown list. ### Add Manufacturer -!!! missing "TODO" - This section requires further work +Once the manufacturer page is loaded, click on the "New Manufacturer" button: the "Create new Manufacturer" form opens. Fill-in the manufacturer informations (`Company name` and `Company description` are required) and click on "Submit". + +!!! note "Manufacturer vs Supplier" + In the case the manufacturer sells directly to customers, you may want to enable the checkbox `is supplier` before submitting the form (you can also enable it later on). Purchase orders rely exclusively on [supplier parts](../supplier#supplier-parts), therefore the manufacturer will need to be set as a supplier too. ### Edit Manufacturer @@ -20,7 +22,7 @@ To access the supplier page, click on the "Buy" navigation tab and click on "Man ## Manufacturer Parts -Manufacturer parts are linked to a manufacturer and supplier part: they are the "items" sold by a supplier. +Manufacturer parts are linked to a manufacturer and supplier part: they are the actual "items" sold by a supplier. ### Add Manufacturer Part diff --git a/docs/companies/po.md b/docs/companies/po.md index 7d43c72..e1141e9 100644 --- a/docs/companies/po.md +++ b/docs/companies/po.md @@ -4,6 +4,8 @@ title: Purchase Order ## Purchase Orders +To access the purchase order page, click on the "Buy" navigation tab and click on "Purchase Orders" option in the dropdown list. + !!! missing "TODO" This section requires further work diff --git a/docs/companies/so.md b/docs/companies/so.md index bc9f5c9..632980f 100644 --- a/docs/companies/so.md +++ b/docs/companies/so.md @@ -4,6 +4,8 @@ title: Sales Order ## Sales Orders +To access the sales order page, click on the "Sell" navigation tab and click on "Sales Orders" option in the dropdown list. + !!! missing "TODO" This section requires further work diff --git a/docs/companies/supplier.md b/docs/companies/supplier.md index 1e0985c..2c18b4a 100644 --- a/docs/companies/supplier.md +++ b/docs/companies/supplier.md @@ -4,7 +4,7 @@ title: Suppliers ## Suppliers -A supplier is an external vendor of parts and raw materials. +A supplier is an external **vendor** of parts and raw materials. To access the supplier page, click on the "Buy" navigation tab and click on "Suppliers" option in the dropdown list. From baa77eaa2748f6caca59d3b23bf080c20181bf83 Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Thu, 12 Nov 2020 12:40:38 +1100 Subject: [PATCH 05/14] Updated instructions for migration of database content --- docs/start/migrate.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/docs/start/migrate.md b/docs/start/migrate.md index 6376362..9b3fa26 100644 --- a/docs/start/migrate.md +++ b/docs/start/migrate.md @@ -11,8 +11,14 @@ In the case that data needs to be migrated from one database installation to ano ### Export Data +Export the database contents to a JSON file using the following command: + +!!! info "Directory" + The following command must be performed from the directory which contains the manage.py file + ``` -python3 InvenTree/manage.py dumpdata --exclude contenttypes --exclude auth.permission --indent 2 > data.json +cd InvenTree +python3 manage.py dumpdata --exclude contenttypes --exclude auth.permission --indent 2 --output data.json ``` This will export all data (including user information) to a json data file. @@ -32,7 +38,7 @@ invoke migrate The new database should now be correctly initialized with the correct table structures requried to import the data. Run the following command to load the databased dump file into the new database. ``` -python3 InvenTree/manage.py loaddata data.json +python3 manage.py loaddata data.json ``` !!! info "Character Encoding" From 253d14f6342d3f70b4de21c974c3df8183d3e7c2 Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Thu, 12 Nov 2020 13:44:15 +1100 Subject: [PATCH 06/14] Further updates to match new invoke commands --- docs/start/migrate.md | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/docs/start/migrate.md b/docs/start/migrate.md index 9b3fa26..c287985 100644 --- a/docs/start/migrate.md +++ b/docs/start/migrate.md @@ -6,22 +6,26 @@ title: Migrating Data In the case that data needs to be migrated from one database installation to another, the following procedure can be used to export data, initialize the new database, and re-import the data. +For example, if you wish to migrate from an SQLite database backend to a MySQL database backend, you will need to export the data into a standardized format, and then read it back in to the new database. + !!! warning "Backup Database" Ensure that the original database is securely backed up first! +!!! info "Up to Date" + Ensure that the original database is up to date, by running `invoke migrate` + ### Export Data Export the database contents to a JSON file using the following command: -!!! info "Directory" - The following command must be performed from the directory which contains the manage.py file - ``` -cd InvenTree -python3 manage.py dumpdata --exclude contenttypes --exclude auth.permission --indent 2 --output data.json +invoke export-records -f data.json ``` -This will export all data (including user information) to a json data file. +This will create JSON file at the specified location which contains all database records. + +!!! info "Specifying filename" + The filename of the exported file can be specified using the `-f` option ### Initialize New Database @@ -33,13 +37,18 @@ Then, ensure that the database schema are correctly initialized in the new datab invoke migrate ``` +This ensures that the required database tables exist, which must be the case before data can be imported. + ### Import Data The new database should now be correctly initialized with the correct table structures requried to import the data. Run the following command to load the databased dump file into the new database. ``` -python3 manage.py loaddata data.json +invoke import-records -f data.json ``` +!!! info "Import Filename" + A different filename can be specified using the `-f` option + !!! info "Character Encoding" If the character encoding of the data file does not exactly match the target database, the import operation may not succeed. In this case, some manual editing of the database JSON file may be required. From c58e21b667ea1aaa6fd87cf3553fefa569e25a0d Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Thu, 12 Nov 2020 13:51:48 +1100 Subject: [PATCH 07/14] Some warnings --- docs/start/deploy.md | 3 +++ docs/start/migrate.md | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/start/deploy.md b/docs/start/deploy.md index c0e6677..74f248f 100644 --- a/docs/start/deploy.md +++ b/docs/start/deploy.md @@ -32,6 +32,9 @@ To enable access to the InvenTree server from other computers on a local network invoke server -a 192.168.120.1:8000 ``` +!!! warning "Not For Production" + It should be noted that the *development server* provided with django / InvenTree is probably not suitable for your production environment. Instead, use a proper web-server (such as Gunicorn, below). + ## Gunicorn Following is a simple tutorial on serving InvenTree using [Gunicorn](https://gunicorn.org/). Gunicorn is a Python WSGI server which provides a multi-worker server which is well suited to handling multiple simultaneous requests. Gunicorn is a solid choice for a production server which is easy to configure and performs well in a multi-user environment. diff --git a/docs/start/migrate.md b/docs/start/migrate.md index c287985..8ff3d0d 100644 --- a/docs/start/migrate.md +++ b/docs/start/migrate.md @@ -50,5 +50,5 @@ invoke import-records -f data.json !!! info "Import Filename" A different filename can be specified using the `-f` option -!!! info "Character Encoding" +!!! warning "Character Encoding" If the character encoding of the data file does not exactly match the target database, the import operation may not succeed. In this case, some manual editing of the database JSON file may be required. From 176717c0642f5687d9d5df9ae8abf90d0a7a4ed9 Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Thu, 12 Nov 2020 16:00:07 +1100 Subject: [PATCH 08/14] Add warning for gunicorn setup --- docs/start/deploy.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/start/deploy.md b/docs/start/deploy.md index 74f248f..173cc17 100644 --- a/docs/start/deploy.md +++ b/docs/start/deploy.md @@ -47,6 +47,9 @@ Gunicorn can be installed using PIP: pip3 install gunicorn ``` +!!! warning "Python Environment" + Ensure that gunicorn is installed within the same python environment context as the InvenTree install - otherwise gunicorn will not be able to import the correct python modules. + ### Configure Static Directories Directories for storing *media* files and *static* files should be specified in the ``config.yaml`` configuration file. These directories are the ``MEDIA_ROOT`` and ``STATIC_ROOT`` paths required by the Django app. Ensure that both of these directories are correctly configured for your setup. From 4905ed8de3f89001a9fb7e51ec6f53b11bf38046 Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Fri, 13 Nov 2020 15:38:12 +1100 Subject: [PATCH 09/14] Update to latest config template file --- _includes/config.yaml | 61 +++++++++++++++++++++++++++++++++++-------- 1 file changed, 50 insertions(+), 11 deletions(-) diff --git a/_includes/config.yaml b/_includes/config.yaml index 0a60e20..bb1e20f 100644 --- a/_includes/config.yaml +++ b/_includes/config.yaml @@ -1,29 +1,73 @@ # Database backend selection - Configure backend database settings -# Ref: https://docs.djangoproject.com/en/2.2/ref/settings/#std:setting-DATABASES +# Ref: https://docs.djangoproject.com/en/dev/ref/settings/#std:setting-DATABASES # Specify database parameters below as they appear in the Django docs + +# Note: Database configuration options can also be specified from environmental variables, +# with the prefix INVENTREE_DB_ +# e.g INVENTREE_DB_NAME / INVENTREE_DB_USER / INVENTREE_DB_PASSWORD database: - # Example configuration - sqlite (default) - ENGINE: django.db.backends.sqlite3 + # Default configuration - sqlite filesystem database + ENGINE: sqlite3 NAME: '../inventree_default_db.sqlite3' # For more complex database installations, further parameters are required # Refer to the django documentation for full list of options - # Example Configuration - MySQL + # --- Available options: --- + # ENGINE: Database engine. Selection from: + # - sqlite3 + # - mysql + # - postgresql + # NAME: Database name + # USER: Database username (if required) + # PASSWORD: Database password (if required) + # HOST: Database host address (if required) + # PORT: Database host port (if required) + + # --- Example Configuration - sqlite3 --- + # ENGINE: sqlite3 + # NAME: '/path/to/database.sqlite3' + + # --- Example Configuration - MySQL --- #ENGINE: django.db.backends.mysql #NAME: inventree #USER: inventree_username #PASSWORD: inventree_password - #HOST: '' - #PORT: '' + #HOST: '127.0.0.1' + #PORT: '5432' # Select default system language (default is 'en-us') language: en-us +# System time-zone (default is UTC) +# Reference: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones +# Select an option from the "TZ database name" column +timezone: UTC + +# List of currencies supported by default. +# Add other currencies here to allow use in InvenTree +currencies: + - AUD + - CAD + - EUR + - GBP + - JPY + - NZD + - USD + # Set debug to False to run in production mode debug: True +# Set debug_toolbar to True to enable a debugging toolbar for InvenTree +# Note: This will only be displayed if DEBUG mode is enabled, +# and only if InvenTree is accessed from a local IP (127.0.0.1) +debug_toolbar: False + +# Configure the system logging level +# Options: DEBUG / INFO / WARNING / ERROR / CRITICAL +log_level: WARNING + # Allowed hosts (see ALLOWED_HOSTS in Django settings documentation) # A list of strings representing the host/domain names that this Django site can serve. # Default behaviour is to allow all hosts (THIS IS NOT SECURE!) @@ -58,11 +102,6 @@ static_root: '../inventree_static' # - git # - ssh -# Set debug_toolbar to True to enable a debugging toolbar for InvenTree -# Note: This will only be displayed if DEBUG mode is enabled, -# and only if InvenTree is accessed from a local IP (127.0.0.1) -debug_toolbar: False - # Backup options # Set the backup_dir parameter to store backup files in a specific location # If unspecified, the local user's temp directory will be used From 9112b46bd4754c500b39eb9eeeed445113ea42f5 Mon Sep 17 00:00:00 2001 From: eeintech Date: Fri, 13 Nov 2020 15:19:38 -0500 Subject: [PATCH 10/14] Added details about category templates, added Currency section --- docs/new.md | 51 +++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 45 insertions(+), 6 deletions(-) diff --git a/docs/new.md b/docs/new.md index 3450322..1a69f6e 100644 --- a/docs/new.md +++ b/docs/new.md @@ -34,22 +34,61 @@ Related Part denotes a relationship between two parts, when users want to show t {% include 'img.html' %} {% endwith %} -#### InvenTree Settings -##### Dedicated sections +#### InvenTree "Global" Settings -Dedicated sections were added for: +Global settings control the default value of fields across the entire web interface, for all-users. + +!!! TODO + More information to come soon + +Also, dedicated settings sections were added for: - Category - Build - Purchase Order - Sales Order -!!! TODO - More information to come soon +For Category section, read [Category Parameter Templates](#category-parameter-templates) -##### Category Parameter Templates +Other section allows to set the prefix of build, puchase and sales orders. + +#### Category Parameter Templates Added support for configuring parameter templates defined by categories. +##### Features + +* User can now setup a list of parameter templates for each (or all) part category(ies) in InvenTree settings +* During part creation, part parameters are automatically created using the list of parameter templates from the parent category it belongs to (if option is enabled) + +##### Screenshots + +* Select category + +{% with id="related_parts_example", url="https://user-images.githubusercontent.com/4020546/98037571-c2ef9a00-1de9-11eb-96a1-542b18cdda7e.png", description="Select Category" %} +{% include 'img.html' %} +{% endwith %} + +* Add parameter template + +{% with id="related_parts_example", url="https://user-images.githubusercontent.com/4020546/98145792-1cfb6880-1e99-11eb-82eb-c96d1ba9541a.png", description="Add Parameter Template" %} +{% include 'img.html' %} +{% endwith %} + +* Control global behavior within part settings + +{% with id="related_parts_example", url="https://user-images.githubusercontent.com/4020546/98130420-39db7000-1e88-11eb-9ca0-78370e19ccdd.png", description="Global Settings For Category Templates" %} +{% include 'img.html' %} +{% endwith %} + +* Control instance behavior during part creation + +{% with id="related_parts_example", url="https://user-images.githubusercontent.com/4020546/98130496-4f509a00-1e88-11eb-9239-4dc215cbc620.png", description="Instance Settings For Category Templates" %} +{% include 'img.html' %} +{% endwith %} + + +#### Currency Support + !!! TODO More information to come soon From 5ba24e88fb00d1f15ac3f7ac75b1c7e6e980ef9f Mon Sep 17 00:00:00 2001 From: eeintech Date: Fri, 13 Nov 2020 15:55:11 -0500 Subject: [PATCH 11/14] Added permission warnings and edit/delete sections for supplier/manufacturer/customer --- docs/admin/permissions.md | 2 +- docs/companies/customer.md | 17 +++++++++++++---- docs/companies/manufacturer.md | 22 +++++++++++++++++++--- docs/companies/supplier.md | 22 +++++++++++++++++++--- 4 files changed, 52 insertions(+), 11 deletions(-) diff --git a/docs/admin/permissions.md b/docs/admin/permissions.md index c9c5afc..ba8c604 100644 --- a/docs/admin/permissions.md +++ b/docs/admin/permissions.md @@ -32,7 +32,7 @@ InvenTree functionality is split into a number of distinct roles. A group will h - **Purchase** - The *purchase* role is related to accessing Purchase Order data - **Sales** - The *sales* role is related to accessing Sales Order data -{% with id="roles", url="admin/roles.png", description="Roles" %} +{% with id="Roles Admin View", url="admin/roles.png", description="Roles" %} {% include 'img.html' %} {% endwith %} diff --git a/docs/companies/customer.md b/docs/companies/customer.md index 3bc46c2..8e10ac4 100644 --- a/docs/companies/customer.md +++ b/docs/companies/customer.md @@ -8,12 +8,21 @@ A customer is an external client to whom parts are sold. To access the customer page, click on the "Sell" navigation tab and click on "Customers" option in the dropdown list. +!!! warning + **Viewing**, **adding**, **editing** and **deleting** customers require the corresponding [Sales Orders user permissions](../../admin/permissions) + ### Add Customer -!!! missing "TODO" - This section requires further work +Once the customer page is loaded, click on the " New Customer" button: the "Create new Customer" form opens. Fill-in the manufacturer informations (`Company name` and `Company description` are required) then click on the "Submit" button. ### Edit Customer -!!! missing "TODO" - This section requires further work +To edit a customer, click on its name in the list of customers. + +After the customer details are loaded, click on the icon under the customer name. Edit the customer information then click on the "Submit" button. + +### Delete Customer + +To delete a customer, click on its name in the list of customers. + +After the customer details are loaded, click on the icon under the customer name. Confirm the deletion using the checkbox then click on the "Submit" button. diff --git a/docs/companies/manufacturer.md b/docs/companies/manufacturer.md index 55e39ce..ff2b682 100644 --- a/docs/companies/manufacturer.md +++ b/docs/companies/manufacturer.md @@ -8,22 +8,38 @@ A manufacturer is an external **producer** of parts and raw materials. To access the manufacturer page, click on the "Buy" navigation tab and click on "Manufacturers" option in the dropdown list. +!!! warning + **Viewing**, **adding**, **editing** and **deleting** manufacturers require the corresponding [Purchase Orders user permissions](../../admin/permissions) + ### Add Manufacturer -Once the manufacturer page is loaded, click on the "New Manufacturer" button: the "Create new Manufacturer" form opens. Fill-in the manufacturer informations (`Company name` and `Company description` are required) and click on "Submit". +Once the manufacturer page is loaded, click on the " New Manufacturer" button: the "Create new Manufacturer" form opens. Fill-in the manufacturer informations (`Company name` and `Company description` are required) then click on the "Submit" button. !!! note "Manufacturer vs Supplier" In the case the manufacturer sells directly to customers, you may want to enable the checkbox `is supplier` before submitting the form (you can also enable it later on). Purchase orders rely exclusively on [supplier parts](../supplier#supplier-parts), therefore the manufacturer will need to be set as a supplier too. ### Edit Manufacturer -!!! missing "TODO" - This section requires further work +To edit a manufacturer, click on its name in the list of manufacturers. + +After the manufacturer details are loaded, click on the icon under the manufacturer name. Edit the manufacturer information then click on the "Submit" button. + +### Delete Manufacturer + +!!! warning + All manufacturer parts for this manufacturer will also be deleted! + +To delete a manufacturer, click on its name in the list of manufacturers. + +After the manufacturer details are loaded, click on the icon under the manufacturer name. Review the list of manufacturer parts to be deleted in consequence of deleting this manufacturer. Confirm the deletion using the checkbox then click on the "Submit" button. ## Manufacturer Parts Manufacturer parts are linked to a manufacturer and supplier part: they are the actual "items" sold by a supplier. +!!! warning + **Viewing**, **adding**, **editing** and **deleting** manufacturer parts require the corresponding [Purchase Orders user permissions](../../admin/permissions) + ### Add Manufacturer Part !!! missing "TODO" diff --git a/docs/companies/supplier.md b/docs/companies/supplier.md index 2c18b4a..4635443 100644 --- a/docs/companies/supplier.md +++ b/docs/companies/supplier.md @@ -8,22 +8,38 @@ A supplier is an external **vendor** of parts and raw materials. To access the supplier page, click on the "Buy" navigation tab and click on "Suppliers" option in the dropdown list. +!!! warning + **Viewing**, **adding**, **editing** and **deleting** suppliers require the corresponding [Purchase Orders user permissions](../../admin/permissions) + ### Add Supplier -Once the supplier page is loaded, click on the "New Supplier" button: the "Create new Supplier" form opens. Fill-in the supplier informations (`Company name` and `Company description` are required) and click on "Submit". +Once the supplier page is loaded, click on the " New Supplier" button: the "Create new Supplier" form opens. Fill-in the supplier informations (`Company name` and `Company description` are required) then click on the "Submit" button. !!! note "Supplier vs Manufacturer" In the case the supplier is a manufacturer who sells directly to customers, you may want to enable the checkbox `is manufacturer` before submitting the form (you can also enable it later on). ### Edit Supplier -!!! missing "TODO" - This section requires further work +To edit a supplier, click on its name in the list of suppliers. + +After the supplier details are loaded, click on the icon under the supplier name. Edit the supplier information then click on the "Submit" button. + +### Delete Supplier + +!!! warning + All supplier parts for this supplier will also be deleted! + +To delete a supplier, click on its name in the list of suppliers. + +After the supplier details are loaded, click on the icon under the supplier name. Review the list of supplier parts to be deleted in consequence of deleting this supplier. Confirm the deletion using the checkbox then click on the "Submit" button. ## Supplier Parts Supplier parts are linked to a supplier and defined as purchasable items. +!!! warning + **Viewing**, **adding**, **editing** and **deleting** supplier parts require the corresponding [Purchase Orders user permissions](../../admin/permissions) + ### Add Supplier Part !!! missing "TODO" From b420fc0dbdfdc04633a9a22dbcf25bdd6384c63e Mon Sep 17 00:00:00 2001 From: eeintech Date: Fri, 13 Nov 2020 16:17:06 -0500 Subject: [PATCH 12/14] Completed companies doc (will update purchase and sales orders separately) --- docs/companies/manufacturer.md | 12 +++++++----- docs/companies/supplier.md | 21 +++++++++++++++++---- 2 files changed, 24 insertions(+), 9 deletions(-) diff --git a/docs/companies/manufacturer.md b/docs/companies/manufacturer.md index ff2b682..86008b2 100644 --- a/docs/companies/manufacturer.md +++ b/docs/companies/manufacturer.md @@ -35,17 +35,19 @@ After the manufacturer details are loaded, click on the New Supplier Part" button to load the "Create new Supplier Part" form. Fill out the form with the supplier part information then click on the "Submit" button. ### Edit Supplier Part -!!! missing "TODO" - This section requires further work +To edit a supplier part, first access the supplier part detail page with one of the following options: + +* either navigate to a Part detail page, click on the "Suppliers" tab then click on the corresponding "Supplier Part" row value +* or navigate to a Supplier detail page, click on the "Parts" tab then click on the corresponding "Supplier Part" row value. + +After the supplier part details are loaded, click on the icon next to the supplier part image. Edit the supplier part information then click on the "Submit" button. + +### Delete Supplier Part + +To delete a supplier part, first access the supplier part detail page like in the [Edit Supplier Part](#edit-supplier-part) section. + +After the supplier part details are loaded, click on the icon next to the supplier part image. Review the the information for the supplier part to be deleted, confirm the deletion using the checkbox then click on the "Submit" button. From 0e43a72ff9919451a314e2708f58a4c621c3de72 Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Sun, 15 Nov 2020 16:49:50 +1100 Subject: [PATCH 13/14] Fill out "what's new" section --- docs/new.md | 34 ++++++++++++++++++++++++++-------- 1 file changed, 26 insertions(+), 8 deletions(-) diff --git a/docs/new.md b/docs/new.md index 1a69f6e..df958c0 100644 --- a/docs/new.md +++ b/docs/new.md @@ -6,18 +6,31 @@ title: What's New ### Release 0.1.4 +Release 0.1.4 (November 2020) provides a number of major new features and improvements, as well as some crucial bug fixes: + #### Build Management System -Improved build management system: +The build management system has received a major upgrade, bringing the following improvements: -- Partial builds -- Batch tracking +##### Partial Build Completion -!!! TODO - More information to come soon +Previously, build orders had to be completed *atomically* (i.e. if the build order was to create 20x units, then all 20x units had to be created at once). + +The new build system allows the user to specify build *outputs* (of varying quantities) against a given build order. The build order cannot be completed until all build outputs are fulfilled. + +A *Build Output* is simply a StockItem object which is marked as *in production*. This stock item can be assigned a (unique) serial number which is useful for pre-allocation purposes. It also allows stock to be filtered by production status and determine how many units are being built. + +##### Stock Item Tracking + +Parts which are marked as *trackable* are now treated differently for the purpose of a build order. Stock items must be assigned against each build output (as was the case previously). When a build output is marked as complete, any *trackable* stock items which are assigned to that build output are installed *into* the build output (which is simply a StockItem). In this manner, if a *trackable* stock item is used to build another stock item, it remains tracked via the stock item it is installed into. + +Stock items which are not *trackable* are simply removed from stock when the build output is completed. + +##### Stock Allocation Improvements + +A number of UX improvements have been made to simplify the process of allocating stock items against a build output (and thus a build order). #### Related Parts -##### Definition Related Part denotes a relationship between two parts, when users want to show their usage is "related" to another part or simply emphasize a link between two parts. @@ -90,5 +103,10 @@ Added support for configuring parameter templates defined by categories. #### Currency Support -!!! TODO - More information to come soon +A more comprehensive implementation of Currency support has been implemented. + +Using the [django-money](https://github.com/django-money/django-money) library enables native support for all currency types, and the (future) possibility of offering real-time currency conversion. + +This update is "simply" an architectural change which will allow more comprehensive currency management in a future release. + +As part of the new currency library implementation, InvenTree can now track purchase price of stock items (in whichever currency the user chooses). From 9bf3d72a7c046cfe4db1b558d8cf10921c96ddb8 Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Sun, 15 Nov 2020 16:53:59 +1100 Subject: [PATCH 14/14] Link to release page --- docs/new.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/new.md b/docs/new.md index df958c0..43dfb5a 100644 --- a/docs/new.md +++ b/docs/new.md @@ -6,7 +6,7 @@ title: What's New ### Release 0.1.4 -Release 0.1.4 (November 2020) provides a number of major new features and improvements, as well as some crucial bug fixes: +[Release 0.1.4](https://github.com/inventree/InvenTree/releases/tag/0.1.4) (November 2020) provides a number of major new features and improvements, as well as some crucial bug fixes: #### Build Management System