From 3e7ea250aa97759b79d244b46412bf04a8d5505a Mon Sep 17 00:00:00 2001 From: Andreas Luxbauer Date: Fri, 3 Nov 2023 11:19:07 +0100 Subject: [PATCH] Laufzettel --- Aviso/frmLaufzettel.Designer.vb | 27 ++++++++++--- Aviso/frmLaufzettel.vb | 16 ++++++++ Aviso/usrcntlAktDetails.vb | 67 +++++++++++++-------------------- 3 files changed, 64 insertions(+), 46 deletions(-) diff --git a/Aviso/frmLaufzettel.Designer.vb b/Aviso/frmLaufzettel.Designer.vb index 8a54c6e..8cff6ed 100644 --- a/Aviso/frmLaufzettel.Designer.vb +++ b/Aviso/frmLaufzettel.Designer.vb @@ -22,11 +22,12 @@ Partial Class frmLaufzettel 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. _ Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmLaufzettel)) Me.lbl = New System.Windows.Forms.Label() Me.pnl = New System.Windows.Forms.Panel() Me.btn = New System.Windows.Forms.Button() - Me.MyPanel1 = New VERAG_PROG_ALLGEMEIN.MyPanel() + Me.MyPanel1 = New VERAG_PROG_ALLGEMEIN.MyPanel(Me.components) Me.Button4 = New System.Windows.Forms.Button() Me.cboPrinter = New VERAG_PROG_ALLGEMEIN.MyComboBox() Me.cbxVPSplit = New System.Windows.Forms.CheckBox() @@ -40,17 +41,18 @@ Partial Class frmLaufzettel Me.Button1 = New System.Windows.Forms.Button() Me.btnLaufzettelDrucken = New System.Windows.Forms.Button() Me.cbxDokumenteDrucken = New System.Windows.Forms.CheckBox() - Me.dgvDigitalMailanfügen = New VERAG_PROG_ALLGEMEIN.MyDatagridview() + Me.dgvDigitalMailanfügen = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) Me.clmnLzMail_ID = New System.Windows.Forms.DataGridViewTextBoxColumn() Me.clmnLzMail_Name = New System.Windows.Forms.DataGridViewTextBoxColumn() Me.DocId = New System.Windows.Forms.DataGridViewTextBoxColumn() - Me.dgvLaufzettelDruck = New VERAG_PROG_ALLGEMEIN.MyDatagridview() + Me.dgvLaufzettelDruck = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) Me.clmnLzPrint_ID = New System.Windows.Forms.DataGridViewTextBoxColumn() Me.clmnLzPrint_Name = New System.Windows.Forms.DataGridViewTextBoxColumn() Me.PrintDocId = New System.Windows.Forms.DataGridViewTextBoxColumn() Me.printTyp = New System.Windows.Forms.DataGridViewTextBoxColumn() Me.cbxDigitalLZ = New System.Windows.Forms.CheckBox() Me.cbxSAAbfertigung = New System.Windows.Forms.CheckBox() + Me.cbxAktenzettelDruck = New System.Windows.Forms.CheckBox() Me.pnl.SuspendLayout() Me.MyPanel1.SuspendLayout() Me.pnlZumZoll.SuspendLayout() @@ -99,6 +101,7 @@ Partial Class frmLaufzettel 'MyPanel1 ' Me.MyPanel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle + Me.MyPanel1.Controls.Add(Me.cbxAktenzettelDruck) Me.MyPanel1.Controls.Add(Me.Button4) Me.MyPanel1.Controls.Add(Me.cboPrinter) Me.MyPanel1.Controls.Add(Me.cbxVPSplit) @@ -115,7 +118,7 @@ Partial Class frmLaufzettel Me.MyPanel1.Dock = System.Windows.Forms.DockStyle.Fill Me.MyPanel1.Location = New System.Drawing.Point(0, 45) Me.MyPanel1.Name = "MyPanel1" - Me.MyPanel1.Size = New System.Drawing.Size(564, 571) + Me.MyPanel1.Size = New System.Drawing.Size(564, 599) Me.MyPanel1.TabIndex = 9 ' 'Button4 @@ -160,7 +163,7 @@ Partial Class frmLaufzettel Me.pnlZumZoll.Controls.Add(Me.CheckBox3) Me.pnlZumZoll.Controls.Add(Me.CheckBox4) Me.pnlZumZoll.Dock = System.Windows.Forms.DockStyle.Bottom - Me.pnlZumZoll.Location = New System.Drawing.Point(0, 520) + Me.pnlZumZoll.Location = New System.Drawing.Point(0, 548) Me.pnlZumZoll.Name = "pnlZumZoll" Me.pnlZumZoll.Size = New System.Drawing.Size(562, 49) Me.pnlZumZoll.TabIndex = 12 @@ -385,12 +388,23 @@ Partial Class frmLaufzettel Me.cbxSAAbfertigung.UseVisualStyleBackColor = True Me.cbxSAAbfertigung.Visible = False ' + 'cbxAktenzettelDruck + ' + Me.cbxAktenzettelDruck.AutoSize = True + Me.cbxAktenzettelDruck.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!) + Me.cbxAktenzettelDruck.Location = New System.Drawing.Point(18, 518) + Me.cbxAktenzettelDruck.Name = "cbxAktenzettelDruck" + Me.cbxAktenzettelDruck.Size = New System.Drawing.Size(228, 24) + Me.cbxAktenzettelDruck.TabIndex = 25 + Me.cbxAktenzettelDruck.Text = "Alle Aktendeckel mitdrucken" + Me.cbxAktenzettelDruck.UseVisualStyleBackColor = True + ' 'frmLaufzettel ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.BackColor = System.Drawing.Color.White - Me.ClientSize = New System.Drawing.Size(564, 616) + Me.ClientSize = New System.Drawing.Size(564, 644) Me.Controls.Add(Me.MyPanel1) Me.Controls.Add(Me.pnl) Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None @@ -438,4 +452,5 @@ Partial Class frmLaufzettel Friend WithEvents cboPrinter As VERAG_PROG_ALLGEMEIN.MyComboBox Friend WithEvents Button4 As Button Friend WithEvents cbxSAAbfertigung As CheckBox + Friend WithEvents cbxAktenzettelDruck As CheckBox End Class diff --git a/Aviso/frmLaufzettel.vb b/Aviso/frmLaufzettel.vb index 4e1c4ac..304b700 100644 --- a/Aviso/frmLaufzettel.vb +++ b/Aviso/frmLaufzettel.vb @@ -157,12 +157,14 @@ Public Class frmLaufzettel cbxDigitalLZ.Enabled = True dgvDigitalMailanfügen.Enabled = True btnDIGITAL.Enabled = True + cbxAktenzettelDruck.Enabled = False cbxDigitalLZ.Checked = True CheckBox2.Checked = False cbxDokumenteDrucken.Checked = False pnlZumZoll.Visible = False Else btnLaufzettelDrucken.Enabled = True + cbxAktenzettelDruck.Enabled = True End If Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG @@ -213,6 +215,16 @@ Public Class frmLaufzettel End If doLZ(False) + + If cbxAktenzettelDruck.Checked Then + Dim Printername = "" + Dim oPS As New System.Drawing.Printing.PrinterSettings + Try + Printername = oPS.PrinterName + Catch ex As System.Exception + End Try + usrcntlAktDetails.tread_printAlleAktendeckel(AvisoID, Printername) + End If Me.Close() End Sub @@ -594,4 +606,8 @@ Public Class frmLaufzettel End Try Me.Cursor = Cursors.Default End Sub + + Private Sub CheckBox1_CheckedChanged(sender As Object, e As EventArgs) Handles cbxAktenzettelDruck.CheckedChanged + + End Sub End Class \ No newline at end of file diff --git a/Aviso/usrcntlAktDetails.vb b/Aviso/usrcntlAktDetails.vb index 89f804d..4f4410f 100644 --- a/Aviso/usrcntlAktDetails.vb +++ b/Aviso/usrcntlAktDetails.vb @@ -3262,49 +3262,36 @@ Public Class usrcntlAktDetails End Try If vbYes = MsgBox("Möchten Sie alle Aktendeckel drucken?", vbYesNoCancel) Then - - Console.WriteLine("bla1") - Debug.WriteLine("bla2") - Dim t As New Threading.Thread(Sub(AvisoIDTT) - Dim AVISO_Tmp As VERAG_PROG_ALLGEMEIN.cAviso = AvisoDAL.LesenAviso(AvisoIDTT, "") - Dim SENDUNG_LIST As New List(Of VERAG_PROG_ALLGEMEIN.cSendungen) - VERAG_PROG_ALLGEMEIN.cSendungen.LOAD_LIST(SENDUNG_LIST, -1, AvisoIDTT) 'LÄDT alle SENDUNGSDATEN - Console.WriteLine("AvisoId: " & AvisoIDTT) - Debug.WriteLine("AvisoId: " & AvisoIDTT) - Console.WriteLine("LKW_Nr: " & AVISO_Tmp.LKW_Nr) - Debug.WriteLine("LKW_Nr: " & AVISO_Tmp.LKW_Nr) - - For Each s In SENDUNG_LIST - - If checkcbxAlleFirmen(s.FilialenNr) Then - If Not s.tblSnd_Fremdspedition Then - If CInt(s.AbfertigungsNr) < 100000 Then - If MsgBox("Es wurden nicht alle Abfertigungsnummern vergeben!" & vbNewLine & "Druck trotzdem fortfahren?", MsgBoxStyle.YesNoCancel) <> vbYes Then Exit Sub - End If - End If - End If - Next - - 'Dim trd = New Threading.Thread(Sub() - For Each s In SENDUNG_LIST - Console.WriteLine("AvisoId: " & AvisoIDTT) - Debug.WriteLine("AvisoId: " & AvisoIDTT) - Console.WriteLine("LKW_Nr: " & AVISO_Tmp.LKW_Nr) - Debug.WriteLine("LKW_Nr: " & AVISO_Tmp.LKW_Nr) - - If checkcbxAlleFirmen(s.FilialenNr) Then - If Not s.tblSnd_Fremdspedition AndAlso CInt(s.AbfertigungsNr) > 100000 Then SendungOptions.PrintSendung("PRINT", s, AVISO_Tmp, Printername,, SENDUNG_LIST.Count) - End If - Next - End Sub) - - t.Start(AvisoID) - t.IsBackground = True - Panel4.Visible = False + tread_printAlleAktendeckel(AvisoID, Printername) End If End Sub - Sub tread_printAlleAktendeckel() + Shared Sub tread_printAlleAktendeckel(AvisoID, Printername) + Dim AvisoDAL As New VERAG_PROG_ALLGEMEIN.cAvisoDAL + Dim t As New Threading.Thread(Sub(params) + Dim AVISO_Tmp As VERAG_PROG_ALLGEMEIN.cAviso = AvisoDAL.LesenAviso(AvisoID, "") + Dim SENDUNG_LIST As New List(Of VERAG_PROG_ALLGEMEIN.cSendungen) + VERAG_PROG_ALLGEMEIN.cSendungen.LOAD_LIST(SENDUNG_LIST, -1, CInt(params(0))) 'LÄDT alle SENDUNGSDATEN + For Each s In SENDUNG_LIST + + If Not s.tblSnd_Fremdspedition Then + If CInt(s.AbfertigungsNr) < 100000 Then + If MsgBox("Es wurden nicht alle Abfertigungsnummern vergeben!" & vbNewLine & "Druck trotzdem fortfahren?", MsgBoxStyle.YesNoCancel) <> vbYes Then Exit Sub + End If + End If + Next + + 'Dim trd = New Threading.Thread(Sub() + For Each s In SENDUNG_LIST + If Not s.tblSnd_Fremdspedition AndAlso CInt(s.AbfertigungsNr) > 100000 Then SendungOptions.PrintSendung("PRINT", s, AVISO_Tmp, params(1),, SENDUNG_LIST.Count) + Next + End Sub) + + t.Start({AvisoID, Printername}) + t.IsBackground = True + + End Sub + Sub tread_printAlleAktendeckel_OLD() ' Me.Cursor = Cursors.WaitCursor Dim SENDUNG_LIST As New List(Of VERAG_PROG_ALLGEMEIN.cSendungen)