[plugin] Auto issue orders (#9565)

* Add builtin plugin for auto-issuing orders

* Add plugin to auto-issue orders

* Add placeholder documentation

* Fix typo

* Adds image macro

- To replace img.html
- includes checking if file exists

* Fix tooltips

* More docs

* Adjust plugin settings filters

* docs

* More docs

* More docs

* Updates

* Less restrictive URL checking

* Refactor build order page

* Fix typo

* Allow 429

* Debug output

* More debug

* Construct assets dir

* Cleanup

* Update docs README

* Refactoring more pages

* Fix image link

* Fix SSO settings

* Add hook to check for missing settings

- Ensure that all settings are documented!

* Add missing user settings

* Update docstring

* Tweak SSO.md

* Image updates

* More updates

* Tweaks

* Exclude orders without a target_date

* Fix for issuing build orders

* Further refactoring

* Fixes

* Image refactoring

* More refactoring

* More refactoring

* Refactor app images

* Fix pathing issues

* Suppress some openapidocs warnings in logs

(much easier to debug docs build issues)

* Fix image reference

* Reduce error messages

* Fix image links

* Fix image links

* Reduce docs log output

* Ensure settings are loaded before displaying them

* Fix for UI test

* Fix unit test

* Test tweaks
This commit is contained in:
Oliver
2025-06-03 17:07:12 +10:00
committed by GitHub
parent 89f8f132e1
commit 11ab0203b1
124 changed files with 1178 additions and 957 deletions
+25
View File
@@ -0,0 +1,25 @@
---
title: Auto Issue Orders Plugin
---
## Auto Issue Orders Plugin
The **Auto Issue Orders Plugin** provides a mechanism to automatically issue pending orders when the target date is reached.
### Activation
This plugin is an *optional* plugin, and must be enabled in the InvenTree settings.
Additionally, the "Enable Schedule Integration" setting must be enabled in the InvenTree plugin settings. This is required to allow plugins to run scheduled tasks.
### Plugin Settings
The plugin allows configuration for which order types should be automatically issued.
{{ image("auto_issue_settings.png", base="plugin/builtin", title="Auto Issue Settings") }}
## Usage
When this plugin is enabled, any pending orders will be automatically issued when the target date is reached. This is done in the background, and does not require any user interaction.
The plugin checks once per day to see if any orders are pending and have reached their target date. If so, the order will be automatically issued.
+25
View File
@@ -0,0 +1,25 @@
---
title: BOM Exporter Plugin
---
## BOM Exporter Plugin
The **BOM Exporter Plugin** provides custom export functionality for [Bill of Materials (BOM)](../../manufacturing/bom.md) data.
It utilizies the [ExporterMixin](../mixins/export.md) mixin to provide a custom export format for BOM data.
### Activation
This plugin is a *mandatory* plugin, and is always enabled.
### Plugin Settings
This plugin has no configurable settings.
## Usage
This plugin is used in the same way as the [InvenTree Exporter Plugin](./inventree_exporter.md), but provides a custom export format for BOM data.
When exporting BOM data, the *BOM Exporter* plugin is available for selection in the export dialog. When selected, the plugin provides some additional export options to control the data export process.
{{ image("bom_export_options.png", base="plugin/builtin", title="BOM Export Options") }}
@@ -0,0 +1,21 @@
---
title: InvenTree Currency Exchange
---
## InvenTree Currency Exchange
The **InvenTree Currency Exchange** plugin provides a default currency exchange rate provider for InvenTree.
The plugin pulls exchange rate information from the [frankfurter API](https://www.frankfurter.app/) API.
### Activation
This plugin is a *mandatory* plugin, and is always enabled.
### Plugin Settings
This plugin has no configurable settings.
## Usage
This plugin is the default currency exchange provider for InvenTree. It is used to convert between different currencies when displaying prices in the InvenTree user interface. An altertnative currency exchange provider can be configured in the InvenTree settings, but this plugin is always available as a fallback option.
+19
View File
@@ -0,0 +1,19 @@
---
title: DigiKey Barcode Plugin
---
## DigiKey Barcode Plugin
The **DigiKey Barcode Plugin** provides barcode support for [DigiKey](https://www.digikey.com/) products. When receiving items from DigiKey, the barcode on the product can be scanned to automatically identify the product in InvenTree.
This plugin implements the [BarcodeMixin](../mixins/barcode.md) mixin to provide custom barcode support.
### Activation
This plugin is an *optional* plugin, and must be enabled in the InvenTree admin center.
### Plugin Settings
After activating the plugin, the user must specify which [supplier](../../purchasing/supplier.md) the plugin should be associated with. This is done by selecting the supplier from the dropdown list in the plugin settings:
{{ image("digikey_plugin_settings.png", base="plugin/builtin", title="DigiKey Plugin Settings") }}
+37
View File
@@ -0,0 +1,37 @@
---
title: Builtin Plugins
---
## Builtin Plugins
InvenTree comes with a number of builtin plugins, which provide additional functionality to the system. These plugins are installed by default, and do not require any additional configuration.
Some of the provided builtin plugins are *mandatory*, as they provide core functionality to the system. Other plugins are optional, and can be enabled or disabled as required.
### Available Plugins
The following builtin plugins are available in InvenTree:
| Plugin Name | Description | Mandatory |
| ----------- | ----------- | --------- |
| [Auto Issue Orders](./auto_issue.md) | Automatically issue pending orders when target date is reached | No |
| [BOM Exporter](./bom_exporter.md) | Custom [exporter](../mixins/export.md) for BOM data | Yes |
| [Currency Exchange](./currency_exchange.md) | Currency exchange rate plugin | Yes |
| [DigiKey](./digikey.md) | DigiKey barcode support | No |
| [InvenTree Barcode](./inventree_barcode.md) | Internal barcode support | Yes |
| [InvenTree Core Notifications](./notifications.md) | Core notification system | Yes |
| [InvenTree Exporter](./inventree_exporter.md) | Custom [exporter](../mixins/export.md) for InvenTree data | Yes |
| [Label Printer](./inventree_label.md) | Custom [label](../mixins/label.md) for InvenTree data | Yes |
| [Label Machine](./inventree_label_machine.md) | Custom [label](../mixins/label.md) for InvenTree data | Yes |
| [Label Sheet](./inventree_label_sheet.md) | Custom [label](../mixins/label.md) for InvenTree data | Yes |
| [LCSC](./lcsc.md) | LCSC barcode support | No |
| [Mouser](./mouser.md) | Mouser barcode support | No |
| [Parameter Exporter](./part_parameter_exporter.md) | Custom [exporter](../mixins/export.md) for part parameter data | Yes |
| [Part Notifications](./part_notifications.md) | Notifications for part changes | No |
| [TME](./tme.md) | TME barcode support | No |
### Plugin Table
In the admin center, the plugins table can be filtered to display only builtin plugins. This is done by selecting the "Builtin" filter in the table toolbar:
{{ image("filter_plugins.png", base="plugin/builtin", title="Builtin Plugin Filter") }}
@@ -0,0 +1,22 @@
---
title: InvenTree Barcode Plugin
---
## InvenTree Barcode Plugin
The **InvenTree Barcode Plugin** provides builtin barcode support for InvenTree products. It provides functionality for generating and scanning barcodes. It implements the [BarcodeMixin](../mixins/barcode.md) mixin to provide custom barcode support.
### Activation
This plugin is a *mandatory* plugin, and is always enabled.
### Plugin Settings
This plugin provides selection of the barcode format to use when generating labels. The format can be selected from:
- **JSON Barcodes**: This format is used for generating barcodes in JSON format, which is a 'human readable' format.
- **Short Barcodes**: This format is used for generating barcodes in a short format, which is a more compact representation of the barcode data.
Additionally, if the "Short Barcodes" format is selected, the user can specify the prefix used for the barcode. This prefix is used to identify the barcode format, and can be set to any value. The default value is `INV-` - although can be changed.
{{ image("barcode_plugin_settings.png", base="plugin/builtin", title="Barcode Plugin Settings") }}
@@ -0,0 +1,29 @@
---
title: InvenTree Exporter Plugin
---
## InvenTree Exporter Plugin
The **InvenTree Exporter Plugin** provides basic data export functionality. It is the "default" export plugin, and can be used to export data from any tabulated dataset.
It utilizes the [ExporterMixin](../mixins/export.md) mixin to provide a general purpose export format for InvenTree data.
### Activation
This plugin is a *mandatory* plugin, and is always enabled.
### Plugin Settings
This plugin has no configurable settings.
## Usage
To export table data using this plugin, first click the *Download Data* button in the table toolbar:
{{ image("download_data.png", base="plugin/builtin", title="Download Data") }}
Then, select the *InvenTree Exporter* plugin from the list of available plugins:
{{ image("select_exporter.png", base="plugin/builtin", title="Select Exporter") }}
Finally, select the desired export format and then click the *Export* button to download the data.
@@ -0,0 +1,25 @@
---
title: InvenTree Label Plugin
---
## InvenTree Label Plugin
The **InvenTree Label Plugin** provides a simple way to print labels for InvenTree products. The plugin utilizes the [label mixin](../mixins/label.md) to provide custom printing support.
When printing labels using this plugin, the labels are printed as PDF files which can be downloaded and printed using any PDF viewer.
### Activation
This plugin is a *mandatory* plugin, and is always enabled.
### Plugin Settings
This plugin provides a "DEBUG" mode, which can be enabled in the plugin settings. This mode is intended for development and testing purposes only, and should not be used in production environments. In debug mode, the plugin will generate labels with raw HTML - which can be useful for debugging purposes. However, this mode may not produce valid PDF files, and should not be used for actual label printing.
{{ image("label_options.png", base="plugin/builtin", title="Label Options") }}
## Usage
To use this plugin, select the *InvenTreeLabel* option from the list of available plugins when printing labels. The plugin will generate a PDF file containing the labels for the selected products.
{{ image("label_select.png", base="plugin/builtin", title="Label Plugin") }}
@@ -0,0 +1,23 @@
---
title: InvenTree Label Machine Plugin
---
## InvenTree Label Machine Plugin
The **InvenTree Label Machine Plugin** provides support for printing labels using the [machines interface](../machines/overview.md) in InvenTree.
It allows labels to be printed directly to an external label printer, using the machines interface.
This plugin by itself does *not* provide connection to any specific label printer. Instead, it provides a generic interface for printing labels to any machine that is configured in InvenTree. A separate plugin is required to provide the actual connection to the label printer.
### Activation
This plugin is a *mandatory* plugin, and is always enabled.
### Plugin Settings
This plugin has no configurable settings.
## Usage
When printing a label, select the *InvenTreeLabelMachine* option from the list of available plugins. Then, select the desired machine from the list of available machines.
@@ -0,0 +1,29 @@
---
title: InvenTree Label Sheet Plugin
---
## InvenTree Label Sheet Plugin
The **InvenTree Label Sheet Plugin** provides a custom label sheet format for InvenTree. This plugin utilizes the [label mixin](../mixins/label.md) to provide custom printing support.
When printing labels using this plugin, the labels are collated and printed on a single "sheet", in a regular grid format. This is useful for printing labels on standard label sheets.
### Activation
This plugin is a *mandatory* plugin, and is always enabled.
### Plugin Settings
### Plugin Settings
This plugin provides a "DEBUG" mode, which can be enabled in the plugin settings. This mode is intended for development and testing purposes only, and should not be used in production environments. In debug mode, the plugin will generate labels with raw HTML - which can be useful for debugging purposes. However, this mode may not produce valid PDF files, and should not be used for actual label printing.
{{ image("label_sheet_options.png", base="plugin/builtin", title="Label Options") }}
## Usage
To use this plugin, select the *InvenTreeLabelSheet* option from the list of available plugins when printing labels. The plugin will generate a PDF file containing the labels for the selected products.
This plugin provides some additional options in the dialog for customizing the output.
{{ image("label_sheet_select.png", base="plugin/builtin", title="Label Sheet Plugin") }}
+19
View File
@@ -0,0 +1,19 @@
---
title: LCSC Barcode Plugin
---
## LCSC Barcode Plugin
The **LCSC Barcode Plugin** provides barcode support for [LCSC](https://lcsc.com/) products. When receiving items from LCSC, the barcode on the product can be scanned to automatically identify the product in InvenTree.
This plugin implements the [BarcodeMixin](../mixins/barcode.md) mixin to provide custom barcode support.
### Activation
This plugin is an *optional* plugin, and must be enabled in the InvenTree admin center.
### Plugin Settings
After activating the plugin, the user must specify which [supplier](../../purchasing/supplier.md) the plugin should be associated with. This is done by selecting the supplier from the dropdown list in the plugin settings:
{{ image("lcsc_plugin_settings.png", base="plugin/builtin", title="LCSC Plugin Settings") }}
+19
View File
@@ -0,0 +1,19 @@
---
title: Mouser Barcode Plugin
---
## Mouser Barcode Plugin
The **Mouser Barcode Plugin** provides barcode support for [Mouser](https://www.mouser.com/) products. When receiving items from Mouser, the barcode on the product can be scanned to automatically identify the product in InvenTree.
This plugin implements the [BarcodeMixin](../mixins/barcode.md) mixin to provide custom barcode support.
### Activation
This plugin is an *optional* plugin, and must be enabled in the InvenTree admin center.
### Plugin Settings
After activating the plugin, the user must specify which [supplier](../../purchasing/supplier.md) the plugin should be associated with. This is done by selecting the supplier from the dropdown list in the plugin settings:
{{ image("mouser_plugin_settings.png", base="plugin/builtin", title="Mouser Plugin Settings") }}
@@ -0,0 +1,21 @@
---
title: Notifications Plugin
---
## InvenTree Core Notifications
The **InvenTree Core Notifications** plugin provides a notification system for InvenTree. It allows users to receive notifications when certain events occur in the system.
### Activation
This plugin is a *mandatory* plugin, and is always enabled.
### Plugin Settings
The following settings are available for the notifications plugin:
{{ image("notification_settings.png", base="plugin/builtin", title="Notification Settings") }}
## Usage
Configure the plugin to enable the desired notification types. The plugin will then send notifications to users when the specified events occur.
@@ -0,0 +1,23 @@
---
title: Part Notifications
---
## Part Notifications Plugin
The **Part Notifications Plugin** provides a notification system for part changes. It allows users to receive notifications when certain events occur on parts.
### Activation
This plugin is an *optional* plugin, and must be enabled in the InvenTree settings.
### Plugin Settings
This plugin has the following configurable settings:
{{ image("part_notification_settings.png", base="plugin/builtin", title="Part Notification Settings") }}
## Usage
To enable the part notifications plugin, the *Enable Event Integration* setting must be enabled in the InvenTree settings. This will allow the plugin to send notifications when certain events occur on parts.
{{ image("enable_events.png", base="plugin/builtin", title="Enable Events") }}
@@ -0,0 +1,25 @@
---
title: Part Parameter Exporter
---
## Part Parameter Exporter
The **Part Parameter Exporter** plugin provides custom export functionality for [Part Parameter](../../part/parameter.md) data.
It utilizes the [ExporterMixin](../mixins/export.md) mixin to provide a custom export format for part parameter data.
### Activation
This plugin is a *mandatory* plugin, and is always enabled.
### Plugin Settings
This plugin has no configurable settings.
## Usage
This plugin is used in the same way as the [InvenTree Exporter Plugin](./inventree_exporter.md), but provides a custom export format for part parameter data.
When exporting part parameter data, the *Part Parameter Exporter* plugin is available for selection in the export dialog. When selected, the plugin provides some additional export options to control the data export process.
{{ image("parameter_export_options.png", base="plugin/builtin", title="Part Parameter Export Options") }}
+19
View File
@@ -0,0 +1,19 @@
---
title: TME Barcode Plugin
---
## TME Barcode Plugin
The **TME Barcode Plugin** provides barcode support for [TME](http://tme.eu/) products. When receiving items from TME, the barcode on the product can be scanned to automatically identify the product in InvenTree.
This plugin implements the [BarcodeMixin](../mixins/barcode.md) mixin to provide custom barcode support.
### Activation
This plugin is an *optional* plugin, and must be enabled in the InvenTree admin center.
### Plugin Settings
After activating the plugin, the user must specify which [supplier](../../purchasing/supplier.md) the plugin should be associated with. This is done by selecting the supplier from the dropdown list in the plugin settings:
{{ image("tme_plugin_settings.png", base="plugin/builtin", title="TME Plugin Settings") }}
+2 -6
View File
@@ -26,9 +26,7 @@ In certain container environments (such as docker), plugins are installed into a
!!! tip "Check Plugins on Startup"
Ensure the **Check Plugins on Startup** option is enabled, when running InvenTree in a container environment!
{% with id="check_plugins", url="plugin/check_on_startup.png", description="Check plugins on startup" %}
{% include 'img.html' %}
{% endwith %}
{{ image("plugin/check_on_startup.png", "Check plugins on startup") }}
### Installation Methods
@@ -65,9 +63,7 @@ Installation via PIP (using the *plugins.txt* file) provides a number of advanta
Admin users can install plugins directly from the web interface, via the "Plugin Settings" view:
{% with id="plugin_install", url="plugin/plugin_install_web.png", description="Install via web interface" %}
{% include 'img.html' %}
{% endwith %}
{{ image("plugin/plugin_install_web.png", "Install plugin via web interface") }}
!!! success "Plugin File"
A plugin installed via the web interface is added to the [plugins.txt](#plugin-installation-file-pip) plugin file.
+2 -3
View File
@@ -46,9 +46,8 @@ For models which provide this metadata field, access is also provided via the AP
For example:
{% with id="metadata_api", url="plugin/model_metadata_api.png", description="Access model metadata via API", maxheight="400px" %}
{% include 'img.html' %}
{% endwith %}
{{ image("plugin/model_metadata_api.png", "Access model metadata via API", maxheight="400px") }}
#### PUT vs PATCH
+1 -3
View File
@@ -11,9 +11,7 @@ When a certain (server-side) event occurs, the background worker passes the even
!!! tip "Enable Event Integration"
The *Enable Event Integration* option must first be enabled to allow plugins to respond to events.
{% with id="events", url="plugin/enable_events.png", description="Enable event integration" %}
{% include 'img.html' %}
{% endwith %}
{{ image("plugin/enable_events.png", "Enable event integration") }}
## Events
+10 -5
View File
@@ -21,9 +21,10 @@ Each plugin can dictate which datasets are supported using the `supports_export`
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
summary: False
members: []
extra:
show_sources: True
The default implementation returns `True` for all data types.
@@ -36,9 +37,10 @@ The `generate_filename` method constructs a filename for the exported file.
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
summary: False
members: []
extra:
show_sources: True
### Adjust Columns
@@ -49,9 +51,10 @@ The `update_headers` method allows the plugin to adjust the columns selected to
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
summary: False
members: []
extra:
show_sources: True
### Queryset Filtering
@@ -62,9 +65,10 @@ The `filter_queryset` method allows the plugin to provide custom filtering to th
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
summary: False
members: []
extra:
show_sources: True
### Export Data
@@ -75,9 +79,10 @@ The `export_data` method performs the step of transforming a [Django QuerySet]({
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
summary: False
members: []
extra:
show_sources: True
Note that the default implementation simply uses the builtin tabulation functionality of the provided serializer class. In most cases, this will be sufficient.
+1 -3
View File
@@ -112,9 +112,7 @@ To merge (combine) multiple labels into a single output (for example printing mu
If label printing plugins are enabled, they are able to be used directly from the InvenTree web interface:
{% with id="label_print", url="plugin/print_label_select_plugin.png", description="Print label via plugin" %}
{% include 'img.html' %}
{% endwith %}
{{ image("plugin/print_label_select_plugin.png", "Print label via plugin") }}
### App Integration
+2 -6
View File
@@ -14,17 +14,13 @@ The possibilities are endless!
### Web Integration
{% with id="web_locate", url="plugin/web_locate.png", description="Locate stock item from web interface", maxheight="400px" %}
{% include 'img.html' %}
{% endwith %}
{{ image("plugin/web_locate.png", "Locate stock item from web interface", maxheight="400px") }}
### App Integration
If a locate plugin is installed and activated, the [InvenTree mobile app](../../app/index.md) displays a button for locating a StockItem or StockLocation (see below):
{% with id="app_locate", url="plugin/app_locate.png", description="Locate stock item from app", maxheight="400px" %}
{% include 'img.html' %}
{% endwith %}
{{ image("plugin/app_locate.png", "Locate stock item from app", maxheight="400px") }}
### Implementation
+1 -3
View File
@@ -14,9 +14,7 @@ The ScheduleMixin class provides a plugin with the ability to call functions at
!!! tip "Enable Schedule Integration"
The *Enable Schedule Integration* option but be enabled, for scheduled plugin events to be activated.
{% with id="schedule", url="plugin/enable_schedule.png", description="Enable schedule integration" %}
{% include 'img.html' %}
{% endwith %}
{{ image("plugin/enable_schedule.png", "Enable schedule integration") }}
### SamplePlugin
+16 -8
View File
@@ -21,9 +21,10 @@ The entrypoint for user interface plugins is the `UserInterfaceMixin` class, whi
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
summary: False
members: []
extra:
show_sources: True
Note here that the `get_ui_features` calls other methods to extract the available features from the plugin, based on the requested feature type. These methods can be overridden to provide custom functionality.
@@ -39,9 +40,10 @@ The `get_ui_features` method should return a list of `UIFeature` objects, which
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
summary: False
members: []
extra:
show_sources: True
Note that the *options* field contains fields which may be specific to a particular feature type - read the documentation below on each feature type for more information.
@@ -76,7 +78,8 @@ The InvenTree dashboard is a collection of "items" which are displayed on the ma
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []
@@ -89,7 +92,8 @@ The *options* field in the returned `UIFeature` object can contain the following
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []
@@ -110,7 +114,8 @@ Many of the pages in the InvenTree web interface are built using a series of "pa
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []
@@ -123,7 +128,8 @@ The *options* field in the returned `UIFeature` object can contain the following
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []
@@ -144,7 +150,8 @@ The `get_ui_template_editors` feature type can be used to provide custom templat
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []
@@ -157,7 +164,8 @@ The `get_ui_template_previews` feature type can be used to provide custom templa
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []
+20 -10
View File
@@ -25,7 +25,8 @@ A custom plugin may implement the `validate_model_deletion` method to perform cu
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []
@@ -40,7 +41,8 @@ Any plugin which inherits the `ValidationMixin` can implement the `validate_mode
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []
@@ -113,7 +115,8 @@ If the custom method determines that the part name is *objectionable*, it should
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []
@@ -126,7 +129,8 @@ Validation of the Part IPN (Internal Part Number) field is exposed to custom plu
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []
@@ -139,7 +143,8 @@ Validation of the Part IPN (Internal Part Number) field is exposed to custom plu
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []
@@ -156,7 +161,8 @@ The `validate_batch_code` method allows plugins to raise an error if a batch cod
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []
@@ -169,7 +175,8 @@ The `generate_batch_code` method can be implemented to generate a new batch code
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []
@@ -188,7 +195,8 @@ Custom serial number validation can be implemented using the `validate_serial_nu
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []
@@ -227,7 +235,8 @@ A custom plugin can implement the `convert_serial_to_int` method to determine ho
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []
@@ -245,7 +254,8 @@ For custom serial number schemes, it is important to provide a method to generat
show_bases: False
show_root_heading: False
show_root_toc_entry: False
show_sources: True
extra:
show_sources: True
summary: False
members: []