Imports System.Drawing.Printing Imports Microsoft.Office.Interop Public Class frmLaufzettel Dim AvisoID = -1 Dim DIGITAL As Boolean = False Dim AVISO As VERAG_PROG_ALLGEMEIN.cAviso = Nothing Dim SENDUNG_LIST As List(Of VERAG_PROG_ALLGEMEIN.cSendungen) = Nothing Dim DIGITAL_T1 As Boolean = False Dim DIGITAL_Rg As Boolean = False Dim jeVP As Boolean = False Sub New() ' Dieser Aufruf ist für den Designer erforderlich. InitializeComponent() ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. End Sub Sub New(AvisoID As Integer, SENDUNG_LIST As List(Of VERAG_PROG_ALLGEMEIN.cSendungen), DIGITAL As Boolean, DIGITAL_T1 As Boolean, DIGITAL_rg As Boolean, jeVP As Boolean) ' Dieser Aufruf ist für den Designer erforderlich. InitializeComponent() ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. Me.AvisoID = AvisoID AVISO = VERAG_PROG_ALLGEMEIN.cAviso.getAvisoById(AvisoID) Me.SENDUNG_LIST = SENDUNG_LIST Me.DIGITAL = DIGITAL Me.DIGITAL_T1 = DIGITAL_T1genl Me.DIGITAL_Rg = DIGITAL_rg Me.jeVP = jeVP End Sub Sub New(AVISO As VERAG_PROG_ALLGEMEIN.cAviso, SENDUNG_LIST As List(Of VERAG_PROG_ALLGEMEIN.cSendungen), DIGITAL As Boolean, DIGITAL_T1 As Boolean, DIGITAL_rg As Boolean, jeVP As Boolean) ' Dieser Aufruf ist für den Designer erforderlich. InitializeComponent() ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. Me.AvisoID = AVISO.AvisoID Me.AVISO = AVISO Me.SENDUNG_LIST = SENDUNG_LIST Me.DIGITAL = DIGITAL Me.DIGITAL_T1 = DIGITAL_T1 Me.DIGITAL_Rg = DIGITAL_rg Me.jeVP = jeVP End Sub 'Public Shared Sub initDrucker(cboPrinter As ComboBox, Optional srch As String = "") ' ' alle installierten Drucker ermitteln und ' ' in in ein ArrayList-Objekt speichern ' Dim sPrinters As New ArrayList ' For Each sPrinter As String In PrinterSettings.InstalledPrinters ' sPrinters.Add(sPrinter) ' Next ' ' Array sortieren ' sPrinters.Sort() ' ' jetzt alle Drucker in sortierter Reihenfolge in einer ' ' ComboBox zur Auswahl anbieten ' Dim oPS As New System.Drawing.Printing.PrinterSettings ' For i As Integer = 0 To sPrinters.Count - 1 ' cboPrinter.Items.Add(sPrinters(i)) ' Next ' If sPrinters.Count > 0 Then ' cboPrinter.SelectedIndex = 0 ' If srch <> "" Then ' For Each i In cboPrinter.Items ' If i.ToString.ToUpper.Contains(srch.ToUpper) Then ' cboPrinter.SelectedItem = i ' Exit Sub ' End If ' Next ' Else ' For Each i In cboPrinter.Items ' If i.ToString = oPS.PrinterName Then ' cboPrinter.SelectedItem = i ' Exit Sub ' End If ' Next ' End If ' End If 'End Sub Sub initLZ() cbxVPSplit.Checked = jeVP dgvDigitalMailanfügen.Rows.Clear() dgvLaufzettelDruck.Rows.Clear() Dim ANH_LIST As New List(Of VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge) VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge.LOAD_LIST_ByAviso(ANH_LIST, AvisoID) 'LÄDT alle Aviso-Anhänge For Each ll In ANH_LIST If ll.anh_LaufzettelDruck Then dgvDigitalMailanfügen.Rows.Add(ll.anh_id, ll.anh_Name, ll.anh_docId, ll.anh_Typ) dgvLaufzettelDruck.Rows.Add(ll.anh_id, ll.anh_Name, ll.anh_docId, ll.anh_Typ) 'Select Case ll.anh_Typ ' Case "PDF" : VERAG_PROG_ALLGEMEIN.cFormularManager.PrintViaSpirePDF({VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ll.anh_docId)}) ' ' Case "BILD" : VERAG_PROG_ALLGEMEIN.cFormularManager.Print_PICTURE({VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ll.anh_docId)}) ' Case Else : Process.Start(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ll.anh_docId)) 'End Select End If Next 'If loadAttachRg Then If DIGITAL Then If DIGITAL_T1 Then 'Falls CMR, Vorpapier in den Unterlagen vorhanden, werden diese beigefügt For Each l In ANH_LIST Select Case l.anh_Art.ToString.ToUpper Case "VORPAPIER" ', "CMR" dgvDigitalMailanfügen.Rows.Add(l.anh_id, l.anh_Name, l.anh_docId) End Select Next End If If DIGITAL_Rg Then For Each s In SENDUNG_LIST Select Case s.tblSnd_Abfertigungsart_ID 'Falls RECHNUNGen in den Unterlagen vorhanden, werden diese beigefügt Case "5", "45", "28", "26", "38" 'T1, Ü-T1, DE-FISK Dim ANH_LIST_SND As New List(Of VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge) VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge.LOAD_LIST_BySendung(ANH_LIST_SND, s.tblSnd_SendungID) 'LÄDT alle Aviso-Anhänge For Each l In ANH_LIST_SND Select Case l.anh_Art.ToString.ToUpper Case "RECHNUNG", "HANDELSRECHNUNG" dgvDigitalMailanfügen.Rows.Add(l.anh_id, l.anh_Name, l.anh_docId) 'Mail.Attachments.Add(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(l.anh_docId), Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue) End Select Next End Select Next End If 'Markierte Anhänge For Each l In ANH_LIST 'Markierte: If l.anh_GestellungslisteAnfuegen Then dgvDigitalMailanfügen.Rows.Add(l.anh_id, l.anh_Name, l.anh_docId) ' Mail.Attachments.Add(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(l.anh_docId), Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue) End If Next End If End Sub Private Sub frmLaufzettel_Load(sender As Object, e As EventArgs) Handles Me.Load SDL.cProgramFunctions.initDrucker(cboPrinter) If DIGITAL Then 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 Case "WAI", "DTB" CheckBox2.Checked = True CheckBox3.Visible = False CheckBox4.Checked = True End Select If AVISO.Grenzstelle = "SUB" Then cbxSAAbfertigung.Visible = True If Now.DayOfWeek = DayOfWeek.Saturday Then cbxSAAbfertigung.Checked = True End If End If 'pnlZumZoll If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA <> "FRONTOFFICE" And VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG <> "WAI" And VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG <> "DTB" Then CheckBox2.Checked = False ' Wenn nicht FO, dann normal nicht gewählt... If VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG <> "SUB" And VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG <> "WAI" And VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG <> "DTB" Then '... und nur in SUBEN ersichtlich pnlZumZoll.Visible = False End If End If If SENDUNG_LIST Is Nothing Then SENDUNG_LIST = New List(Of VERAG_PROG_ALLGEMEIN.cSendungen) VERAG_PROG_ALLGEMEIN.cSendungen.LOAD_LIST(SENDUNG_LIST, -1, AvisoID) 'LÄDT alle SENDUNGSDATEN End If initLZ() resetDGV(dgvDigitalMailanfügen) resetDGV(dgvLaufzettelDruck) End Sub Private Sub btn_Click(sender As Object, e As EventArgs) Handles btn.Click Me.Close() End Sub Private Sub btnLaufzettelDrucken_Click(sender As Object, e As EventArgs) Handles btnLaufzettelDrucken.Click If CheckBox2.Checked Then If VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG <> "WAI" Then If Not CheckBox3.Checked And Not CheckBox4.Checked Then MsgBox("Bitte 'AT ZOLL' oder 'DE ZOLL' auswählen!") Exit Sub End If End If 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 Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click AVISO.LOAD_Vorpapiere() Dim VP_Enum = VERAG_PROG_ALLGEMEIN.cSendungen.VP_Enum(SENDUNG_LIST) 'Filtert nach eindeutigen Vorpapieren Dim paths As New List(Of String) If Not genLZ(paths, False, VP_Enum) Then Exit Sub End If If paths.Count = 1 Then '1 Gestellungsliste Process.Start(paths(0)) ElseIf paths.Count > 0 Then 'Mehrere Gestellungslisten zusammenführen Dim outputFile As String = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("Gestellungsliste_Merge.pdf", ".pdf", True,, "Merge") ' "result.pdf" VERAG_PROG_ALLGEMEIN.cFormularManager.mergePDFs(paths, outputFile) Process.Start(outputFile) End If End Sub Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click printLZAnlagen() End Sub Sub printLZAnlagen() ' If cbxDigitalLZ.Checked Then resetDGV(dgvLaufzettelDruck) For Each r As DataGridViewRow In dgvLaufzettelDruck.Rows Try Dim typ = r.Cells("printTyp").Value Dim path = VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(r.Cells("printDocId").Value) Select Case typ Case "PDF" : VERAG_PROG_ALLGEMEIN.cFormularManager.PrintViaSpirePDF({path}, cboPrinter.SelectedItem.ToString) ' Case "BILD" : VERAG_PROG_ALLGEMEIN.cFormularManager.Print_PICTURE({VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ll.anh_docId)}) Case Else : Process.Start(path) End Select r.DefaultCellStyle.BackColor = Color.LimeGreen dgvLaufzettelDruck.Refresh() Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,, ) End Try Next 'End If End Sub Sub printzZAnlagen() ' Fahrer zum Zoll! '------------------------------------------------ If VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG = "WAI" Then Try Dim path = SDL.FormularManagerNEU.zumZOLL_AVISO_WAI(AVISO) If path <> "" Then VERAG_PROG_ALLGEMEIN.cFormularManager.PrintViaSpirePDF({path}, cboPrinter.SelectedItem.ToString) '(New System.Drawing.Printing.PrinterSettings).PrinterName) ' If path <> "" Then VERAG_PROG_ALLGEMEIN.cFormularManager.PrintViaGS(path, cboPrinter.SelectedItem.ToString) '(New System.Drawing.Printing.PrinterSettings).PrinterName) Catch ex As Exception : MsgBox(ex.Message & ex.StackTrace) : End Try ElseIf VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG = "DTB" Then Try Dim path = SDL.FormularManagerNEU.zumZOLL_AVISO_DTB(AVISO) If path <> "" Then VERAG_PROG_ALLGEMEIN.cFormularManager.PrintViaSpirePDF({path}, cboPrinter.SelectedItem.ToString) '(New System.Drawing.Printing.PrinterSettings).PrinterName) ' If path <> "" Then VERAG_PROG_ALLGEMEIN.cFormularManager.PrintViaGS(path, cboPrinter.SelectedItem.ToString) '(New System.Drawing.Printing.PrinterSettings).PrinterName) Catch ex As Exception : MsgBox(ex.Message & ex.StackTrace) : End Try Else If Not CheckBox3.Checked And Not CheckBox4.Checked Then MsgBox("Bitte 'AT ZOLL' oder 'DE ZOLL' auswählen!") Exit Sub End If Try 'If CheckBox3.Checked Then path = SDL.FormularManagerNEU.zumZOLL_AVISO(AVISO, If(CheckBox3.Checked, "AT", If(CheckBox4.Checked, "DE", ""))) Dim path = "" If CheckBox3.Checked Then path = SDL.FormularManagerNEU.zumZOLL_AVISO_AT(AVISO) If CheckBox4.Checked Then path = SDL.FormularManagerNEU.zumZOLL_AVISO_DE(AVISO) If path <> "" Then VERAG_PROG_ALLGEMEIN.cFormularManager.PrintViaSpirePDF({path}, cboPrinter.SelectedItem.ToString) '(New System.Drawing.Printing.PrinterSettings).PrinterName) 'If path <> "" Then VERAG_PROG_ALLGEMEIN.cFormularManager.PrintViaGS(path, cboPrinter.SelectedItem.ToString) '(New System.Drawing.Printing.PrinterSettings).PrinterName) Catch ex As Exception : MsgBox(ex.Message & ex.StackTrace) : End Try End If '------------------------------------------------ End Sub Sub resetDGV(dgv As DataGridView) dgv.ClearSelection() For Each r As DataGridViewRow In dgv.Rows r.DefaultCellStyle.BackColor = Color.White Next End Sub Sub doLZ(digitalDruck) Me.Cursor = Cursors.WaitCursor resetDGV(dgvDigitalMailanfügen) resetDGV(dgvLaufzettelDruck) Me.Refresh() If Not digitalDruck Then If VERAG_PROG_ALLGEMEIN.cAllgemein.PARAMS.GET_PARAMETER_VALUE_BOOL("PRINT_zumZOLL") Then If CheckBox2.Checked Then printzZAnlagen() End If End If End If ' Dim loadAttachRg = True ' (sender Is Button15) 'Dim ANH_LIST As New List(Of VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge) 'VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge.LOAD_LIST_ByAviso(ANH_LIST, AvisoID) 'LÄDT alle Aviso-Anhänge 'For Each l In ANH_LIST ' If l.anh_LaufzettelDruck Then ' If vbYes = MsgBox("Es wurden Anhänge zum Drucken markiert! Sollen diese gedruckt werden?", vbYesNoCancel) Then ' For Each ll In ANH_LIST ' If ll.anh_LaufzettelDruck Then ' Select Case ll.anh_Typ ' Case "PDF" : VERAG_PROG_ALLGEMEIN.cFormularManager.PrintViaSpirePDF({VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ll.anh_docId)}) ' ' Case "BILD" : VERAG_PROG_ALLGEMEIN.cFormularManager.Print_PICTURE({VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ll.anh_docId)}) ' Case Else : Process.Start(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ll.anh_docId)) ' End Select ' End If ' Next ' End If ' Exit For ' End If 'Next 'DIGITALE ABFERTIGUNG: If (digitalDruck) Or cbxVPSplit.Checked Then ' digital oder splittung --> per Vorpapier Try Dim SENDUNG_LIST As New List(Of VERAG_PROG_ALLGEMEIN.cSendungen) VERAG_PROG_ALLGEMEIN.cSendungen.LOAD_LIST(SENDUNG_LIST, -1, AvisoID) 'LÄDT alle SENDUNGSDATEN AVISO.LOAD_Vorpapiere() Dim VP_Enum = VERAG_PROG_ALLGEMEIN.cSendungen.VP_Enum(SENDUNG_LIST) 'Filtert nach eindeutigen Vorpapieren Dim paths As New List(Of String) If Not genLZ(paths, digitalDruck, VP_Enum) Then Me.Cursor = Cursors.Default Exit Sub End If 'AVISO.LOAD_Vorpapiere() 'Dim VP_Enum = VERAG_PROG_ALLGEMEIN.cSendungen.VP_Enum(SENDUNG_LIST) 'Filtert nach eindeutigen Vorpapieren 'Dim paths As New List(Of String) 'If pruef Then paths.Add(SDL.FormularManagerNEU.LaufzettelZollDE_VP(AvisoID, False,, "XXXX")) 'For Each VP In VP_Enum ' paths.Add(SDL.FormularManagerNEU.LaufzettelZollDE_VP(AvisoID, False,, VP)) 'Next If digitalDruck Then 'NUR BEI DIGITALANMELDUNG! Dim outl As New Outlook.Application Dim Mail As Microsoft.Office.Interop.Outlook.MailItem Mail = outl.CreateItem(0) Dim tX As VERAG_PROG_ALLGEMEIN.cTextkonserve = Nothing Select Case AVISO.Grenzstelle Case "SUB" If cbxSAAbfertigung.Checked Then Mail.To = "samstag.ZA-Suben@zoll.bund.de" Else Mail.To = "abfertigung.za-suben@zoll.bund.de" End If tX = New VERAG_PROG_ALLGEMEIN.cTextkonserve("LAUFZETTEL_DIGITAL", "LAUFZETTEL_DE_DIGITAL_SUB", "DE", VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA) Case "WAI" Mail.To = "" tX = New VERAG_PROG_ALLGEMEIN.cTextkonserve("LAUFZETTEL_DIGITAL", "LAUFZETTEL_DE_DIGITAL_WAI", "DE", VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA) Case "SBG" Mail.To = "" tX = New VERAG_PROG_ALLGEMEIN.cTextkonserve("LAUFZETTEL_DIGITAL", "LAUFZETTEL_DE_DIGITAL_SBG", "DE", VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA) Case Else Mail.To = "" tX = New VERAG_PROG_ALLGEMEIN.cTextkonserve("LAUFZETTEL_DIGITAL", "LAUFZETTEL_DE_DIGITAL_SUB", "DE", VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA) End Select Dim MAIL_SUBJ = tX.txt_betreff.Replace("%LKWKennzeichen%", AVISO.LKW_Nr) Dim MAIL_BODY = tX.txt_text.Replace("%LKWKennzeichen%", AVISO.LKW_Nr) addVPList(MAIL_BODY, VP_Enum) Mail.HTMLBody = "
" & MAIL_BODY & SDL.cFakturierung.getSignature("DE", tX.txt_firmaSig, True, True) & "
" Mail.Subject = MAIL_SUBJ If VP_Enum.Count > 1 Then Mail.Subject &= ", " & VP_Enum.Count & "x Vorpapier" ElseIf VP_Enum.Count = 1 Then Mail.Subject &= ", " & VP_Enum(0) End If For Each p In paths Mail.Attachments.Add(p, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue, , "Gestellungsliste.pdf") Next If cbxDigitalLZ.Checked Then For Each r As DataGridViewRow In dgvDigitalMailanfügen.Rows Try Dim path = VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(r.Cells("DocId").Value) Mail.Attachments.Add(path, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue) r.DefaultCellStyle.BackColor = Color.LimeGreen dgvDigitalMailanfügen.Refresh() Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,, ) End Try Next End If 'If loadAttachRg Then ' If cbxLZT1.Visible AndAlso cbxLZT1.Checked Then ' 'Falls CMR, Vorpapier in den Unterlagen vorhanden, werden diese beigefügt ' For Each l In ANH_LIST ' Select Case l.anh_Art.ToString.ToUpper ' Case "VORPAPIER" ', "CMR" ' Mail.Attachments.Add(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(l.anh_docId), Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue) ' End Select ' Next ' End If ' If cbxLZRg.Visible AndAlso cbxLZRg.Checked Then ' For Each s In SENDUNG_LIST ' Select Case s.tblSnd_Abfertigungsart_ID ' 'Falls RECHNUNGen in den Unterlagen vorhanden, werden diese beigefügt ' Case "5", "45", "28", "26", "38" 'T1, Ü-T1, DE-FISK ' Dim ANH_LIST_SND As New List(Of VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge) ' VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge.LOAD_LIST_BySendung(ANH_LIST_SND, s.tblSnd_SendungID) 'LÄDT alle Aviso-Anhänge ' For Each l In ANH_LIST_SND ' Select Case l.anh_Art.ToString.ToUpper ' Case "RECHNUNG", "HANDELSRECHNUNG" ' Mail.Attachments.Add(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(l.anh_docId), Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue) ' End Select ' Next ' End Select ' Next ' End If 'End If 'Markierte Anhänge 'For Each l In ANH_LIST ' 'Markierte: ' If l.anh_GestellungslisteAnfuegen Then ' Mail.Attachments.Add(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(l.anh_docId), Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue) ' End If 'Next Mail.Display() Else 'Keine Digitalabfertigung, DRUCK! Try For Each p In paths VERAG_PROG_ALLGEMEIN.cFormularManager.PrintViaSpirePDF({p}, cboPrinter.SelectedItem.ToString) Next 'If paths.Count = 1 Then '1 Gestellungsliste ' Process.Start(paths(0)) 'ElseIf paths.Count > 0 Then 'Mehrere Gestellungslisten zusammenführen ' Dim outputFile As String = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("Gestellungsliste_Merge.pdf", ".pdf", True,, "Merge") ' "result.pdf" ' VERAG_PROG_ALLGEMEIN.cFormularManager.mergePDFs(paths, outputFile) ' Process.Start(outputFile) 'End If Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,, ) End Try End If Catch ex As Exception MsgBox("Fehler beim erstellen der E-Mail:" & vbNewLine & ex.Message & ex.StackTrace) End Try Else Dim path = SDL.FormularManagerNEU.LaufzettelZollDE(AvisoID, False,, digitalDruck) If path <> "" Then 'Process.Start(path) VERAG_PROG_ALLGEMEIN.cFormularManager.PrintViaSpirePDF({path}, cboPrinter.SelectedItem.ToString) End If End If If cbxDokumenteDrucken.Checked Then printLZAnlagen() End If Me.Cursor = Cursors.Default End Sub Function genLZ(ByRef paths As List(Of String), digitalDruck As Boolean, VP_Enum As List(Of String)) As Boolean Dim pruef = False For Each s In SENDUNG_LIST Select Case s.tblSnd_Abfertigungsart_ID.ToString Case "38", "26", "44" 'AT - Keine Prüfung Case Else If If(s.tblSnd_Vorpapier, "") = "" And If(s.tblSnd_Vorpapier2, "") = "" And If(s.tblSnd_Vorpapier3, "") = "" Then pruef = True End If End Select Next If pruef Then ' VP fehlen If Not digitalDruck Then 'Wenn LZ Druck If vbYes <> MsgBox("Nicht alle Sendungen haben ein Vorpapier eingetragen!" & vbNewLine & "Soll der Laufzettel trotzdem erstellt werden?", vbYesNoCancel) Then Return False End If Else ' Digitalabfertigungn MsgBox("Nicht alle Sendungen haben ein Vorpapier eingetragen!" & vbNewLine & "Laufzettelerstellung wird abgebrochen.") Return False End If End If paths = New List(Of String) If pruef Then paths.Add(SDL.FormularManagerNEU.LaufzettelZollDE_VP(AvisoID, False,, "XXXX", digitalDruck)) For Each VP In VP_Enum paths.Add(SDL.FormularManagerNEU.LaufzettelZollDE_VP(AvisoID, False,, VP, digitalDruck)) Next Return True End Function Sub addVPList(ByRef MAIL_BODY As String, VP_Enum As List(Of String)) Dim Platzhalter = "

" Platzhalter &= "" For Each VP In VP_Enum Platzhalter &= "" Next Platzhalter &= "
Vorpapier:
" & VP & "
" MAIL_BODY = MAIL_BODY.Replace("%Platzhalter%", Platzhalter) End Sub Private Sub btnDIGITAL_Click(sender As Object, e As EventArgs) Handles btnDIGITAL.Click doLZ(True) End Sub Private Sub CheckBox3_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox3.CheckedChanged If sender.checked Then CheckBox4.Checked = False End If End Sub Private Sub CheckBox4_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox4.CheckedChanged If sender.checked Then CheckBox3.Checked = False End If End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click printzZAnlagen() End Sub Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click Me.Cursor = Cursors.WaitCursor Try AVISO.LOAD_Vorpapiere() Dim VP_Enum = VERAG_PROG_ALLGEMEIN.cSendungen.VP_Enum(SENDUNG_LIST) 'Filtert nach eindeutigen Vorpapieren Dim paths As New List(Of String) If Not genLZ(paths, False, VP_Enum) Then Exit Sub End If Clipboard.Clear() Dim d As New DataObject(DataFormats.FileDrop, paths.ToArray) Clipboard.SetDataObject(d, True) Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,, ) 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