diff --git a/SDL/Fakturierung/frmSendEmail.Designer.vb b/SDL/Fakturierung/frmSendEmail.Designer.vb index f40249fd..5b22f15c 100644 --- a/SDL/Fakturierung/frmSendEmail.Designer.vb +++ b/SDL/Fakturierung/frmSendEmail.Designer.vb @@ -51,6 +51,7 @@ Partial Class frmSendEmail Me.clmnDsId = New System.Windows.Forms.DataGridViewTextBoxColumn() Me.clmnAnhId = New System.Windows.Forms.DataGridViewTextBoxColumn() Me.Label7 = New System.Windows.Forms.Label() + Me.chkMergePDF = New System.Windows.Forms.CheckBox() CType(Me.dgvEmailBCC, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.dgvEmailCC, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.dgvEmail, System.ComponentModel.ISupportInitialize).BeginInit() @@ -320,12 +321,23 @@ Partial Class frmSendEmail Me.Label7.TabIndex = 92 Me.Label7.Text = "Anhänge:" ' + 'chkMergePDF + ' + Me.chkMergePDF.AutoSize = True + Me.chkMergePDF.Location = New System.Drawing.Point(70, 510) + Me.chkMergePDF.Name = "chkMergePDF" + Me.chkMergePDF.Size = New System.Drawing.Size(135, 17) + Me.chkMergePDF.TabIndex = 93 + Me.chkMergePDF.Text = "PDFs zusammenführen" + Me.chkMergePDF.UseVisualStyleBackColor = True + ' 'frmSendEmail ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.BackColor = System.Drawing.Color.WhiteSmoke Me.ClientSize = New System.Drawing.Size(750, 575) + Me.Controls.Add(Me.chkMergePDF) Me.Controls.Add(Me.Label7) Me.Controls.Add(Me.dgvAnhaenge) Me.Controls.Add(Me.lblKunde) @@ -375,4 +387,5 @@ Partial Class frmSendEmail Friend WithEvents clmnBezeichnung As DataGridViewTextBoxColumn Friend WithEvents clmnDsId As DataGridViewTextBoxColumn Friend WithEvents clmnAnhId As DataGridViewTextBoxColumn + Friend WithEvents chkMergePDF As CheckBox End Class diff --git a/SDL/Fakturierung/frmSendEmail.vb b/SDL/Fakturierung/frmSendEmail.vb index 10d22ae6..1a6a183e 100644 --- a/SDL/Fakturierung/frmSendEmail.vb +++ b/SDL/Fakturierung/frmSendEmail.vb @@ -272,7 +272,11 @@ Public Class frmSendEmail If SPEDBUCH.DokumentId_Steuerbeleg IsNot Nothing Then ATTACHMENTS.Add(New cFakt_SendMailATTach(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(SPEDBUCH.DokumentId_Steuerbeleg), "Steuerbescheid.pdf")) End If - addAttachments(Mail, lastAktuelle_RgNr, False) + + Dim mergePdfEnabled As Boolean = chkMergePDF.Checked + + + addAttachments(Mail, lastAktuelle_RgNr, mergePdfEnabled) Mail.Display() End If @@ -338,7 +342,9 @@ Public Class frmSendEmail If SPEDBUCH.DokumentId_Steuerbeleg IsNot Nothing Then ATTACHMENTS.Add(New cFakt_SendMailATTach(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(SPEDBUCH.DokumentId_Steuerbeleg), "Steuerbescheid.pdf")) End If - addAttachments(Mail, RECHNUNG.RechnungsNr, False) + Dim mergePdfEnabled As Boolean = chkMergePDF.Checked + + addAttachments(Mail, RECHNUNG.RechnungsNr, mergePdfEnabled) Mail.Display() Catch ex As System.Exception @@ -353,6 +359,18 @@ Public Class frmSendEmail Private Sub addAttachments(ByRef Mail As Microsoft.Office.Interop.Outlook.MailItem, ByVal RgNr As Integer, ByVal MergePDF As Boolean) If ATTACHMENTS.Count = 0 Then Exit Sub + If MergePDF And ATTACHMENTS.Count > 1 Then + Dim extension = ".pdf" + Dim zielPfadZusammenfassung = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(IIf(SammelrechungArt <> 6, "Rechnungs_Anhänge_", "Rechnung_") & RgNr & extension, extension,, False, "Zusammenfassung") + + Dim myList As New List(Of String) + For Each a In ATTACHMENTS : myList.Add(a.Pfad) : Next + + If FormularManagerNEU.MergePdfFiles(myList, zielPfadZusammenfassung) Then + ATTACHMENTS.Clear() : ATTACHMENTS.Add(New cFakt_SendMailATTach(zielPfadZusammenfassung, "")) ' überscheiben + End If + End If + Try For Each a In ATTACHMENTS If System.IO.File.Exists(a.Pfad) Then