This commit is contained in:
2024-03-18 16:56:44 +01:00

View File

@@ -703,6 +703,7 @@ Public Class frmStartOptions
sendMailZollbeleg(pfad, SND.tblSnd_FrachtfuehrerKdNr, art, list, BezugsNr, SND, SND.getKdAtrNr("FRAECHTER"))
sendMailZollbeleg(pfad, SND.tblSnd_AvisiererKdNr, art, list, BezugsNr, SND, SND.getKdAtrNr("AVISIERER"))
sendMailZollbeleg(pfad, SND.tblSnd_AuftraggeberKdNr, art, list, BezugsNr, SND, SND.getKdAtrNr("AUFTRAGGEBER"))
sendMailZollbelegGESTELLUNGSADRESSE(pfad, SND.NCTS_ngaId, art, list, BezugsNr, SND)
End If
Catch ex As Exception
@@ -966,6 +967,154 @@ Public Class frmStartOptions
End Try
End Sub
Sub sendMailZollbelegGESTELLUNGSADRESSE(pfad As String, nga_id As Object, art As String, ByRef list As List(Of Integer), BezugsNr As String, SND As VERAG_PROG_ALLGEMEIN.cSendungen)
Try
If nga_id IsNot Nothing Then
If nga_id > 0 Then 'Not list.Exists(Function(x) x = KundenNr) Then 'nicht bereits verarbeitet
' list.Add(KundenNr)
Dim pfadList As New List(Of String)
pfadList.Add(pfad)
Dim GST As New VERAG_PROG_ALLGEMEIN.cNCTSGestellungsadressen(nga_id)
If GST IsNot Nothing Then ' AndAlso KD.EmailFreigabe Then
Dim AVISO = VERAG_PROG_ALLGEMEIN.cAviso.getAvisoById(SND.tblSnd_AvisoID)
'Wenn Freigabe-Mail aktiv und Steuerbescheid oder VBD gewählt, soll bei Fremdgrenzen die BelegMail gesendet werden.
Dim sendMailFremdgrenze = False
'If KD_ERW.EmailFreigabe_Art = "FG" Or KD_ERW.EmailFreigabe_Export_Art = "FG" Then
' If KD_ERW.EmailFreigabe_SteuerbescheidPDF Or KD_ERW.EmailFreigabe_VBDPDF Then
' If AVISO IsNot Nothing Then
' 'Fremdgrenze
' If AVISO.Grenzstelle = "???" Then
' sendMailFremdgrenze = True
' Else
' 'Prüfen ob WO oder ZA
' Dim GRZ As New VERAG_PROG_ALLGEMEIN.cGrenzstelle(AVISO.Grenzstelle)
' If GRZ IsNot Nothing AndAlso GRZ.hasEntry Then
' If GRZ.grz_Zollamt Then sendMailFremdgrenze = True '--> Mail bei Beleg
' If GRZ.grz_Warenort Then sendMailFremdgrenze = True '--> Mail bei Beleg
' End If
' End If
' End If
' End If
'End If
If True Then ' Bei AVM ist es immer nach Freigabe, auch ZNV
Dim Standort = "SUB"
Select Case SND.FilialenNr
Case "5501" : Standort = "IMX"
Case "5601" : Standort = "UNI"
Case "5701" : Standort = "AMB"
Case "5801" : Standort = "FO"
Case "4801" : Standort = "ATL"
Case "4802" : Standort = "ATL"
Case "5003" : Standort = "SBG"
Case "5103" : Standort = "WAI"
Case "5303" : Standort = "NKD"
Case Else
Standort = "SUB"
End Select
Dim cStandorteDAL As New VERAG_PROG_ALLGEMEIN.cStandorteDAL
Dim cStandort = cStandorteDAL.LesenStandort(-1, "", "SELECT * FROM Standorte WHERE Standort = '" & Standort & "'")
Dim FirmaTmp = VERAG_PROG_ALLGEMEIN.cAllgemein.getFirmaFromFiliale2(SND.FilialenNr)
Dim betreff = cStandort.eMail_Zollbeleg_Betreff '"Zollbeleg"
betreff = betreff.Replace("%LKW%", AVISO.LKW_Nr)
betreff = betreff.Replace("%AbfertigungsNr%", SND.FilialenNr & "/" & SND.AbfertigungsNr)
betreff = betreff.Replace("%Standort%", "")
betreff = betreff.Replace("%Uhrzeit%", "")
betreff = betreff.Replace("%KdAuftrNr%", "")
Dim body = cStandort.eMail_Zollbeleg_Text
Dim EMails As String = ""
Dim EMails_CC As String = ""
Dim EMails_BCC As String = ""
' Dim Emails_list_sent As New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList
' VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigung.eMails_einlesen(KundenNr, Mail_Art, EMails, EMails_CC, EMails_BCC, Emails_list_sent)
EMails = If(GST.nga_gestellungsMail, "")
body = body.Replace("%Platzhalter%", "")
body = body.Replace("%LKW%", AVISO.LKW_Nr)
body = body.Replace("%AbfertigungsNr%", SND.FilialenNr & "/" & SND.AbfertigungsNr)
body = body.Replace("%Standort%", getStandortTXT(AVISO))
body = body.Replace("%Uhrzeit%", Now.ToShortDateString & " " & Now.ToShortTimeString & " Uhr")
body = body.Replace("%KdAuftrNr%", "")
''!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
'VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("!!!!!!!!!!!!!!!!!!!!!!!!!: " & vbNewLine & EMails & vbNewLine & EMails_CC, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL)
''!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
'!!!!!!!!!!!!!!!!!!!!!!!!!!
'EMails = "luxbauer@gmail.com"
'EMails_CC = ""
'EMails_BCC = ""
'!!!!!!!!!!!!!!!!!!!!!!!!!!
'If EMails_BCC = "" Then
' EMails_BCC = "al@verag.ag"
'Else
' EMails_BCC &= ";al@verag.ag"
''End If
''!!!!!!!!!!!!!!!!!!!!!!!!!!
'If KundenNr = 706113 Then
' EMails = "al@verag.ag"
' EMails_CC = ""
' EMails_BCC = ""
'End If
''!!!!!!!!!!!!!!!!!!!!!!!!!!
betreff = betreff.Replace(vbNewLine, "").Replace(vbCr, "").Replace(vbLf, "").Replace(vbCrLf, "").Replace(System.Environment.NewLine, " ")
If EMails <> "" Then
Select Case art
Case "VBD"
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.AVISO_OUT_GESTELLUNGMAIL, art,,, nga_id, SND.tblSnd_AvisoID, SND.tblSnd_SendungID, SND.FilialenNr, SND.AbfertigungsNr)
API.api_EMail = EMails
API.api_EMailCC = EMails_CC
API.api_EMailBCC = EMails_BCC
API.api_EMailSubject = betreff
API.api_EMailText = body
API.api_EMailAttCnt = pfadList.Count
betreff = betreff.Replace("%Zollbeleg%", "Versandbegleitdokument " & BezugsNr)
If VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(EMails, betreff, body, getAbsenderEmail(FirmaTmp), False, False, EMails_CC, EMails_BCC, pfadList) Then
API.UPDTAE_OK()
insertSendungsVermerk(SND.tblSnd_SendungID, SND.tblSnd_AvisoID, "Zollbeleg '" & art & "' gesendet an: " & EMails, 46)
Else
API.UPDTAE_ERR()
End If
End Select
End If
End If
End If
End If
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL)
End Try
End Sub
Shared Sub insertSendungsVermerk(SendungID As Integer, AvisoID As Integer, Text As String, VermerkCodeId As Integer, Optional Beschreibung As String = "", Optional VorauskasseId As Object = Nothing, Optional addAuto As Boolean = False)