From 1bacbae6731c8faa4ec72f113c817a0191569048 Mon Sep 17 00:00:00 2001 From: BlubbFish Date: Wed, 18 Feb 2026 21:06:02 +0100 Subject: [PATCH] Fix Quantity on Labels so that you can recieve only partial deliverys --- Changelog.md | 7 + InventreeBarcodeGenerator/Form1.Designer.cs | 144 ++++++++++-------- InventreeBarcodeGenerator/Form1.cs | 48 +++--- InventreeBarcodeGenerator/Form1.resx | 48 +++++- .../InventreeBarcodeGenerator.csproj | 5 +- 5 files changed, 163 insertions(+), 89 deletions(-) diff --git a/Changelog.md b/Changelog.md index c4f8c48..66240b4 100644 --- a/Changelog.md +++ b/Changelog.md @@ -1,5 +1,12 @@ # Changelog +## 1.2.0 - 2026-02-18 - Fix Quantity on Labels so that you can recieve only partial deliverys +### New Features +* Add a new Collumn to set the recieved Quantity on the Parts +* Draw the Rows in Colurs to that's easier to find the missing ones. +### Bugfixes +### Changes + ## 1.1.0 - 2016-02-14 - Rewrote to DataGridView ### New Features * Rewrote the App, now it's using DataGridView to print Multiple Labels at onces. diff --git a/InventreeBarcodeGenerator/Form1.Designer.cs b/InventreeBarcodeGenerator/Form1.Designer.cs index 50c36f1..eab9352 100644 --- a/InventreeBarcodeGenerator/Form1.Designer.cs +++ b/InventreeBarcodeGenerator/Form1.Designer.cs @@ -53,6 +53,12 @@ this.buttonNone = new Button(); this.buttonAll = new Button(); this.dataGridView1 = new DataGridView(); + this.Column4 = new DataGridViewTextBoxColumn(); + this.Column1 = new DataGridViewCheckBoxColumn(); + this.Column6 = new DataGridViewTextBoxColumn(); + this.Column2 = new DataGridViewTextBoxColumn(); + this.Column3 = new DataGridViewTextBoxColumn(); + this.Got = new DataGridViewTextBoxColumn(); this._textServerName = new Label(); this.label8 = new Label(); this._textPrinterName = new Label(); @@ -64,11 +70,6 @@ this.Druckereinstellungen = new TabPage(); this._checkBox_Landscape = new CheckBox(); this._buttonSaveSettings2 = new Button(); - this.Column1 = new DataGridViewCheckBoxColumn(); - this.Column4 = new DataGridViewTextBoxColumn(); - this.Column2 = new DataGridViewTextBoxColumn(); - this.Column3 = new DataGridViewTextBoxColumn(); - this.Column6 = new DataGridViewTextBoxColumn(); ((System.ComponentModel.ISupportInitialize)this.pictureBox1).BeginInit(); this.statusStrip1.SuspendLayout(); this._mainTabBox.SuspendLayout(); @@ -80,7 +81,7 @@ // // pictureBox1 // - this.pictureBox1.Location = new Point(907, 104); + this.pictureBox1.Location = new Point(1298, 187); this.pictureBox1.Name = "pictureBox1"; this.pictureBox1.Size = new Size(488, 228); this.pictureBox1.TabIndex = 0; @@ -154,7 +155,7 @@ // // _buttonPrint // - this._buttonPrint.Location = new Point(1323, 608); + this._buttonPrint.Location = new Point(1711, 608); this._buttonPrint.Name = "_buttonPrint"; this._buttonPrint.Size = new Size(94, 29); this._buttonPrint.TabIndex = 8; @@ -192,7 +193,7 @@ // label5 // this.label5.AutoSize = true; - this.label5.Location = new Point(907, 80); + this.label5.Location = new Point(1298, 164); this.label5.Name = "label5"; this.label5.Size = new Size(68, 20); this.label5.TabIndex = 12; @@ -215,7 +216,7 @@ // _buttonQueryPo // this._buttonQueryPo.Image = Properties.Resources.arrow_reload_24; - this._buttonQueryPo.Location = new Point(840, 6); + this._buttonQueryPo.Location = new Point(1236, 6); this._buttonQueryPo.Name = "_buttonQueryPo"; this._buttonQueryPo.Size = new Size(56, 29); this._buttonQueryPo.TabIndex = 15; @@ -227,7 +228,7 @@ this.comboBox1.FormattingEnabled = true; this.comboBox1.Location = new Point(6, 6); this.comboBox1.Name = "comboBox1"; - this.comboBox1.Size = new Size(828, 28); + this.comboBox1.Size = new Size(1224, 28); this.comboBox1.TabIndex = 16; this.comboBox1.SelectedIndexChanged += this.comboBox1_SelectedIndexChanged; // @@ -237,7 +238,7 @@ this.statusStrip1.Items.AddRange(new ToolStripItem[] { this._statusLabel }); this.statusStrip1.Location = new Point(0, 640); this.statusStrip1.Name = "statusStrip1"; - this.statusStrip1.Size = new Size(1433, 26); + this.statusStrip1.Size = new Size(1821, 26); this.statusStrip1.TabIndex = 20; this.statusStrip1.Text = "statusStrip1"; // @@ -255,7 +256,7 @@ this._mainTabBox.Location = new Point(12, 12); this._mainTabBox.Name = "_mainTabBox"; this._mainTabBox.SelectedIndex = 0; - this._mainTabBox.Size = new Size(1409, 590); + this._mainTabBox.Size = new Size(1797, 590); this._mainTabBox.TabIndex = 21; // // Label @@ -275,7 +276,7 @@ this.Label.Location = new Point(4, 29); this.Label.Name = "Label"; this.Label.Padding = new Padding(3); - this.Label.Size = new Size(1401, 557); + this.Label.Size = new Size(1789, 557); this.Label.TabIndex = 0; this.Label.Text = "Label"; this.Label.UseVisualStyleBackColor = true; @@ -283,7 +284,7 @@ // labelCount // this.labelCount.AutoSize = true; - this.labelCount.Location = new Point(677, 526); + this.labelCount.Location = new Point(1073, 526); this.labelCount.Name = "labelCount"; this.labelCount.Size = new Size(219, 20); this.labelCount.TabIndex = 28; @@ -316,7 +317,7 @@ this.dataGridView1.AllowUserToDeleteRows = false; this.dataGridView1.AllowUserToResizeRows = false; this.dataGridView1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize; - this.dataGridView1.Columns.AddRange(new DataGridViewColumn[] { this.Column1, this.Column4, this.Column2, this.Column3, this.Column6 }); + this.dataGridView1.Columns.AddRange(new DataGridViewColumn[] { this.Column4, this.Column1, this.Column6, this.Column2, this.Column3, this.Got }); this.dataGridView1.EditMode = DataGridViewEditMode.EditOnKeystroke; this.dataGridView1.Location = new Point(6, 40); this.dataGridView1.MultiSelect = false; @@ -324,16 +325,65 @@ this.dataGridView1.RowHeadersVisible = false; this.dataGridView1.RowHeadersWidth = 51; this.dataGridView1.ShowEditingIcon = false; - this.dataGridView1.Size = new Size(890, 476); + this.dataGridView1.Size = new Size(1286, 476); this.dataGridView1.TabIndex = 25; this.dataGridView1.CellContentClick += this.DataGridView1_CellContentClick; this.dataGridView1.CellValueChanged += this.DataGridView1_CellValueChanged; this.dataGridView1.SelectionChanged += this.DataGridView1_SelectionChanged; // + // Column4 + // + this.Column4.HeaderText = "Pos"; + this.Column4.MinimumWidth = 45; + this.Column4.Name = "Column4"; + this.Column4.ReadOnly = true; + this.Column4.Resizable = DataGridViewTriState.False; + this.Column4.Width = 45; + // + // Column1 + // + this.Column1.AutoSizeMode = DataGridViewAutoSizeColumnMode.None; + this.Column1.HeaderText = "Drucken"; + this.Column1.MinimumWidth = 70; + this.Column1.Name = "Column1"; + this.Column1.Resizable = DataGridViewTriState.False; + this.Column1.Width = 70; + // + // Column6 + // + this.Column6.HeaderText = "Labels"; + this.Column6.MinimumWidth = 60; + this.Column6.Name = "Column6"; + this.Column6.SortMode = DataGridViewColumnSortMode.NotSortable; + this.Column6.Width = 60; + // + // Column2 + // + this.Column2.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; + this.Column2.HeaderText = "Teil"; + this.Column2.MinimumWidth = 300; + this.Column2.Name = "Column2"; + this.Column2.ReadOnly = true; + // + // Column3 + // + this.Column3.HeaderText = "SKU"; + this.Column3.MinimumWidth = 150; + this.Column3.Name = "Column3"; + this.Column3.ReadOnly = true; + this.Column3.Width = 150; + // + // Got + // + this.Got.HeaderText = "Got"; + this.Got.MinimumWidth = 50; + this.Got.Name = "Got"; + this.Got.Width = 50; + // // _textServerName // this._textServerName.AutoSize = true; - this._textServerName.Location = new Point(1237, 80); + this._textServerName.Location = new Point(1298, 80); this._textServerName.Name = "_textServerName"; this._textServerName.Size = new Size(93, 20); this._textServerName.TabIndex = 23; @@ -342,7 +392,7 @@ // label8 // this.label8.AutoSize = true; - this.label8.Location = new Point(1237, 60); + this.label8.Location = new Point(1298, 60); this.label8.Name = "label8"; this.label8.Size = new Size(53, 20); this.label8.TabIndex = 22; @@ -351,7 +401,7 @@ // _textPrinterName // this._textPrinterName.AutoSize = true; - this._textPrinterName.Location = new Point(1237, 23); + this._textPrinterName.Location = new Point(1298, 23); this._textPrinterName.Name = "_textPrinterName"; this._textPrinterName.Size = new Size(105, 20); this._textPrinterName.TabIndex = 21; @@ -360,7 +410,7 @@ // label6 // this.label6.AutoSize = true; - this.label6.Location = new Point(1237, 3); + this.label6.Location = new Point(1298, 3); this.label6.Name = "label6"; this.label6.Size = new Size(63, 20); this.label6.TabIndex = 20; @@ -378,7 +428,7 @@ this.Einstellungen.Location = new Point(4, 29); this.Einstellungen.Name = "Einstellungen"; this.Einstellungen.Padding = new Padding(3); - this.Einstellungen.Size = new Size(1401, 557); + this.Einstellungen.Size = new Size(1789, 557); this.Einstellungen.TabIndex = 1; this.Einstellungen.Text = "Einstellungen"; this.Einstellungen.UseVisualStyleBackColor = true; @@ -424,7 +474,7 @@ this.Druckereinstellungen.Location = new Point(4, 29); this.Druckereinstellungen.Name = "Druckereinstellungen"; this.Druckereinstellungen.Padding = new Padding(3); - this.Druckereinstellungen.Size = new Size(1401, 557); + this.Druckereinstellungen.Size = new Size(1789, 557); this.Druckereinstellungen.TabIndex = 2; this.Druckereinstellungen.Text = "Druckereinstellungen"; this.Druckereinstellungen.UseVisualStyleBackColor = true; @@ -449,57 +499,16 @@ this._buttonSaveSettings2.UseVisualStyleBackColor = true; this._buttonSaveSettings2.Click += this.ButtonSaveSettings_Click; // - // Column1 - // - this.Column1.AutoSizeMode = DataGridViewAutoSizeColumnMode.None; - this.Column1.HeaderText = "Drucken"; - this.Column1.MinimumWidth = 70; - this.Column1.Name = "Column1"; - this.Column1.Resizable = DataGridViewTriState.False; - this.Column1.Width = 70; - // - // Column4 - // - this.Column4.HeaderText = "Pos"; - this.Column4.MinimumWidth = 50; - this.Column4.Name = "Column4"; - this.Column4.ReadOnly = true; - this.Column4.Resizable = DataGridViewTriState.False; - this.Column4.Width = 50; - // - // Column2 - // - this.Column2.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; - this.Column2.HeaderText = "Teil"; - this.Column2.MinimumWidth = 300; - this.Column2.Name = "Column2"; - this.Column2.ReadOnly = true; - // - // Column3 - // - this.Column3.HeaderText = "SKU"; - this.Column3.MinimumWidth = 150; - this.Column3.Name = "Column3"; - this.Column3.ReadOnly = true; - this.Column3.Width = 150; - // - // Column6 - // - this.Column6.HeaderText = "Labels"; - this.Column6.MinimumWidth = 60; - this.Column6.Name = "Column6"; - this.Column6.SortMode = DataGridViewColumnSortMode.NotSortable; - this.Column6.Width = 60; - // // Form1 // this.AutoScaleDimensions = new SizeF(8F, 20F); this.AutoScaleMode = AutoScaleMode.Font; - this.ClientSize = new Size(1433, 666); + this.ClientSize = new Size(1821, 666); this.Controls.Add(this._mainTabBox); this.Controls.Add(this.statusStrip1); this.Controls.Add(this._buttonPrint); this.Controls.Add(this._buttonPrintPreview); + this.Icon = (Icon)resources.GetObject("$this.Icon"); this.Name = "Form1"; this.Text = "Inventree PO Label Generator"; ((System.ComponentModel.ISupportInitialize)this.pictureBox1).EndInit(); @@ -556,10 +565,11 @@ private Button buttonNone; private Button buttonAll; private Label labelCount; - private DataGridViewCheckBoxColumn Column1; private DataGridViewTextBoxColumn Column4; + private DataGridViewCheckBoxColumn Column1; + private DataGridViewTextBoxColumn Column6; private DataGridViewTextBoxColumn Column2; private DataGridViewTextBoxColumn Column3; - private DataGridViewTextBoxColumn Column6; + private DataGridViewTextBoxColumn Got; } } diff --git a/InventreeBarcodeGenerator/Form1.cs b/InventreeBarcodeGenerator/Form1.cs index 3597f66..2b621de 100644 --- a/InventreeBarcodeGenerator/Form1.cs +++ b/InventreeBarcodeGenerator/Form1.cs @@ -17,7 +17,6 @@ namespace BlubbFish.Applications.Barcodes.Inventree { private Helpers.WebRequest req; private readonly Queue printList = new(); - public Form1() { this.InitializeComponent(); @@ -258,11 +257,15 @@ namespace BlubbFish.Applications.Barcodes.Inventree { private void PreparePintList() { this.printList.Clear(); foreach(DataGridViewRow item in this.dataGridView1.Rows) { - if(item.Cells[0].Value is Boolean b) { - if(b && Int32.TryParse(item.Cells[4].Value.ToString(), out Int32 c) && c > 0) { - if(item.Cells[2].Value is LineItem l) { + if(item.Cells[1].Value is Boolean b) { + if(b && Int32.TryParse(item.Cells[2].Value.ToString(), out Int32 c) && c > 0) { + if(item.Cells[3].Value is LineItem l) { for(Int32 i = 0; i < c; i++) { - this.printList.Enqueue(l.EciaFormat); + Ecia t = l.EciaFormat; + if(Int32.TryParse(item.Cells[5].Value.ToString(), out Int32 q)) { + t.Quantity = q.ToString(); + } + this.printList.Enqueue(t); } } } @@ -353,17 +356,21 @@ namespace BlubbFish.Applications.Barcodes.Inventree { this.dataGridView1.Rows.Clear(); Int32 i = 1; foreach(JsonData item in j["results"]) { - DataGridViewRow r = new DataGridViewRow(); + DataGridViewRow r = new(); r.CreateCells(this.dataGridView1); - r.Cells[0].Value = true; - r.Cells[1].Value = i; - r.Cells[2].Value = new LineItem { + Int32 recieved = Convert.ToInt32(Double.Parse(item["received"].ToString())); + Int32 quantity = Convert.ToInt32(Double.Parse(item["quantity"].ToString())); + + r.Cells[0].Value = i; + r.Cells[1].Value = quantity > recieved; + r.Cells[2].Value = quantity >= recieved ? quantity - recieved : 0; + r.Cells[3].Value = new LineItem { Name = item["internal_part_name"].ToString(), SKU = item["sku"].ToString(), MPN = item["mpn"].ToString(), LineNr = i, - Quantity = Double.Parse(item["quantity"].ToString()), + Quantity = quantity, EciaFormat = new Ecia { CustomerPO = po.Reference, PackageId = po.SupplierReference, @@ -371,14 +378,16 @@ namespace BlubbFish.Applications.Barcodes.Inventree { SKU = item["sku"].ToString(), MPN = item["mpn"].ToString(), CustomerPOLine = i++.ToString(), - Quantity = Convert.ToInt32(Double.Parse(item["quantity"].ToString())).ToString(), + Quantity = quantity.ToString(), DateCode = DateTime.Now.ToString("yy01"), LotCode = "1", County = "DE" } }; - r.Cells[3].Value = item["sku"].ToString(); - r.Cells[4].Value = Double.Parse(item["quantity"].ToString()); + r.Cells[4].Value = item["sku"].ToString(); + r.Cells[5].Value = quantity >= recieved ? quantity - recieved : 0; + r.DefaultCellStyle.BackColor = quantity <= recieved ? Color.Green : recieved != 0? Color.Yellow: Color.White; + _ = this.dataGridView1.Rows.Add(r); } @@ -395,8 +404,8 @@ namespace BlubbFish.Applications.Barcodes.Inventree { private void CalcLabelCount() { Int32 i = 0; foreach(DataGridViewRow item in this.dataGridView1.Rows) { - if(item.Cells[0].Value is Boolean b) { - if(b && Int32.TryParse(item.Cells[4].Value.ToString(), out Int32 c)) { + if(item.Cells[1].Value is Boolean b) { + if(b && Int32.TryParse(item.Cells[2].Value.ToString(), out Int32 c)) { i += c; } } @@ -408,8 +417,11 @@ namespace BlubbFish.Applications.Barcodes.Inventree { if(sender is DataGridView g) { Int32 i = g.CurrentRow.Index; if(this.dataGridView1.Rows.Count >= i) { - if(this.dataGridView1.Rows[i].Cells[2].Value is LineItem l) { + if(this.dataGridView1.Rows[i].Cells[3].Value is LineItem l) { this.part = l.EciaFormat; + if(Int32.TryParse(this.dataGridView1.Rows[i].Cells[5].Value.ToString(), out Int32 c)) { + this.part.Quantity = c.ToString(); + } this.DrawPreview(); } } @@ -418,13 +430,13 @@ namespace BlubbFish.Applications.Barcodes.Inventree { private void ButtonAll_Click(Object sender, EventArgs e) { foreach(DataGridViewRow item in this.dataGridView1.Rows) { - item.Cells[0].Value = true; + item.Cells[1].Value = true; } } private void ButtonNone_Click(Object sender, EventArgs e) { foreach(DataGridViewRow item in this.dataGridView1.Rows) { - item.Cells[0].Value = false; + item.Cells[1].Value = false; } } } diff --git a/InventreeBarcodeGenerator/Form1.resx b/InventreeBarcodeGenerator/Form1.resx index 0c9b652..e5d20cb 100644 --- a/InventreeBarcodeGenerator/Form1.resx +++ b/InventreeBarcodeGenerator/Form1.resx @@ -150,10 +150,13 @@ 561, 17 + + True + True - + True @@ -162,7 +165,48 @@ True - + True + + + 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 + + \ No newline at end of file diff --git a/InventreeBarcodeGenerator/InventreeBarcodeGenerator.csproj b/InventreeBarcodeGenerator/InventreeBarcodeGenerator.csproj index 99d7f57..78fa0ab 100644 --- a/InventreeBarcodeGenerator/InventreeBarcodeGenerator.csproj +++ b/InventreeBarcodeGenerator/InventreeBarcodeGenerator.csproj @@ -9,7 +9,7 @@ - 1.1.0 + 1.2.0 $(AssemblyVersion) $(AssemblyVersion) BlubbFish @@ -24,7 +24,8 @@ https://git.blubbfish.net/vs_projects/InventreeBarcodeGenerator.git git - 1.1.0 - 2016-02-14 - Rewrote to DataGridView + 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 1.0.0 - 2025-11-23 - Init README.md