AUTOMAILVERSAND, etc.
This commit is contained in:
@@ -4,14 +4,16 @@ Imports VERAG_PROG_ALLGEMEIN
|
||||
|
||||
Public Class cAutomailversand
|
||||
|
||||
Sub sendMailSammelrechnung(Sammelrechnungsdatum As Date, SammelrechungArt As Integer, FirmaID As Integer, Optional KundenNr As Integer = -1, Optional mailoeffnen As Boolean = False)
|
||||
Sub sendMailSammelrechnung(_Rechnungsdatum As Date, SammelrechungArt As Integer, FirmaID As Integer, Optional KundenNr As Integer = -1, Optional mailoeffnen As Boolean = False)
|
||||
Try
|
||||
Dim sql As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
|
||||
'BEI SAMMELRECHNUNG WIRD ZUERST INTERN DER STATUS AUF 2 GESETZT
|
||||
|
||||
Dim rechnungenMailversand = "SELECT RechnungsNr,RechnungsKundenNr,isnull(tblKundenErweitert.kde_keineMWSt,0) as keineMWST, max(Rechnungsausgang.[RechnungsLandKz]) as RechnungsLandKz, MitgliedslandEU, sum(Rechnungsausgang.SteuerpflichtigerGesamtbetrag) AS Steuer FROM Rechnungsausgang
|
||||
LEFT JOIN tblKundenErweitert on tblKundenErweitert.kde_KundenNr = Rechnungsausgang.RechnungsKundenNr
|
||||
INNER JOIN Währungstabelle on LandKz = Rechnungsausgang.RechnungsLandKz
|
||||
WHERE Rechnungsausgang.Status IN (2) And Rechnungsausgang.Firma_ID = '" & FirmaID & "' And Rechnungsausgang.Sammelrechnung = '" & SammelrechungArt & "' And CONVERT(DATE,Rechnungsausgang.Rechnungsdatum,104) = '" & Sammelrechnungsdatum.ToShortDateString & "'
|
||||
WHERE Rechnungsausgang.Status IN (2) and Rechnungsausgang.Automailversand_sent is null And Rechnungsausgang.Firma_ID = '" & FirmaID & "' And Rechnungsausgang.Sammelrechnung = '" & SammelrechungArt & "' And CONVERT(DATE,Rechnungsausgang.Rechnungsdatum,104) = '" & _Rechnungsdatum.ToShortDateString & "'
|
||||
and isnull(Rechnungsausgang.Automailversand,0) = 1 and RechnungsNr > 0 " & IIf(KundenNr > 0, " AND RechnungsKundenNr = " & KundenNr, "") & "
|
||||
GROUP BY RechnungsNr, RechnungsKundenNr,isnull(tblKundenErweitert.kde_keineMWSt,0),RechnungsLandKz, MitgliedslandEU
|
||||
ORDER BY RechnungsLandKz, RechnungsKundenNr"
|
||||
@@ -52,7 +54,7 @@ Public Class cAutomailversand
|
||||
|
||||
End If
|
||||
|
||||
SR_DT = cFakturierung.GET_SR_SQLDT(FirmaID, SammelrechungArt, Sammelrechnungsdatum, row.Item("RechnungsKundenNr"),,,,, True)
|
||||
SR_DT = cFakturierung.GET_SR_SQLDT(FirmaID, SammelrechungArt, _Rechnungsdatum, row.Item("RechnungsKundenNr"),,,,, True)
|
||||
|
||||
Dim AD = New VERAG_PROG_ALLGEMEIN.cAdressen(row.Item("RechnungsKundenNr"))
|
||||
Dim FISKAL = New cFiskal_Daten(row.Item("RechnungsKundenNr"))
|
||||
@@ -81,34 +83,8 @@ Public Class cAutomailversand
|
||||
Dim MailtoCC As String = ""
|
||||
Dim MailtoBCC As String = ""
|
||||
|
||||
If SammelrechungArt <> 6 Then
|
||||
|
||||
|
||||
Dim email_receipt As String = ""
|
||||
|
||||
Dim allAtilla = IIf(FirmaID = 7, True, False)
|
||||
If SR_DT IsNot Nothing AndAlso SR_DT.Rows.Count > 0 Then
|
||||
For Each r In SR_DT.Rows
|
||||
If "4801" <> r("FilialenNr") And "4802" <> r("FilialenNr") Then
|
||||
allAtilla = False
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
|
||||
email_receipt = IIf(allAtilla, VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an (ATILLA)"), "")
|
||||
|
||||
MailTo = IIf(email_receipt = "", VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an"), email_receipt) 'VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an")
|
||||
MailtoCC = IIf(email_receipt = "", VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressCC(AD.AdressenNr, "Rechnung an"), VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressCC(AD.AdressenNr, "Rechnung an (ATILLA)"))
|
||||
MailtoBCC = IIf(email_receipt = "", VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressBCC(AD.AdressenNr, "Rechnung an"), VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressBCC(AD.AdressenNr, "Rechnung an (ATILLA)"))
|
||||
|
||||
Else
|
||||
|
||||
If AD.E_Mail IsNot Nothing AndAlso AD.E_Mail <> "" Then MailTo &= AD.E_Mail & ";"
|
||||
If AD.E_Mail2 IsNot Nothing AndAlso AD.E_Mail2 <> "" Then MailTo &= AD.E_Mail2 & ";"
|
||||
|
||||
|
||||
End If
|
||||
setEmpfaengerMail_SR(SR_DT, AD, MailTo, MailtoCC, MailtoBCC, FirmaID, SammelrechungArt)
|
||||
|
||||
'im TESTSYSTEM bewusst die Empfänger leeren!
|
||||
|
||||
@@ -148,7 +124,7 @@ Public Class cAutomailversand
|
||||
TextHTML &= cFakturierung.getSignature("DE", FirmaID, True, True,,,,, True)
|
||||
HTMLMail = "<div style=""font-family:Calibri, Arial"">" & TextHTML & "</div>"
|
||||
|
||||
If setLog(SR_DT, row, FirmaID, SammelrechungArt, Rechnungsdatum, ATTACHMENTS, Mailsubject, HTMLMail, MailTo, MailtoCC, MailtoBCC) Then
|
||||
If setLog(SR_DT, row, FirmaID, SammelrechungArt, Rechnungsdatum, ATTACHMENTS, Mailsubject, HTMLMail, MailTo, MailtoCC, MailtoBCC,,, FISKAL) Then
|
||||
|
||||
End If
|
||||
|
||||
@@ -166,17 +142,27 @@ Public Class cAutomailversand
|
||||
End Sub
|
||||
|
||||
|
||||
Sub sendMailEinzelrechnungen(Rechnungsdatum As Date, FirmaID As Integer, Optional Sachbearbeiter As String = "", Optional KundenNr As Integer = -1, Optional mailoeffnen As Boolean = False)
|
||||
Sub sendMailEinzelrechnungen(FirmaID As Integer, Rechnungsdatum As Date, Optional Sachbearbeiter As String = "", Optional RK_ID As List(Of Integer) = Nothing, Optional mailoeffnen As Boolean = True)
|
||||
|
||||
Dim sql As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
|
||||
Dim rechnungenMailversand = "SELECT RechnungsNr,RechnungsKundenNr,isnull(tblKundenErweitert.kde_keineMWSt,0) as keineMWST, max(Rechnungsausgang.[RechnungsLandKz]) as RechnungsLandKz, MitgliedslandEU, sum(Rechnungsausgang.SteuerpflichtigerGesamtbetrag) AS Steuer FROM Rechnungsausgang
|
||||
Dim SQL_RKID As String = ""
|
||||
|
||||
If RK_ID IsNot Nothing Then
|
||||
If RK_ID.Count > 0 Then
|
||||
SQL_RKID = " AND RK_ID IN (" & String.Join(",", RK_ID) & ")"
|
||||
End If
|
||||
End If
|
||||
|
||||
'BEI EINZELRECHNUNG WIRD STATUS 0 und 2 geprüft
|
||||
|
||||
Dim rechnungenMailversand = "SELECT RK_ID,RechnungsKundenNr,Rechnungsausgang.VermittlerKundenNr,Rechnungsausgang.RechnungsLandKz,Rechnungsausgang.FilialenNr,Rechnungsausgang.AbfertigungsNr,Rechnungsausgang.UnterNr, Rechnungsausgang.ErfassungsNr , Rechnungsausgang.SteuerpflichtigerGesamtbetrag AS Steuer FROM Rechnungsausgang
|
||||
LEFT JOIN tblKundenErweitert on tblKundenErweitert.kde_KundenNr = Rechnungsausgang.RechnungsKundenNr
|
||||
INNER JOIN Währungstabelle on LandKz = Rechnungsausgang.RechnungsLandKz
|
||||
WHERE Rechnungsausgang.Status IN (2) And Rechnungsausgang.Firma_ID = '" & FirmaID & "' And And CONVERT(DATE,Rechnungsausgang.Rechnungsdatum,104) = '" & Rechnungsdatum.ToShortDateString & "'
|
||||
and isnull(Rechnungsausgang.Automailversand,0) = 1 and RechnungsNr > 0 " & IIf(KundenNr > 0, " AND RechnungsKundenNr = " & KundenNr, "") & "
|
||||
GROUP BY RechnungsNr, RechnungsKundenNr,isnull(tblKundenErweitert.kde_keineMWSt,0),RechnungsLandKz, MitgliedslandEU
|
||||
ORDER BY RechnungsLandKz, RechnungsKundenNr"
|
||||
WHERE Rechnungsausgang.Status IN (0,2) And Rechnungsausgang.Firma_ID = '" & FirmaID & "' And CONVERT(DATE,Rechnungsausgang.Rechnungsdatum,104) <= '" & Rechnungsdatum.ToShortDateString & "'
|
||||
and isnull(Rechnungsausgang.Automailversand,0) = 1 AND Automailversand_sent IS NULL " & IIf(Sachbearbeiter <> "", " AND Sachbearbeiter = '" & Sachbearbeiter & "'", "") & SQL_RKID & "
|
||||
|
||||
ORDER BY RechnungsLandKz, RechnungsKundenNr, Rechnungsausgang.Rechnungsdatum"
|
||||
|
||||
Dim dt As DataTable = sql.loadDgvBySql(rechnungenMailversand, "FMZOLL")
|
||||
Try
|
||||
@@ -187,6 +173,17 @@ Public Class cAutomailversand
|
||||
Dim MailtoCC As String = ""
|
||||
Dim MailtoBCC As String = ""
|
||||
|
||||
Dim FISKAL As cFiskal_Daten = Nothing
|
||||
|
||||
|
||||
Dim AD As New cAdressen(r.Item("RechnungsKundenNr"))
|
||||
Dim ATTACHMENTS As New List(Of cFakt_MailATTach)
|
||||
Dim RECHNUNG As New cRechnungsausgang(r.Item("RK_ID"))
|
||||
Dim SPEDBUCH As New cSpeditionsbuch(RECHNUNG.FilialenNr, RECHNUNG.AbfertigungsNr, RECHNUNG.UnterNr)
|
||||
FISKAL = New cFiskal_Daten(r.Item("RechnungsKundenNr"))
|
||||
|
||||
|
||||
setEmpfaengerMail_ER(SPEDBUCH, AD, MailTo, MailtoCC, MailtoBCC, "")
|
||||
|
||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||
MailTo = ""
|
||||
@@ -196,12 +193,54 @@ Public Class cAutomailversand
|
||||
MailtoBCC = setAccountToSend(FirmaID)
|
||||
End If
|
||||
|
||||
If Not (MailTo = "" AndAlso MailtoCC = "" AndAlso MailtoBCC = "") Then
|
||||
|
||||
|
||||
Dim pathRG As String
|
||||
If Not cFakturierung.doRechnungsDruck(RECHNUNG, Rechnungsdatum,, 4, pathRG,, True) Then
|
||||
Continue For
|
||||
End If
|
||||
|
||||
'EINZELBELEG ANFÜGEN
|
||||
If pathRG <> "" Then ATTACHMENTS.Add(New cFakt_MailATTach(pathRG, If(RECHNUNG.BelegartenKz = "AR", "Rechnung.pdf", "Gutschrift.pdf")))
|
||||
|
||||
Dim Mailsubject As String = ""
|
||||
Dim HTMLMail As String = ""
|
||||
|
||||
Dim listPDFs As New List(Of String)
|
||||
Dim showError As Boolean = False
|
||||
setEmailText(r, FirmaID, RECHNUNG.RechnungsNr, Mailsubject, HTMLMail, RECHNUNG.Sammelrechnung, dt, RECHNUNG.BelegartenNr)
|
||||
|
||||
loadAndSetAnhaenge(dt, ATTACHMENTS, listPDFs, RECHNUNG)
|
||||
|
||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Mailsubject &= " TEST"
|
||||
|
||||
If mailoeffnen Then
|
||||
Dim Mail = createMail(Mailsubject, HTMLMail, ATTACHMENTS, MailTo, MailtoCC, MailtoBCC, FirmaID)
|
||||
If setLog(dt, r, FirmaID, RECHNUNG.Sammelrechnung, Rechnungsdatum,,,,,,, Mail, RECHNUNG) Then
|
||||
Mail.Display()
|
||||
End If
|
||||
|
||||
Else
|
||||
|
||||
Dim TextHTML = ""
|
||||
TextHTML &= HTMLMail
|
||||
TextHTML &= cFakturierung.getSignature("DE", FirmaID, True, True,,,,, True)
|
||||
HTMLMail = "<div style=""font-family:Calibri, Arial"">" & TextHTML & "</div>"
|
||||
|
||||
If setLog(dt, r, FirmaID, RECHNUNG.Sammelrechnung, Rechnungsdatum, ATTACHMENTS, Mailsubject, HTMLMail, MailTo, MailtoCC, MailtoBCC,, RECHNUNG, FISKAL, SPEDBUCH) Then
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
Next
|
||||
|
||||
Catch ex As System.Exception
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL,,,,,,)
|
||||
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL,,, "d.breimaier@verag.ag",,, setAccountToSend(FirmaID))
|
||||
End Try
|
||||
|
||||
End Sub
|
||||
@@ -212,14 +251,102 @@ Public Class cAutomailversand
|
||||
Dim Mailtext As String
|
||||
|
||||
|
||||
If SammelrechungArt <> 6 Then
|
||||
If SammelrechungArt <> 6 Then 'EINZELRECHNUNGEN - MDM oder ANDERE
|
||||
|
||||
Subject = "VERAG Sammel-Rechnung"
|
||||
TextHTML &= getSammelRgTExt(getSelectionLandKz(dt), Firma_ID)
|
||||
|
||||
Dim listOfTextconserven As cTextkonserve_LIST = New cTextkonserve_LIST(1, "", Firma_ID)
|
||||
|
||||
Dim spracheRechnung As String = "EN" 'Defaultsprache
|
||||
Dim belegtyp As String = If(BelegartenNr = 71, "credit note", "invoice")
|
||||
|
||||
Select Case row.Item("RechnungsLandKz")
|
||||
Case "TR" : spracheRechnung = "TR" : spracheRechnung = row.Item("RechnungsLandKz") : belegtyp = If(BelegartenNr = 71, "Kredi", "Fatura")
|
||||
Case "RO" : spracheRechnung = "RO" : spracheRechnung = row.Item("RechnungsLandKz") : belegtyp = If(BelegartenNr = 71, "nota de credit", "factura")
|
||||
Case "DE", "A", "AT", "D", "CH" : spracheRechnung = "DE" : belegtyp = If(BelegartenNr = 71, "Gutschrift", "Rechnung")
|
||||
Case "SRB", "HR", "SLO", "BIH", "MNE", "MK", "MO" : spracheRechnung = "SRB" : belegtyp = If(BelegartenNr = 71, "credit note", "invoice") 'Belegarten auf Englisch!
|
||||
End Select
|
||||
|
||||
If listOfTextconserven.LIST.Any(Function(c) c.txt_sprache = spracheRechnung) Then
|
||||
|
||||
Dim r As cTextkonserve = listOfTextconserven.LIST.Find(Function(c) c.txt_sprache = spracheRechnung)
|
||||
If r IsNot Nothing Then
|
||||
Subject = r.txt_betreff
|
||||
Subject = Subject.Replace("%Belegtyp%", belegtyp)
|
||||
Subject = Subject.Replace("%BelegNr%", txtRgNr)
|
||||
|
||||
TextHTML &= r.txt_text
|
||||
|
||||
TextHTML = TextHTML.Replace("%Belegtyp%", belegtyp)
|
||||
|
||||
If Firma_ID = 19 Then
|
||||
|
||||
Dim KUNDE_ERW As New cKundenErweitert(row("RechnungsKundenNr"))
|
||||
|
||||
If row.Item("FilialenNr") = 4817 AndAlso row.Item("ErfassungsNr") IsNot Nothing Then
|
||||
Dim SPEDBUCH = New VERAG_PROG_ALLGEMEIN.cSpeditionsbuch(row.Item("FilialenNr"), row.Item("AbfertigungsNr"), row.Item("UnterNr"))
|
||||
If SPEDBUCH.hasEntry AndAlso (SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115 Or SPEDBUCH.Abfertigungsart = 10) Then
|
||||
Dim USTV_ANTRAG As New cUSTVAntrag(row.Item("ErfassungsNr"))
|
||||
|
||||
If row("VermittlerKundenNr") = 150000 Or row("VermittlerKundenNr") = 140000 Or row("VermittlerKundenNr").ToString.Substring(0, 2) = 18 Then
|
||||
|
||||
replaceKZ("nichtRMC", TextHTML)
|
||||
TextHTML = TextHTML.ToString.Replace("%RMC:", "") : TextHTML = TextHTML.ToString.Replace("RMC%", "")
|
||||
|
||||
replaceKZ("KZ1", TextHTML)
|
||||
replaceKZ("KZ4", TextHTML)
|
||||
TextHTML = TextHTML.ToString.Replace("%", "")
|
||||
|
||||
Else
|
||||
|
||||
replaceKZ("RMC", TextHTML)
|
||||
TextHTML = TextHTML.ToString.Replace("%nichtRMC:", "") : TextHTML = TextHTML.ToString.Replace("nichtRMC%", "")
|
||||
|
||||
If USTV_ANTRAG.UStVAn_Sicherheit Then
|
||||
replaceKZ("KZ1", TextHTML)
|
||||
TextHTML = TextHTML.ToString.Replace("%KZ4:", "") : TextHTML = TextHTML.ToString.Replace("%", "")
|
||||
|
||||
ElseIf KUNDE_ERW.kde_Erstattungsart = 4 Then
|
||||
replaceKZ("KZ1", TextHTML)
|
||||
TextHTML = TextHTML.ToString.Replace("%KZ4:", "") : TextHTML = TextHTML.ToString.Replace("%", "")
|
||||
|
||||
ElseIf KUNDE_ERW.kde_Erstattungsart = 1 Then
|
||||
replaceKZ("KZ4", TextHTML)
|
||||
TextHTML = TextHTML.ToString.Replace("%KZ1:", "") : TextHTML = TextHTML.ToString.Replace("%", "")
|
||||
|
||||
Else
|
||||
replaceKZ("KZ1", TextHTML)
|
||||
replaceKZ("KZ4", TextHTML)
|
||||
TextHTML = TextHTML.ToString.Replace("%", "")
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
If Mailtext <> "" Then TextHTML &= Mailtext & vbNewLine
|
||||
|
||||
|
||||
End If
|
||||
|
||||
Else
|
||||
'sonst alles weg!
|
||||
replaceKZ("nichtRMC", TextHTML)
|
||||
replaceKZ("RMC", TextHTML)
|
||||
replaceKZ("KZ1", TextHTML)
|
||||
replaceKZ("KZ4", TextHTML)
|
||||
TextHTML = TextHTML.ToString.Replace("%", "")
|
||||
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
Else
|
||||
|
||||
ElseIf SammelrechungArt = 6 Then 'MDM-SAMMELRECHNUNGEN
|
||||
|
||||
|
||||
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
@@ -310,68 +437,92 @@ Public Class cAutomailversand
|
||||
|
||||
End Function
|
||||
|
||||
Private Sub loadAndSetAnhaenge(SR_DT As DataTable, ATTACHMENTS As List(Of cFakt_MailATTach), listPDFs As List(Of String))
|
||||
Private Sub loadAndSetAnhaenge(SR_DT As DataTable, ATTACHMENTS As List(Of cFakt_MailATTach), listPDFs As List(Of String), Optional RECHNUNG As cRechnungsausgang = Nothing, Optional SPEDBUCH As cSpeditionsbuch = Nothing)
|
||||
|
||||
ATTACHMENTS.Clear()
|
||||
'Rechnungsanhänge anfügen
|
||||
|
||||
Dim zielPfadZusammenfassung = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("Attachment", ".pdf",, False, "Zusammenfassung")
|
||||
|
||||
'Rechnungsanhänge anfügen
|
||||
|
||||
For Each l In listPDFs
|
||||
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(l, ""))
|
||||
|
||||
Next
|
||||
'-----------------------------------------------------------------
|
||||
If SR_DT IsNot Nothing AndAlso SR_DT.Rows.Count > 0 Then
|
||||
|
||||
Dim myList As New List(Of String)
|
||||
If RECHNUNG IsNot Nothing Then
|
||||
|
||||
For Each r As DataRow In SR_DT.Rows
|
||||
Dim RG_ANH = VERAG_PROG_ALLGEMEIN.cRechnungsausgang.LOAD_ANHAENGE_LIST(r("RK_ID"))
|
||||
If RG_ANH IsNot Nothing Then
|
||||
'----------------------------------------------------------------- EINZELRECHNUNGEN------------------------------------------------
|
||||
|
||||
Dim FilialenNr = IIf(Not IsDBNull(r.Item("FilialenNr")) AndAlso IsNumeric(r.Item("FilialenNr")), CInt(r.Item("FilialenNr")), 0)
|
||||
|
||||
If FilialenNr = 4817 Then 'diese immer zusammenfassen!
|
||||
|
||||
For Each ANH In RG_ANH
|
||||
|
||||
Dim path = VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ANH.dsId)
|
||||
If Not (path.ToString.ToLower.Contains("sammelrechnung") OrElse path.ToString.Contains("Maut") OrElse path.ToString.Contains("POS") OrElse path.ToString.ToLower.Contains("invoice") OrElse path.ToString.ToLower.Contains("rechnung")) Then
|
||||
If path <> "" Then myList.Add(path)
|
||||
Else
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(path, ANH.Bezeichnung))
|
||||
End If
|
||||
|
||||
Next
|
||||
If myList.Any() Then
|
||||
If FormularManagerNEU.MergePdfFiles(myList, zielPfadZusammenfassung) Then
|
||||
Dim fileInfo As New FileInfo(zielPfadZusammenfassung)
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(zielPfadZusammenfassung, fileInfo.Name))
|
||||
End If
|
||||
End If
|
||||
Else
|
||||
For Each ANH In RG_ANH
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ANH.dsId), ANH.Bezeichnung))
|
||||
Next
|
||||
End If
|
||||
|
||||
|
||||
|
||||
End If
|
||||
RECHNUNG.LOAD_ANHAENGE()
|
||||
For Each ANH In RECHNUNG.ANHAENGE
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ANH.dsId), ANH.Bezeichnung))
|
||||
Next
|
||||
|
||||
If SPEDBUCH IsNot Nothing Then
|
||||
|
||||
If SPEDBUCH.DokumentId_Mitteilung IsNot Nothing Then ATTACHMENTS.Add(New cFakt_MailATTach(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(SPEDBUCH.DokumentId_Mitteilung), "Versandschein.pdf"))
|
||||
|
||||
'AT
|
||||
If SPEDBUCH.DokumentId_Mitteilung IsNot Nothing Then ATTACHMENTS.Add(New cFakt_MailATTach(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(SPEDBUCH.DokumentId_Mitteilung), "Abgabenbescheid.pdf"))
|
||||
If SPEDBUCH.DokumentId_Steuerbeleg IsNot Nothing Then ATTACHMENTS.Add(New cFakt_MailATTach(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(SPEDBUCH.DokumentId_Steuerbeleg), "Verzollungsnachweis.pdf"))
|
||||
|
||||
'DE
|
||||
If SPEDBUCH.DokumentId_Steuerbeleg IsNot Nothing Then ATTACHMENTS.Add(New cFakt_MailATTach(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(SPEDBUCH.DokumentId_Steuerbeleg), "Steuerbescheid.pdf"))
|
||||
If SPEDBUCH.DokumentId_VBD IsNot Nothing Then ATTACHMENTS.Add(New cFakt_MailATTach(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(SPEDBUCH.DokumentId_VBD), "Abgabenbescheid.pdf"))
|
||||
End If
|
||||
|
||||
|
||||
Else
|
||||
|
||||
'----------------------------------------------------------------- SAMMELRECHNUNGEN------------------------------------------------
|
||||
|
||||
If SR_DT IsNot Nothing AndAlso SR_DT.Rows.Count > 0 Then
|
||||
'ATTACHMENTS.Clear()
|
||||
Dim myList As New List(Of String)
|
||||
|
||||
For Each r As DataRow In SR_DT.Rows
|
||||
Dim RG_ANH = VERAG_PROG_ALLGEMEIN.cRechnungsausgang.LOAD_ANHAENGE_LIST(r("RK_ID"))
|
||||
If RG_ANH IsNot Nothing Then
|
||||
|
||||
Dim FilialenNr = IIf(Not IsDBNull(r.Item("FilialenNr")) AndAlso IsNumeric(r.Item("FilialenNr")), CInt(r.Item("FilialenNr")), 0)
|
||||
|
||||
If FilialenNr = 4817 Then 'diese immer zusammenfassen!
|
||||
|
||||
For Each ANH In RG_ANH
|
||||
|
||||
Dim path = VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ANH.dsId)
|
||||
If Not (path.ToString.ToLower.Contains("sammelrechnung") OrElse path.ToString.Contains("Maut") OrElse path.ToString.Contains("POS") OrElse path.ToString.ToLower.Contains("invoice") OrElse path.ToString.ToLower.Contains("rechnung")) Then
|
||||
If path <> "" Then myList.Add(path)
|
||||
Else
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(path, ANH.Bezeichnung))
|
||||
End If
|
||||
|
||||
Next
|
||||
If myList.Any() Then
|
||||
If FormularManagerNEU.MergePdfFiles(myList, zielPfadZusammenfassung) Then
|
||||
Dim fileInfo As New FileInfo(zielPfadZusammenfassung)
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(zielPfadZusammenfassung, fileInfo.Name))
|
||||
End If
|
||||
End If
|
||||
Else
|
||||
For Each ANH In RG_ANH
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ANH.dsId), ANH.Bezeichnung))
|
||||
Next
|
||||
End If
|
||||
|
||||
|
||||
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
|
||||
|
||||
End If
|
||||
|
||||
|
||||
'-----------------------------------------------------------------
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Private Function setLog(SR_DT As DataTable, row As DataRow, FirmaID As Integer, Sammelrechnungsart As Integer, Rechnungsdatum As Date, Optional ATTACHMENTS As List(Of cFakt_MailATTach) = Nothing, Optional Mailsubject As String = "", Optional Mailhtml As String = "", Optional MailTo As String = "", Optional MailtoCC As String = "", Optional MailtoBCC As String = "", Optional Mail As Microsoft.Office.Interop.Outlook.MailItem = Nothing) As Boolean
|
||||
Private Function setLog(SR_DT As DataTable, row As DataRow, FirmaID As Integer, Sammelrechnungsart As Integer, Rechnungsdatum As Date, Optional ATTACHMENTS As List(Of cFakt_MailATTach) = Nothing, Optional Mailsubject As String = "", Optional Mailhtml As String = "", Optional MailTo As String = "", Optional MailtoCC As String = "", Optional MailtoBCC As String = "", Optional Mail As Microsoft.Office.Interop.Outlook.MailItem = Nothing, Optional RECHNUNG As cRechnungsausgang = Nothing, Optional FISKAL As cFiskal_Daten = Nothing, Optional SPEDBUCH As cSpeditionsbuch = Nothing) As Boolean
|
||||
|
||||
|
||||
Dim accountToSend = setAccountToSend(FirmaID)
|
||||
@@ -406,17 +557,28 @@ Public Class cAutomailversand
|
||||
|
||||
Dim AbfertigungsNr As Integer
|
||||
Dim FilialenNr As Integer
|
||||
Dim UnterNr As Integer
|
||||
|
||||
If SR_DT.Rows.Count > 0 Then
|
||||
For Each r As DataRow In SR_DT.Rows
|
||||
AbfertigungsNr = IIf(Not IsDBNull(r.Item("AbfertigungsNr")) AndAlso IsNumeric(r.Item("AbfertigungsNr")), CInt(r.Item("AbfertigungsNr")), 0)
|
||||
FilialenNr = IIf(Not IsDBNull(r.Item("FilialenNr")) AndAlso IsNumeric(r.Item("FilialenNr")), CInt(r.Item("FilialenNr")), 0)
|
||||
Next
|
||||
If SPEDBUCH IsNot Nothing Then
|
||||
FilialenNr = SPEDBUCH.FilialenNr
|
||||
AbfertigungsNr = SPEDBUCH.AbfertigungsNr
|
||||
UnterNr = SPEDBUCH.UnterNr
|
||||
|
||||
Else
|
||||
|
||||
|
||||
If SR_DT.Rows.Count > 0 Then
|
||||
For Each r As DataRow In SR_DT.Rows
|
||||
AbfertigungsNr = IIf(Not IsDBNull(r.Item("AbfertigungsNr")) AndAlso IsNumeric(r.Item("AbfertigungsNr")), CInt(r.Item("AbfertigungsNr")), 0)
|
||||
FilialenNr = IIf(Not IsDBNull(r.Item("FilialenNr")) AndAlso IsNumeric(r.Item("FilialenNr")), CInt(r.Item("FilialenNr")), 0)
|
||||
Next
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
Dim API = VERAG_PROG_ALLGEMEIN.cAPI.INSERT_API(VERAG_PROG_ALLGEMEIN.cAPI_INOUT.OUT, VERAG_PROG_ALLGEMEIN.cAPI_Type.MAIL, VERAG_PROG_ALLGEMEIN.cAPI_ART.SDL_OUT_SAMMELRECHNUNG, "SAMMELRECHNUNG_" & FirmaID,,, row.Item("RechnungsKundenNr"), , , FilialenNr, AbfertigungsNr)
|
||||
|
||||
API.api_EMail = EMails
|
||||
@@ -429,6 +591,23 @@ Public Class cAutomailversand
|
||||
If Mail IsNot Nothing Then
|
||||
|
||||
API.UPDTAE_OK()
|
||||
|
||||
If RECHNUNG IsNot Nothing Then ' EINZELRECHNUNG
|
||||
RECHNUNG.Automailversand_sent = Now()
|
||||
RECHNUNG.SAVE()
|
||||
|
||||
Else
|
||||
' 'Bei erfolg. SAMMELRECHNUNG SENT-STATUS setzen
|
||||
sql.doSQL("update Rechnungsausgang set Automailversand_sent = getDate() where Rechnungsausgang.Firma_ID = '" & FirmaID & "' And Rechnungsausgang.Sammelrechnung = '" & Sammelrechnungsart & "' And CONVERT(DATE,Rechnungsausgang.Rechnungsdatum,104) = '" & Rechnungsdatum.ToShortDateString & "'
|
||||
And isnull(Rechnungsausgang.Automailversand,0) = 1 And RechnungsNr > 0 And RechnungsKundenNr = " & row.Item("RechnungsKundenNr") & " And Status = 4 And Automailversand_sent is null", "FMZOLL")
|
||||
|
||||
End If
|
||||
|
||||
'---------------------TODO ! ----------------------------
|
||||
createMailFISKAL(SPEDBUCH, FISKAL, True, FirmaID, row.Item("RechnungsKundenNr"), row.Item("RechnungsLandKz"))
|
||||
'---------------------TODO ! ----------------------------
|
||||
|
||||
|
||||
mailcreated = True
|
||||
Else
|
||||
|
||||
@@ -446,74 +625,47 @@ Public Class cAutomailversand
|
||||
|
||||
If VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(EMails, EMail_subject, EMail_HTML, accountToSend, False, False, EMails_CC, EMails_BCC, attachList,, IIf(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, "d.breimaier@verag.ag", accountToSend)) Then
|
||||
API.UPDTAE_OK()
|
||||
|
||||
If RECHNUNG IsNot Nothing Then
|
||||
RECHNUNG.Automailversand_sent = Now()
|
||||
RECHNUNG.SAVE()
|
||||
|
||||
Else
|
||||
sql.doSQL("update Rechnungsausgang set Automailversand_sent = getDate() where Rechnungsausgang.Firma_ID = '" & FirmaID & "' And Rechnungsausgang.Sammelrechnung = '" & Sammelrechnungsart & "' And CONVERT(DATE,Rechnungsausgang.Rechnungsdatum,104) = '" & Rechnungsdatum.ToShortDateString & "'
|
||||
And isnull(Rechnungsausgang.Automailversand,0) = 1 And RechnungsNr > 0 And RechnungsKundenNr = " & row.Item("RechnungsKundenNr") & " And Status = 4 And Automailversand_sent is null", "FMZOLL")
|
||||
End If
|
||||
|
||||
'---------------------TODO ! ----------------------------
|
||||
createMailFISKAL(SPEDBUCH, FISKAL, False, FirmaID, row.Item("RechnungsKundenNr"), row.Item("RechnungsLandKz"))
|
||||
'---------------------TODO ! ----------------------------
|
||||
|
||||
mailcreated = True
|
||||
Else
|
||||
API.UPDTAE_ERR()
|
||||
sql.doSQL("update Rechnungsausgang set Status = 2 where Rechnungsausgang.Firma_ID = '" & FirmaID & "' And Rechnungsausgang.Sammelrechnung = '" & Sammelrechnungsart & "' And CONVERT(DATE,Rechnungsausgang.Abfertigungsdatum,104) = '" & Rechnungsdatum.ToShortDateString & "'
|
||||
|
||||
'Bei FEHLER EINZELRECHNUNG VON STATUS 4 auf 2 zurücksetzen!
|
||||
|
||||
If RECHNUNG IsNot Nothing Then
|
||||
RECHNUNG.Automailversand_sent = Nothing
|
||||
RECHNUNG.Status = 2
|
||||
RECHNUNG.SAVE()
|
||||
Else
|
||||
'Bei FEHLER SAMMELRECHNUNG VON STATUS 4 auf 2 zurücksetzen!
|
||||
sql.doSQL("update Rechnungsausgang set Status = 2, Automailversand_sent = NULL where Rechnungsausgang.Firma_ID = '" & FirmaID & "' And Rechnungsausgang.Sammelrechnung = '" & Sammelrechnungsart & "' And CONVERT(DATE,Rechnungsausgang.Rechnungsdatum,104) = '" & Rechnungsdatum.ToShortDateString & "'
|
||||
And isnull(Rechnungsausgang.Automailversand,0) = 1 And RechnungsNr > 0 And RechnungsKundenNr = " & row.Item("RechnungsKundenNr") & " And Status = 4", "FMZOLL")
|
||||
End If
|
||||
|
||||
Return mailcreated
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
End If
|
||||
|
||||
Return mailcreated
|
||||
|
||||
End Function
|
||||
|
||||
Function getSammelRgTExt(RechnungsLandKz, FIRMA_ID) As String
|
||||
|
||||
If RechnungsLandKz = "" Then
|
||||
|
||||
getSammelRgTExt = "Sehr geehrte Damen und Herren,<br>"
|
||||
getSammelRgTExt &= "Dear Ladies and Gentlemen,<br>"
|
||||
getSammelRgTExt &= "Sayin Bayanlar ve Baylar,<br>"
|
||||
getSammelRgTExt &= "<br>"
|
||||
getSammelRgTExt &= "im Anhang senden wir Ihnen die o.g. Rechnung.<br>"
|
||||
getSammelRgTExt &= "attached we send you the invoice mentioned above.<br>"
|
||||
getSammelRgTExt &= "ekte baslikta yazan faturayi bulabilirsinz.<br>"
|
||||
getSammelRgTExt &= "<br>"
|
||||
getSammelRgTExt &= "<br><br><br>Mit freundlichen Grüßen / Best regards / Saygilarimizla<br><br>VERAG Spedition AG<br><br>" & cFakturierung.getSignature(RechnungsLandKz, FIRMA_ID)
|
||||
Return "<div style=""font-family:Calibri, Arial"">" & getSammelRgTExt & "</div>"
|
||||
End If
|
||||
|
||||
|
||||
|
||||
getSammelRgTExt = "<div style=""font-family:Calibri, Arial"">" & getSammelRgTExt & "</div>"
|
||||
End Function
|
||||
|
||||
Function getSelectionLandKz(dt As DataTable) As String
|
||||
getSelectionLandKz = ""
|
||||
If dt.Rows.Count > 0 Then
|
||||
|
||||
If dt.Rows.Count > 0 Then
|
||||
|
||||
For Each r As DataRow In dt.Rows
|
||||
|
||||
If Not IsDBNull(r("RechnungsLandKz")) Then
|
||||
|
||||
Dim landKz As String = r("RechnungsLandKz").ToString()
|
||||
|
||||
If getSelectionLandKz = "" Then
|
||||
getSelectionLandKz = landKz
|
||||
ElseIf getSelectionLandKz <> landKz Then
|
||||
Return ""
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
Next
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
End Function
|
||||
|
||||
Private Function setAccountToSend(FIRMA_ID) As String
|
||||
Dim accountToSend = ""
|
||||
|
||||
@@ -589,4 +741,306 @@ Public Class cAutomailversand
|
||||
|
||||
|
||||
End Function
|
||||
|
||||
Public Shared Function automRechnungsversand_deaktivieren(Optional isEinzelrechnung As Boolean = False)
|
||||
|
||||
Dim RE_Text = ""
|
||||
|
||||
If isEinzelrechnung Then
|
||||
RE_Text = "diese Rechnung"
|
||||
Else
|
||||
RE_Text = "alle markieren Rechnungen"
|
||||
End If
|
||||
|
||||
If vbYes = MsgBox("Möchten Sie für " & RE_Text & " den automatischen Emailversand deaktivieren?" & vbNewLine & "Die Rechnungen müssen dann manuell per Mail verschickt werden!", vbYesNoCancel) Then
|
||||
Return True
|
||||
Else
|
||||
Return False
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Shared Function automRechnungsversand_aktivieren(Optional isEinzelrechnung As Boolean = False)
|
||||
|
||||
Dim RE_Text = ""
|
||||
|
||||
If isEinzelrechnung Then
|
||||
RE_Text = "diese Rechnung"
|
||||
Else
|
||||
RE_Text = "alle markieren Rechnungen"
|
||||
End If
|
||||
|
||||
If vbYes = MsgBox("Möchten Sie für " & RE_Text & " den automatischen Emailversand aktivieren?" & vbNewLine & "Die Rechnungen werden automatisch im Nachtlauf per EMail verschickt!", vbYesNoCancel) Then
|
||||
Return True
|
||||
Else
|
||||
Return False
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Shared Function automRechnungsversand_durchführen(Optional isEinzelrechnung As Boolean = False)
|
||||
|
||||
Dim RE_Text = ""
|
||||
|
||||
If isEinzelrechnung Then
|
||||
RE_Text = "diese Rechnung"
|
||||
Else
|
||||
RE_Text = "alle markieren Rechnungen"
|
||||
End If
|
||||
|
||||
If vbYes = MsgBox("Möchten Sie für " & RE_Text & " den automatischen Emailversand JETZT durchführen?" & vbNewLine & "Ansonsten werden sie im Nachtlauf automatisch versendet!", vbYesNoCancel) Then
|
||||
Return True
|
||||
Else
|
||||
Return False
|
||||
End If
|
||||
End Function
|
||||
|
||||
Private Sub replaceKZ(KZ As String, ByRef TextHTML As String)
|
||||
|
||||
If TextHTML = "" Then Exit Sub
|
||||
|
||||
Dim index_start As Integer = TextHTML.ToString.IndexOf("%" & KZ & ":")
|
||||
If index_start < 0 Then Exit Sub
|
||||
Dim txtKZ = TextHTML.ToString.Substring(index_start)
|
||||
Dim index_end As Integer = txtKZ.ToString.IndexOf("%", 1)
|
||||
|
||||
If index_start <= 0 AndAlso index_end <= 0 Then
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
Dim txtKZ_replace As String = TextHTML.ToString.Substring(index_start, index_end)
|
||||
TextHTML = TextHTML.ToString.Replace(txtKZ_replace, "")
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Private Function createMailFISKAL(SPEDBUCH As cSpeditionsbuch, FISKAL As cFiskal_Daten, showMail As Boolean, FirmaID As Integer, kundenNr As Integer, RechnungsLandKz As String) As Boolean
|
||||
|
||||
Dim MailSteuerberater As String = ""
|
||||
Dim MailFA As String = ""
|
||||
|
||||
Dim MailSteuerberater_do As Boolean = False
|
||||
Dim MailFA_do As Boolean = False
|
||||
|
||||
Dim Subject As String = ""
|
||||
Dim TextHTML As String = ""
|
||||
|
||||
Dim MailTo As String = ""
|
||||
Dim MailCC As String = ""
|
||||
|
||||
If FISKAL IsNot Nothing AndAlso SPEDBUCH IsNot Nothing AndAlso SPEDBUCH.Abfertigungsart IsNot Nothing AndAlso IsNumeric(SPEDBUCH.Abfertigungsart) AndAlso (SPEDBUCH.Abfertigungsart = 26 Or SPEDBUCH.Abfertigungsart = 28) AndAlso (SPEDBUCH.FilialenNr = 4805 Or SPEDBUCH.FilialenNr = 4811) Then 'Prüfung
|
||||
MailSteuerberater_do = (If(FISKAL.fisk_schreibenSB_Mail, "") <> "")
|
||||
MailSteuerberater = If(FISKAL.fisk_schreibenSB_Mail, "")
|
||||
MailFA_do = (If(FISKAL.fisk_schreibenFA_Mail, "") <> "")
|
||||
MailFA = If(FISKAL.fisk_schreibenFA_Mail, "")
|
||||
End If
|
||||
|
||||
|
||||
|
||||
If MailSteuerberater_do Or MailFA_do Then
|
||||
|
||||
If MailSteuerberater <> "" Then
|
||||
MailTo = MailSteuerberater
|
||||
MailCC = MailFA
|
||||
Else
|
||||
MailTo = MailFA
|
||||
End If
|
||||
|
||||
Dim AD As New cAdressen(kundenNr)
|
||||
Dim KD As New cKunde(kundenNr)
|
||||
Dim Sprache As String = "EN"
|
||||
Dim attachList As New List(Of String)
|
||||
|
||||
Subject = "Meldung innergemeinschaftlicher Erwerb - " & AD.Ordnungsbegriff
|
||||
|
||||
Select Case RechnungsLandKz
|
||||
Case "A", "AT", "D", "DE", "CH" : Sprache = "DE"
|
||||
End Select
|
||||
|
||||
Select Case Sprache
|
||||
Case "DE"
|
||||
|
||||
TextHTML &= "<b><table style=""font-family:Calibri, Arial;font-weight:bold"">"
|
||||
TextHTML &= "<tr><td>EORI-Nr.:</td><td>" & If(KD.EORITIN, "") & "</td></tr>"
|
||||
TextHTML &= "<tr><td>UID-Nr.:</td><td>" & If(AD.UstIdKz, "") & If(AD.UstIdNr, "") & "</td></tr>"
|
||||
TextHTML &= "<tr><td>Firma:</td><td>" & If(AD.Name_1, "") & If(AD.Name_2, "") & "</td></tr>"
|
||||
TextHTML &= "<tr><td></td><td>" & If(AD.Straße, "") & "</td></tr>"
|
||||
TextHTML &= "<tr><td></td><td>" & If(AD.LandKz, "") & " " & If(AD.PLZ, "") & " " & If(AD.Ort, "") & "</td></tr>"
|
||||
TextHTML &= "</table></b>"
|
||||
TextHTML &= "<br>"
|
||||
TextHTML &= "<br>"
|
||||
TextHTML &= "Sehr geehrte Damen & Herren!" & "<br>"
|
||||
TextHTML &= "<br>"
|
||||
TextHTML &= "Wir teilen Ihnen mit, dass wir für oben genanntes Unternehmen eine Zollabfertigung mit anschließender" & "<br>"
|
||||
TextHTML &= "innergemeinschaftlicher Lieferung (Verfahren 4200) lt. beiliegenden Unterlagen durchgeführt haben." & "<br>"
|
||||
TextHTML &= "<br>"
|
||||
TextHTML &= "Dies muss dem Finanzamt als ""innergemeinschaftlicher Erwerb"" gemeldet werden." & "<br>"
|
||||
TextHTML &= "<br><br>"
|
||||
TextHTML &= "Freundliche Grüße"
|
||||
TextHTML &= "<br><br>"
|
||||
|
||||
Case "EN"
|
||||
|
||||
TextHTML &= "<b><table style=""font-family:Calibri, Arial;font-weight:bold"">"
|
||||
TextHTML &= "<tr><td>EORI-Nr.:</td><td>" & If(KD.EORITIN, "") & "</td></tr>"
|
||||
TextHTML &= "<tr><td>VAT-ID.:</td><td>" & If(AD.UstIdKz, "") & If(AD.UstIdNr, "") & "</td></tr>"
|
||||
TextHTML &= "<tr><td>Company:</td><td>" & If(AD.Name_1, "") & If(AD.Name_2, "") & "</td></tr>"
|
||||
TextHTML &= "<tr><td></td><td>" & If(AD.Straße, "") & "</td></tr>"
|
||||
TextHTML &= "<tr><td></td><td>" & If(AD.LandKz, "") & " " & If(AD.PLZ, "") & " " & If(AD.Ort, "") & "</td></tr>"
|
||||
TextHTML &= "</table></b>"
|
||||
TextHTML &= "<br>"
|
||||
TextHTML &= "<br>"
|
||||
TextHTML &= "Dear Sir or Madam!" & "<br>"
|
||||
TextHTML &= "<br>"
|
||||
TextHTML &= "We would like to inform you, that we made the customs clearance and subsequent intra-community supply of goods for the company above-mentioned (Code 4200).<br>"
|
||||
TextHTML &= "The documents are attached." & "<br>"
|
||||
TextHTML &= "<br>"
|
||||
TextHTML &= "This intra-community acquisition has to be reported to the tax office." & "<br>"
|
||||
TextHTML &= "<br><br>"
|
||||
TextHTML &= "Yours faithfully,"
|
||||
TextHTML &= "<br><br>"
|
||||
|
||||
End Select
|
||||
|
||||
|
||||
|
||||
If showMail Then
|
||||
|
||||
Dim outl As New Outlook.Application
|
||||
Dim Mail_StbFA As Microsoft.Office.Interop.Outlook.MailItem
|
||||
Mail_StbFA = outl.CreateItem(0)
|
||||
Mail_StbFA.Subject = Subject
|
||||
|
||||
If FirmaID = 24 Then Mail_StbFA.SentOnBehalfOfName = SDL.cFakturierung.getDefaultMail("AMBAR",, True)
|
||||
|
||||
|
||||
TextHTML &= cFakturierung.getSignature(AD.LandKz, FirmaID,,,, "")
|
||||
TextHTML &= "</div>"
|
||||
|
||||
Mail_StbFA.HTMLBody = TextHTML
|
||||
|
||||
|
||||
Mail_StbFA.To = MailTo
|
||||
Mail_StbFA.CC = MailCC
|
||||
|
||||
''-----------------------------------------------------------------
|
||||
''Steuerbescheid anfügen
|
||||
''-----------------------------------------------------------------
|
||||
'getAnhaenge(False)
|
||||
|
||||
''Anhang an Mail anfügen
|
||||
''-----------------------------------------------------------------
|
||||
'addAttachments(Mail_StbFA, RechnungsNr, cbxMergePDF.Checked)
|
||||
''-----------------------------------------------------------------
|
||||
|
||||
|
||||
Mail_StbFA.Display()
|
||||
|
||||
Else
|
||||
Dim accountToSend = setAccountToSend(FirmaID)
|
||||
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(MailTo, Subject, TextHTML, accountToSend, False, False, MailCC, accountToSend, attachList,, IIf(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, "d.breimaier@verag.ag", accountToSend))
|
||||
|
||||
''-----------------------------------------------------------------
|
||||
''Steuerbescheid anfügen
|
||||
''-----------------------------------------------------------------
|
||||
'getAnhaenge(False)
|
||||
|
||||
''Anhang an Mail anfügen
|
||||
''-----------------------------------------------------------------
|
||||
'addAttachments(Mail_StbFA, RechnungsNr, cbxMergePDF.Checked)
|
||||
''-----------------------------------------------------------------
|
||||
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
End Function
|
||||
|
||||
Private Function setEmpfaengerMail_ER(SPEDBUCH As cSpeditionsbuch, AD As cAdressen, EMAILTMP As String, EMAILTMPCC As String, EMAILTMPBCC As String, email_receipt As String)
|
||||
|
||||
|
||||
If SPEDBUCH IsNot Nothing Then
|
||||
Dim IMPEXP = (New VERAG_PROG_ALLGEMEIN.SQL).DLookup("isnull(IMEX,'')", "Aviso", "AvisoId='" & SPEDBUCH.AvisoID & "'", "AVISO")
|
||||
Select Case IMPEXP
|
||||
Case "IMPORT"
|
||||
If VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an IMPORT") <> "" Then
|
||||
EMAILTMP = IIf(email_receipt = "", VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an IMPORT"), email_receipt) 'VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an")
|
||||
|
||||
EMAILTMPCC = IIf(email_receipt = "", VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressCC(AD.AdressenNr, "Rechnung an IMPORT"), VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressCC(AD.AdressenNr, "Rechnung an (ATILLA)"))
|
||||
|
||||
EMAILTMPBCC = IIf(email_receipt = "", VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressBCC(AD.AdressenNr, "Rechnung an IMPORT"), VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressBCC(AD.AdressenNr, "Rechnung an (ATILLA)"))
|
||||
|
||||
End If
|
||||
Case "EXPORT"
|
||||
If VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an EXPORT") <> "" Then
|
||||
EMAILTMP = IIf(email_receipt = "", VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an EXPORT"), email_receipt) 'VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an")
|
||||
|
||||
EMAILTMPCC = IIf(email_receipt = "", VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressCC(AD.AdressenNr, "Rechnung an EXPORT"), VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressCC(AD.AdressenNr, "Rechnung an (ATILLA)"))
|
||||
|
||||
EMAILTMPBCC = IIf(email_receipt = "", VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressBCC(AD.AdressenNr, "Rechnung an EXPORT"), VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressBCC(AD.AdressenNr, "Rechnung an (ATILLA)"))
|
||||
|
||||
End If
|
||||
End Select
|
||||
End If
|
||||
|
||||
|
||||
'wenn leere Mailadressen, dann Standardadresse holen
|
||||
If EMAILTMP = "" And EMAILTMPCC = "" And EMAILTMPBCC = "" Then
|
||||
EMAILTMP = IIf(email_receipt = "", VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an"), email_receipt) 'VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an")
|
||||
|
||||
EMAILTMPCC = IIf(email_receipt = "", VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressCC(AD.AdressenNr, "Rechnung an"), VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressCC(AD.AdressenNr, "Rechnung an (ATILLA)"))
|
||||
|
||||
EMAILTMPBCC = IIf(email_receipt = "", VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressBCC(AD.AdressenNr, "Rechnung an"), VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressBCC(AD.AdressenNr, "Rechnung an (ATILLA)"))
|
||||
|
||||
|
||||
End If
|
||||
|
||||
End Function
|
||||
|
||||
Private Function setEmpfaengerMail_SR(SR_DT As DataTable, AD As cAdressen, EMAILTMP As String, EMAILTMPCC As String, EMAILTMPBCC As String, FirmaID As Integer, SammelrechungArt As String)
|
||||
|
||||
If SammelrechungArt <> 6 Then
|
||||
|
||||
|
||||
Dim email_receipt As String = ""
|
||||
|
||||
Dim allAtilla = IIf(FirmaID = 7, True, False)
|
||||
If SR_DT IsNot Nothing AndAlso SR_DT.Rows.Count > 0 Then
|
||||
For Each r In SR_DT.Rows
|
||||
If "4801" <> r("FilialenNr") And "4802" <> r("FilialenNr") Then
|
||||
allAtilla = False
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
|
||||
email_receipt = IIf(allAtilla, VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an (ATILLA)"), "")
|
||||
|
||||
EMAILTMP = IIf(email_receipt = "", VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an"), email_receipt) 'VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an")
|
||||
EMAILTMPCC = IIf(email_receipt = "", VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressCC(AD.AdressenNr, "Rechnung an"), VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressCC(AD.AdressenNr, "Rechnung an (ATILLA)"))
|
||||
EMAILTMPBCC = IIf(email_receipt = "", VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressBCC(AD.AdressenNr, "Rechnung an"), VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdressBCC(AD.AdressenNr, "Rechnung an (ATILLA)"))
|
||||
|
||||
Else
|
||||
|
||||
If AD.E_Mail IsNot Nothing AndAlso AD.E_Mail <> "" Then EMAILTMP &= AD.E_Mail & ";"
|
||||
If AD.E_Mail2 IsNot Nothing AndAlso AD.E_Mail2 <> "" Then EMAILTMP &= AD.E_Mail2 & ";"
|
||||
|
||||
|
||||
End If
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
End Class
|
||||
|
||||
Reference in New Issue
Block a user