div. Änderungen
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
Imports com.sun.xml.internal.rngom
|
||||
Imports System.IO
|
||||
Imports com.sun.xml.internal.rngom
|
||||
Imports DocumentFormat.OpenXml.Vml
|
||||
Imports javax.print.attribute.standard
|
||||
Imports Org.BouncyCastle.Math
|
||||
Imports Microsoft.Office.Interop
|
||||
Imports org.BouncyCastle.Math
|
||||
Imports VERAG_PROG_ALLGEMEIN
|
||||
|
||||
Public Class frmProvisionisverguetung
|
||||
@@ -57,6 +60,7 @@ Public Class frmProvisionisverguetung
|
||||
", "FMZOLL")
|
||||
.LOAD()
|
||||
.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells
|
||||
.Columns("GS_An").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
||||
|
||||
.Columns("Firma_ID").Visible = False
|
||||
.Columns("RechnungsNrListe").Visible = False
|
||||
@@ -72,17 +76,18 @@ Public Class frmProvisionisverguetung
|
||||
initDGV()
|
||||
End Sub
|
||||
|
||||
Private Sub Button9_Click(sender As Object, e As EventArgs) Handles Button9.Click
|
||||
Private Sub Button9_Click(sender As Object, e As EventArgs) Handles btnPDF.Click, btnMail.Click
|
||||
Try
|
||||
Me.Cursor = Cursors.WaitCursor
|
||||
If MyDatagridview1.SelectedRows.Count = 0 Then
|
||||
MsgBox("Bitte zuerst einen oder mehrere Einträge auswählen!")
|
||||
Exit Sub
|
||||
End If
|
||||
Dim gsAnKdNr As Integer = -1
|
||||
Dim PDF_LIST As New List(Of String)
|
||||
For Each row In MyDatagridview1.SelectedRows
|
||||
Dim adrNr = row.Cells("AdressenNr").Value
|
||||
Dim gsAnKdNr = row.Cells("GS_AnKdNr").Value
|
||||
gsAnKdNr = row.Cells("GS_AnKdNr").Value
|
||||
Dim provProz = row.Cells("ProvProz").Value
|
||||
Dim Firma_ID = row.Cells("Firma_ID").Value
|
||||
|
||||
@@ -90,24 +95,35 @@ Public Class frmProvisionisverguetung
|
||||
If row.Cells("RechnungsNrListe").Value = "" Then Exit Sub
|
||||
|
||||
Dim RechnungsNrListe = row.Cells("RechnungsNrListe").Value.ToString
|
||||
' In eine Liste von Integer umwandeln
|
||||
Dim RG_LIST As List(Of Integer) = RechnungsNrListe.Split(","c).Where(Function(s) Not String.IsNullOrWhiteSpace(s)).Select(Function(s) Convert.ToInt32(s)).ToList()
|
||||
If RG_LIST.Count > 0 Then
|
||||
' Provisionsabrechnung erstellen
|
||||
Dim pathPDF_SammelBericht = "" 'DATENVERVER_OPTIONS.getTMPPath("\Provisionsabrechnung_" & Now.ToString("yyyyMMdd_HHmmss") & ".pdf", ".pdf")
|
||||
cFakturierung.doSAMMELRechnungDruck_Rechnungsdruck_Sammelrechnungsbericht(-1, Now, 4, pathPDF_SammelBericht, "", "PROVISIONSABRECHNUNG", Nothing, Nothing, RG_LIST, Firma_ID)
|
||||
MsgBox(pathPDF_SammelBericht)
|
||||
|
||||
If pathPDF_SammelBericht <> "" Then PDF_LIST.Add(pathPDF_SammelBericht)
|
||||
End If
|
||||
Next
|
||||
|
||||
If PDF_LIST.Count = 1 Then
|
||||
Process.Start(PDF_LIST(0))
|
||||
Select Case sender.name
|
||||
Case "btnPDF"
|
||||
Process.Start(PDF_LIST(0))
|
||||
Case Else
|
||||
createMail(PDF_LIST(0), MyDatagridview1, gsAnKdNr)
|
||||
End Select
|
||||
|
||||
ElseIf PDF_LIST.Count > 1 Then
|
||||
Dim merge_pathPDF_SammelBericht = DATENVERVER_OPTIONS.getTMPPath("\Provisionsabrechnung_Merge_" & Now.ToString("yyyyMMdd_HHmmss") & ".pdf", ".pdf",, False)
|
||||
If FormularManagerNEU.MergePdfFiles(PDF_LIST, merge_pathPDF_SammelBericht) Then
|
||||
Process.Start(merge_pathPDF_SammelBericht)
|
||||
End If
|
||||
Select Case sender.name
|
||||
Case "btnPDF"
|
||||
Process.Start(merge_pathPDF_SammelBericht)
|
||||
Case Else
|
||||
createMail(merge_pathPDF_SammelBericht, MyDatagridview1, gsAnKdNr)
|
||||
End Select
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
@@ -115,4 +131,82 @@ Public Class frmProvisionisverguetung
|
||||
End Try
|
||||
Me.Cursor = Cursors.Default
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub createMail(path As String, dgv As DataGridView, kdNr As Integer)
|
||||
|
||||
Dim outl As New Outlook.Application
|
||||
Dim Mail As Microsoft.Office.Interop.Outlook.MailItem
|
||||
Dim ad As New cAdressen(kdNr)
|
||||
Try
|
||||
|
||||
Mail = outl.CreateItem(0)
|
||||
|
||||
|
||||
Dim fileInfo As New FileInfo(path)
|
||||
If path <> "" Then
|
||||
Mail.Attachments.Add(path, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue,, "PROVISIONSABRECHNUNG" & fileInfo.Extension)
|
||||
End If
|
||||
|
||||
|
||||
Dim mailText As String = "Sehr geehrte Damen und Herren," & vbNewLine & vbNewLine & "anbei die PROVISIONSABRECHNUNG von " & txtAbfertDat._value & " bis " & txtAbfertDatBis._value & "." & vbNewLine & vbNewLine & vbNewLine
|
||||
|
||||
mailText &= "<table border=1>"
|
||||
mailText &= "<tr><td></td><td>Anzahl Rechnungen</td><td>Umsatz</td><td>Provision</td></tr>"
|
||||
|
||||
Dim sumProv As Double = 0
|
||||
Dim sumUmsatz As Double = 0
|
||||
Dim anzahl As Integer = 0
|
||||
|
||||
For Each row As DataGridViewRow In dgv.SelectedRows
|
||||
|
||||
mailText &= "<tr>"
|
||||
mailText &= "<td><b></b></td>"
|
||||
mailText &= "<td><b>" & row.Cells("Anzahl").Value & "</b></td>"
|
||||
mailText &= "<td><b>" & CDbl(row.Cells("Umsatz").Value) & "</b></td>"
|
||||
mailText &= "<td><b>" & CDbl(row.Cells("Provision").Value) & "</b></td>"
|
||||
mailText &= "</tr>"
|
||||
|
||||
sumProv += CDbl(row.Cells("Provision").Value)
|
||||
sumUmsatz += CDbl(row.Cells("Umsatz").Value)
|
||||
anzahl += CInt(row.Cells("Anzahl").Value)
|
||||
|
||||
Next
|
||||
|
||||
mailText &= "<tr>"
|
||||
mailText &= "<td><b>SUMME</b></td>"
|
||||
mailText &= "<td><b>" & anzahl & "</b></td>"
|
||||
mailText &= "<td><b>" & sumUmsatz & " </b></td>"
|
||||
mailText &= "<td><b>" & sumProv & "</b></td>"
|
||||
mailText &= "</tr>"
|
||||
|
||||
mailText &= "</table>" & vbNewLine & vbNewLine & vbNewLine
|
||||
|
||||
|
||||
Dim TextHTML = ""
|
||||
If mailText <> "" Then
|
||||
TextHTML = "<div style=""font-family:Calibri, Arial"">" & mailText.Replace(ControlChars.Lf, "<br>") & cFakturierung.getSignature(ad.LandKz, VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA_ID,,,,,, ) & "</div>"
|
||||
Mail.HTMLBody = TextHTML
|
||||
End If
|
||||
|
||||
Mail.To = VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(ad.AdressenNr, "Rechnung an")
|
||||
Mail.CC = VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressCC(ad.AdressenNr, "Rechnung an")
|
||||
Mail.BCC = VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressBCC(ad.AdressenNr, "Rechnung an")
|
||||
|
||||
If Mail.To = "" Then
|
||||
Mail.To &= IIf(ad.E_Mail IsNot Nothing, ad.E_Mail, "")
|
||||
End If
|
||||
|
||||
Mail.Display()
|
||||
Me.Cursor = Cursors.Default
|
||||
|
||||
Catch ex As Exception
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||
Me.Cursor = Cursors.Default
|
||||
End Try
|
||||
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
Reference in New Issue
Block a user