2 Commits
Author SHA1 Message Date
BlubbFish a23cc8dee8 npn can be null as is inventree allowed 2026-08-03 14:02:21 +02:00
BlubbFish edf6109aa2 Add PackageListNumber 2026-02-21 13:46:52 +01:00
6 changed files with 113 additions and 73 deletions
+6
View File
@@ -1,5 +1,11 @@
# Changelog
## 1.3.1 - 2026-02-32 - Add PackageListNumber
### New Features
* Add a Filed for Package List Number, so that multiple Shipments can be tracked
### Bugfixes
### Changes
## 1.3.0 - 2026-02-19 - Change DataMatrix to real Json
### New Features
### Bugfixes
+75 -53
View File
@@ -53,6 +53,12 @@
this.buttonNone = new Button();
this.buttonAll = new Button();
this.dataGridView1 = new DataGridView();
this.Pos = new DataGridViewTextBoxColumn();
this.Print = new DataGridViewCheckBoxColumn();
this.Bag = new DataGridViewCheckBoxColumn();
this.Teil = new DataGridViewTextBoxColumn();
this.Sku = new DataGridViewTextBoxColumn();
this.Got = new DataGridViewTextBoxColumn();
this._textServerName = new Label();
this.label8 = new Label();
this._textPrinterName = new Label();
@@ -64,12 +70,8 @@
this.Druckereinstellungen = new TabPage();
this._checkBox_Landscape = new CheckBox();
this._buttonSaveSettings2 = new Button();
this.Pos = new DataGridViewTextBoxColumn();
this.Print = new DataGridViewCheckBoxColumn();
this.Bag = new DataGridViewCheckBoxColumn();
this.Teil = new DataGridViewTextBoxColumn();
this.Sku = new DataGridViewTextBoxColumn();
this.Got = new DataGridViewTextBoxColumn();
this.label7 = new Label();
this.textBox1 = new TextBox();
((System.ComponentModel.ISupportInitialize)this.pictureBox1).BeginInit();
this.statusStrip1.SuspendLayout();
this._mainTabBox.SuspendLayout();
@@ -216,7 +218,7 @@
// _buttonQueryPo
//
this._buttonQueryPo.Image = Properties.Resources.arrow_reload_24;
this._buttonQueryPo.Location = new Point(1236, 6);
this._buttonQueryPo.Location = new Point(866, 6);
this._buttonQueryPo.Name = "_buttonQueryPo";
this._buttonQueryPo.Size = new Size(56, 29);
this._buttonQueryPo.TabIndex = 15;
@@ -228,7 +230,7 @@
this.comboBox1.FormattingEnabled = true;
this.comboBox1.Location = new Point(6, 6);
this.comboBox1.Name = "comboBox1";
this.comboBox1.Size = new Size(1224, 28);
this.comboBox1.Size = new Size(854, 28);
this.comboBox1.TabIndex = 16;
this.comboBox1.SelectedIndexChanged += this.comboBox1_SelectedIndexChanged;
//
@@ -261,6 +263,8 @@
//
// Label
//
this.Label.Controls.Add(this.textBox1);
this.Label.Controls.Add(this.label7);
this.Label.Controls.Add(this.labelCount);
this.Label.Controls.Add(this.buttonNone);
this.Label.Controls.Add(this.buttonAll);
@@ -331,6 +335,55 @@
this.dataGridView1.CellValueChanged += this.DataGridView1_CellValueChanged;
this.dataGridView1.SelectionChanged += this.DataGridView1_SelectionChanged;
//
// Pos
//
this.Pos.HeaderText = "Pos";
this.Pos.MinimumWidth = 45;
this.Pos.Name = "Pos";
this.Pos.ReadOnly = true;
this.Pos.Resizable = DataGridViewTriState.False;
this.Pos.Width = 45;
//
// Print
//
this.Print.AutoSizeMode = DataGridViewAutoSizeColumnMode.None;
this.Print.HeaderText = "Drucken";
this.Print.MinimumWidth = 70;
this.Print.Name = "Print";
this.Print.Resizable = DataGridViewTriState.False;
this.Print.Width = 70;
//
// Bag
//
this.Bag.HeaderText = "Bag";
this.Bag.MinimumWidth = 60;
this.Bag.Name = "Bag";
this.Bag.Resizable = DataGridViewTriState.True;
this.Bag.Width = 60;
//
// Teil
//
this.Teil.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
this.Teil.HeaderText = "Teil";
this.Teil.MinimumWidth = 300;
this.Teil.Name = "Teil";
this.Teil.ReadOnly = true;
//
// Sku
//
this.Sku.HeaderText = "SKU";
this.Sku.MinimumWidth = 150;
this.Sku.Name = "Sku";
this.Sku.ReadOnly = true;
this.Sku.Width = 150;
//
// Got
//
this.Got.HeaderText = "Got";
this.Got.MinimumWidth = 50;
this.Got.Name = "Got";
this.Got.Width = 50;
//
// _textServerName
//
this._textServerName.AutoSize = true;
@@ -450,54 +503,21 @@
this._buttonSaveSettings2.UseVisualStyleBackColor = true;
this._buttonSaveSettings2.Click += this.ButtonSaveSettings_Click;
//
// Pos
// label7
//
this.Pos.HeaderText = "Pos";
this.Pos.MinimumWidth = 45;
this.Pos.Name = "Pos";
this.Pos.ReadOnly = true;
this.Pos.Resizable = DataGridViewTriState.False;
this.Pos.Width = 45;
this.label7.AutoSize = true;
this.label7.Location = new Point(928, 9);
this.label7.Name = "label7";
this.label7.Size = new Size(87, 20);
this.label7.TabIndex = 29;
this.label7.Text = "Package-ID:";
//
// Print
// textBox1
//
this.Print.AutoSizeMode = DataGridViewAutoSizeColumnMode.None;
this.Print.HeaderText = "Drucken";
this.Print.MinimumWidth = 70;
this.Print.Name = "Print";
this.Print.Resizable = DataGridViewTriState.False;
this.Print.Width = 70;
//
// Bag
//
this.Bag.HeaderText = "Bag";
this.Bag.MinimumWidth = 60;
this.Bag.Name = "Bag";
this.Bag.Resizable = DataGridViewTriState.True;
this.Bag.Width = 60;
//
// Teil
//
this.Teil.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
this.Teil.HeaderText = "Teil";
this.Teil.MinimumWidth = 300;
this.Teil.Name = "Teil";
this.Teil.ReadOnly = true;
//
// Sku
//
this.Sku.HeaderText = "SKU";
this.Sku.MinimumWidth = 150;
this.Sku.Name = "Sku";
this.Sku.ReadOnly = true;
this.Sku.Width = 150;
//
// Got
//
this.Got.HeaderText = "Got";
this.Got.MinimumWidth = 50;
this.Got.Name = "Got";
this.Got.Width = 50;
this.textBox1.Location = new Point(1021, 6);
this.textBox1.Name = "textBox1";
this.textBox1.Size = new Size(271, 27);
this.textBox1.TabIndex = 30;
//
// Form1
//
@@ -571,5 +591,7 @@
private DataGridViewTextBoxColumn Teil;
private DataGridViewTextBoxColumn Sku;
private DataGridViewTextBoxColumn Got;
private TextBox textBox1;
private Label label7;
}
}
+5 -4
View File
@@ -367,7 +367,7 @@ namespace BlubbFish.Applications.Barcodes.Inventree {
r.Cells[3].Value = new LineItem {
Name = item["internal_part_name"].ToString(),
SKU = item["sku"].ToString(),
MPN = item["mpn"].ToString(),
MPN = item["mpn"] is null ? "" : item["mpn"].ToString(),
LineNr = i,
Quantity = quantity,
EciaFormat = new Ecia {
@@ -375,12 +375,13 @@ namespace BlubbFish.Applications.Barcodes.Inventree {
SupplierOrderNumber = po.SupplierReference,
ShipDate = DateTime.Now.ToString("yyyyMMdd"),
SKU = item["sku"].ToString(),
MPN = item["mpn"].ToString(),
MPN = item["mpn"] is null ? "": item["mpn"].ToString(),
CustomerPOLine = i++.ToString(),
Quantity = quantity,
DateCode = DateTime.Now.ToString("yy01"),
LotCode = "1",
County = "DE"
LotCode = "N/T",
County = "DE",
PackingListNumber = this.textBox1.Text
}
};
r.Cells[4].Value = item["sku"].ToString();
@@ -9,7 +9,7 @@
</PropertyGroup>
<PropertyGroup>
<AssemblyVersion>1.3.0</AssemblyVersion>
<AssemblyVersion>1.3.1</AssemblyVersion>
<FileVersion>$(AssemblyVersion)</FileVersion>
<Version>$(AssemblyVersion)</Version>
<Authors>BlubbFish</Authors>
@@ -24,6 +24,7 @@
<RepositoryUrl>https://git.blubbfish.net/vs_projects/InventreeBarcodeGenerator.git</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<PackageReleaseNotes>
1.3.1 - 2026-02-32 - Add PackageListNumber
1.3.0 - 2026-02-19 - Change DataMatrix to real Json
1.2.0 - 2026-02-18 - Fix Quantity on Labels so that you can recieve only partial deliverys
1.1.0 - 2026-02-14 - Rewrote to DataGridView
@@ -73,5 +74,10 @@
<PackagePath>\</PackagePath>
</None>
</ItemGroup>
<ItemGroup>
<None Update="Res\store.py">
<CopyToOutputDirectory>Never</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>
+13 -9
View File
@@ -8,6 +8,9 @@ namespace BlubbFish.Applications.Barcodes.Inventree.Models {
public String SupplierOrderNumber {
get; set;
}
public String PackingListNumber {
get; set;
}
public String ShipDate {
get; set;
}
@@ -35,15 +38,16 @@ namespace BlubbFish.Applications.Barcodes.Inventree.Models {
public override String ToString() => this.Quantity + "x " + this.SKU + " from " + this.CustomerPO;
public String ToEciaString() => JsonMapper.ToJson(new Dictionary<String, Object>() {
{ "K", this.CustomerPO },
{ "1K", this.SupplierOrderNumber},
{ "6D", this.ShipDate},
{ "P", this.SKU},
{ "1P", this.MPN},
{ "4K", this.CustomerPOLine},
{ "Q", this.Quantity},
{ "10D", this.DateCode},
{ "1T", this.LotCode},
{ "4L", this.County},
{ "1K", this.SupplierOrderNumber },
{ "11K", this.PackingListNumber },
{ "6D", this.ShipDate },
{ "P", this.SKU },
{ "1P", this.MPN },
{ "4K", this.CustomerPOLine },
{ "Q", this.Quantity },
{ "10D", this.DateCode },
{ "1T", this.LotCode },
{ "4L", this.County },
});
}
+7 -6
View File
@@ -14,19 +14,20 @@ from plugin.mixins import SettingsMixin, SupplierBarcodeMixin
class ReicheltPlugin(SupplierBarcodeMixin, SettingsMixin, InvenTreePlugin):
"""Plugin to integrate the Barcodes into InvenTree."""
DEFAULT_SUPPLIER_NAME = 'Reichelt'
NAME = 'ReicheltBarcodePlugin'
SLUG = 'Reicheltplugin'
TITLE = _('Supplier Integration - Reichelt')
DESCRIPTION = _('Provides support for scanning Reichelt barcodes')
NAME = DEFAULT_SUPPLIER_NAME+'BarcodePlugin'
SLUG = DEFAULT_SUPPLIER_NAME+'plugin'
TITLE = _('Supplier Integration - '+DEFAULT_SUPPLIER_NAME)
DESCRIPTION = _('Provides support for scanning '+DEFAULT_SUPPLIER_NAME+' barcodes')
VERSION = '1.0.0'
AUTHOR = _('BlubbFish')
DEFAULT_SUPPLIER_NAME = 'Reichelt'
SETTINGS = {
'SUPPLIER_ID': {
'name': _('Supplier'),
'description': _("The Supplier which acts as 'Reichelt'"),
'description': _("The Supplier which acts as '"+DEFAULT_SUPPLIER_NAME+"'"),
'model': 'company.company',
'model_filters': {'is_supplier': True},
}