Mailsender, etc.

This commit is contained in:
2025-07-30 16:06:59 +02:00
parent 81f53b1958
commit 429958d2d8
6 changed files with 445 additions and 119 deletions

View File

@@ -5,36 +5,31 @@ Public Class cZollsysteme_Aktenbeschriftung
Property Praeferenznachweis As String
Property Handelsrechnung As String
Property PräferenzAufRechnung As String
Property Colli As String
Property Gewicht As String
Property num_Colli As Integer = 0
Property num_Gewicht As Double = 0
Property Rechnungspreis As String
Property Warenbezeichung As String
Property AbgabenKonto As String
Property Garantie As String
Property Absender As String
Property Empfaenger As String
Property Anmelder As String
Property Vertreter As String
Property Sachbearbeiter As String
Property VerBestLandZst As String
Property Vorpapier As String
Property ATCMRN As String
Property ABGABEN_EUST As Double = 0
Property ABGABEN_ZOLL As Double = 0
Property ANZ_POS As Integer = 0
Property Zollstelle_Eingang As String = ""
Property Waehrungscode As String = "EUR"
Property Incoterms As String = ""
Property Geschaeftsart As String = ""
Property isUeT1 As Boolean = False
Property dtWARENPOS As New DataTable
Shared SQL As New VERAG_PROG_ALLGEMEIN.SQL
@@ -99,12 +94,8 @@ Public Class cZollsysteme_Aktenbeschriftung
End If
' MsgBox("1")
getDataByBezugsnummer = False
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
' Case "UNISPED"
Case ""
Case Else
'MsgBox("2 " & Abfertigungsart)
Select Case Abfertigungsart
'MsgBox("2 " & Abfertigungsart)
Select Case Abfertigungsart
Case 38, 26 'AT
Select Case Zollsystem_Land
Case "AT"
@@ -151,7 +142,7 @@ Public Class cZollsysteme_Aktenbeschriftung
End If
End If
End Select
End Select
End Function
@@ -286,7 +277,7 @@ Public Class cZollsysteme_Aktenbeschriftung
' Dim Währungsschlüssel As String = "900" 'Standard EUR
' Tabelle zsAnmValData lesen.
Dim DTzsAnmValData As DataTable = SQL.loadDgvBySql("SELECT InvCurr, InvVal" &
Dim DTzsAnmValData As DataTable = SQL.loadDgvBySql("SELECT TransacCd,TermDelCd,InvCurr, InvVal" &
" FROM zsAnmValData" &
" WHERE (LizenzNr = '" & DR_zsAnmRefs.Item("LizenzNr") & "') And (OperatorID = " & DR_zsAnmRefs.Item("OperatorID") & ") And (VorgangID = '" & DR_zsAnmRefs.Item("VorgangID") & "') And (AnmID = " & DR_zsAnmRefs.Item("AnmID") & ")", EZOLL_SQL)
If DTzsAnmValData.Rows().Count > 0 Then
@@ -299,6 +290,10 @@ Public Class cZollsysteme_Aktenbeschriftung
'End If
' fNEF.cbxWaehrung._value = DTzsAnmValData.Rows(0).Item("InvCurr") ' = DLookup("[Währungsschlüssel]", "Währungstabelle", "[Währungscode] = '" & DTzsAnmValData.Rows(0).Item("InvCurr") & "'")
If Not IsNull(DTzsAnmValData.Rows(0).Item("InvVal")) Then Rechnungspreis = CDbl(DTzsAnmValData.Rows(0).Item("InvVal"))
If Not IsNull(DTzsAnmValData.Rows(0).Item("InvCurr")) Then Waehrungscode = DTzsAnmValData.Rows(0).Item("InvCurr")
If Not IsNull(DTzsAnmValData.Rows(0).Item("TermDelCd")) Then Incoterms = DTzsAnmValData.Rows(0).Item("TermDelCd")
If Not IsNull(DTzsAnmValData.Rows(0).Item("TransacCd")) Then Geschaeftsart = DTzsAnmValData.Rows(0).Item("TransacCd")
End If
@@ -319,13 +314,48 @@ Public Class cZollsysteme_Aktenbeschriftung
'Dim pkAnz = SQL.DLookup("sum(cast(Nr as float))", "[zsAnmGdsItemPack]", "(LizenzNr = '" & DR_zsAnmRefs.Item("LizenzNr") & "') And (OperatorID = " & DR_zsAnmRefs.Item("OperatorID") & ") And (VorgangID = '" & DR_zsAnmRefs.Item("VorgangID") & "') And (AnmID = " & DR_zsAnmRefs.Item("AnmID") & ")", EZOLL_SQL, "")
' Tabelle zsAnmEntryCO lesen.
Dim DTAnmEntryCO As DataTable = SQL.loadDgvBySql("SELECT Ref" &
" FROM zsAnmEntryCO" &
" WHERE (LizenzNr = '" & DR_zsAnmRefs.Item("LizenzNr") & "') And (OperatorID = " & DR_zsAnmRefs.Item("OperatorID") & ") And (VorgangID = '" & DR_zsAnmRefs.Item("VorgangID") & "') And (AnmID = " & DR_zsAnmRefs.Item("AnmID") & ")", EZOLL_SQL)
If DTAnmEntryCO.Rows().Count > 0 Then
If Not IsNull(DTAnmEntryCO.Rows(0).Item("Ref")) Then Zollstelle_Eingang = DTAnmEntryCO.Rows(0).Item("Ref")
End If
' Tabelle zsAnmGdsitem lesen.
Dim DTzsAnmGdsitem As DataTable = SQL.loadDgvBySql("SELECT GdsDes" &
Dim DTzsAnmGdsitem As DataTable = SQL.loadDgvBySql("SELECT GdsItemID,ComCd, GdsDes,Net, ProcCd, Orig, Pref,ItVal" &
" FROM zsAnmGdsitem" &
" WHERE (LizenzNr = '" & DR_zsAnmRefs.Item("LizenzNr") & "') And (OperatorID = " & DR_zsAnmRefs.Item("OperatorID") & ") And (VorgangID = '" & DR_zsAnmRefs.Item("VorgangID") & "') And (AnmID = " & DR_zsAnmRefs.Item("AnmID") & ")" &
" ORDER BY GdsItemID", EZOLL_SQL)
If DTzsAnmGdsitem.Rows().Count > 0 Then
initDTWarenpos()
For Each row In DTzsAnmGdsitem.Rows
Dim R As DataRow = dtWARENPOS.NewRow
If Not IsNull(row.Item("GdsItemID")) Then R("PosNr") = row.Item("GdsItemID")
If Not IsNull(row.Item("ComCd")) Then R("WarenNr") = row.Item("ComCd")
If Not IsNull(row.Item("GdsDes")) Then R("WarenBez") = row.Item("GdsDes")
If Not IsNull(row.Item("ProcCd")) Then R("Verfahren") = row.Item("ProcCd")
If Not IsNull(row.Item("Pref")) Then R("Preferenz") = row.Item("Pref")
If Not IsNull(row.Item("ItVal")) Then R("PosWert") = row.Item("ItVal")
If Not IsNull(row.Item("Net")) Then R("Netto") = row.Item("Net")
If Not IsNull(row.Item("Orig")) Then R("Herkunft") = row.Item("Orig")
If Not IsNull(row.Item("ComCd")) AndAlso IsNumeric(row.Item("ComCd")) Then
R("isCBAM") = checkisCBAM(row.Item("ComCd"))
End If
dtWARENPOS.Rows.Add(R)
Next
If Not IsNull(DTzsAnmGdsitem.Rows(0).Item("GdsDes")) Then
If IsNull(Warenbezeichung) Then
Warenbezeichung = DTzsAnmGdsitem.Rows(0).Item("GdsDes")
@@ -405,6 +435,42 @@ Public Class cZollsysteme_Aktenbeschriftung
Return load_EZA_FromDAKOSY(EZA)
End Function
Function checkisCBAM(cbamWarenNr As String) As Boolean
If (Left(cbamWarenNr, 4) = "2523" Or
Left(cbamWarenNr, 4) = "2716" Or
Left(cbamWarenNr, 4) = "2808" Or
Left(cbamWarenNr, 4) = "2814" Or
Left(cbamWarenNr, 4) = "3102" Or
Left(cbamWarenNr, 4) = "3105" Or
Left(cbamWarenNr, 4) = "7201" Or
Left(cbamWarenNr, 4) = "7203" Or
Left(cbamWarenNr, 4) = "7318" Or
Left(cbamWarenNr, 6) = "283421" Or
Left(cbamWarenNr, 6) = "260112" Or
Left(cbamWarenNr, 6) = "720211" Or
Left(cbamWarenNr, 6) = "720219" Or
Left(cbamWarenNr, 6) = "720241" Or
Left(cbamWarenNr, 6) = "720249" Or
Left(cbamWarenNr, 6) = "720260" Or
Left(cbamWarenNr, 6) = "280410" Or
Left(cbamWarenNr, 4) = "7326" Or
Left(cbamWarenNr, 4) = "7601" Or
Left(cbamWarenNr, 4) = "7616" Or
Left(cbamWarenNr, 8) = "25070080" Or
CInt(Left(cbamWarenNr, 4)) <= 7301 And CInt(Left(cbamWarenNr, 4)) >= 7311 Or
CInt(Left(cbamWarenNr, 4)) <= 7205 And CInt(Left(cbamWarenNr, 4)) >= 7229 Or
CInt(Left(cbamWarenNr, 4)) <= 7603 And CInt(Left(cbamWarenNr, 4)) >= 7614) And Not Left(cbamWarenNr, 6) = "310560" Then
Return True
Else
Return False
End If
End Function
Function load_EZA_FromDAKOSY(EZA As DAKOSY_Worker.cDakosyEZA) As Boolean
Try
@@ -414,7 +480,7 @@ Public Class cZollsysteme_Aktenbeschriftung
'
If IsNumeric(If(EZA.eza_GesamtRohmasse, "")) Then Me.Gewicht = CDbl(EZA.eza_GesamtRohmasse).ToString("N1") & " kg" : num_Gewicht = CDbl(EZA.eza_GesamtRohmasse).ToString("N1")
If IsNumeric(If(EZA.eza_Rechnungspreis, "")) Then Me.Rechnungspreis = CDbl(EZA.eza_Rechnungspreis).ToString("N2")
Me.Rechnungspreis &= " " & If(EZA.eza_Rechnungswaehrung, "")
'Me.Rechnungspreis &= " " & If(EZA.eza_Rechnungswaehrung, "")
ATCMRN = If(EZA.eza_ANR, "")
' Me.Rechnungspreis &= " " & If(EZA.eza_Rechnungswaehrung, "")
@@ -428,9 +494,33 @@ Public Class cZollsysteme_Aktenbeschriftung
Dim Colli As Integer = 0
Dim cnt As Integer = 0
If EZA.eza_WARENPOS.Count > 0 Then
initDTWarenpos()
Me.Warenbezeichung = EZA.eza_WARENPOS.Count & " POS: "
Me.Warenbezeichung &= If(EZA.eza_WARENPOS.Count = 1, If(EZA.eza_WARENPOS(0).ezaWP_Warenbezeichnung, ""), "* diverse *")
For Each POS In EZA.eza_WARENPOS
Dim R As DataRow = dtWARENPOS.NewRow
If Not IsNull(POS.ezaWP_PositionsNummer) Then R("PosNr") = POS.ezaWP_PositionsNummer
If Not IsNull(POS.ezaWP_WarennummerEZT) Then R("WarenNr") = POS.ezaWP_WarennummerEZT
If Not IsNull(POS.ezaWP_Warenbezeichnung) Then R("WarenBez") = POS.ezaWP_Warenbezeichnung
If Not IsNull(POS.ezaWP_AnmeldeVErfahren) Then R("Verfahren") = POS.ezaWP_AnmeldeVErfahren
If Not IsNull(POS.ezaWP_Artikelpreis) Then R("PosWert") = POS.ezaWP_Artikelpreis
If Not IsNull(POS.ezaWP_BeguenstigungBenatragtCode) Then R("Preferenz") = POS.ezaWP_BeguenstigungBenatragtCode
If Not IsNull(POS.ezaWP_UrsprungslandCode) Then R("Herkunft") = POS.ezaWP_UrsprungslandCode
If Not IsNull(POS.ezaWP_Rohmasse) Then R("Netto") = POS.ezaWP_Rohmasse
If Not IsNull(POS.ezaWP_WarennummerEZT) AndAlso IsNumeric(POS.ezaWP_WarennummerEZT) Then
R("isCBAM") = checkisCBAM(POS.ezaWP_WarennummerEZT)
End If
dtWARENPOS.Rows.Add(R)
For Each UL In POS.ezaWP_UNTERLAGEN
If UL.ezaWpUl_Art IsNot Nothing Then
Select Case UL.ezaWpUl_Art
@@ -469,7 +559,7 @@ Public Class cZollsysteme_Aktenbeschriftung
Select Case AD.ezaAd_AdressTyp
Case "CZ" : Absender = ""'Anschrift --> nicht benötigt
Case "CZ" : Absender = Anschrift'Anschrift --> nicht benötigt
Case "CN" : Empfaenger = Anschrift
Case "DT" : Anmelder = Anschrift
Case "CB" : Vertreter = "" ' Anschrift - -> nicht benötigt
@@ -505,6 +595,14 @@ Public Class cZollsysteme_Aktenbeschriftung
AbgabenKonto = listToString(AUFSCHUB_List)
If EZA.eza_ArtGeschaeftCode IsNot Nothing AndAlso EZA.eza_ArtGeschaeftCode <> "" Then Geschaeftsart = EZA.eza_ArtGeschaeftCode
If EZA.eza_LieferbedingungCode IsNot Nothing AndAlso EZA.eza_LieferbedingungCode <> "" Then Incoterms = EZA.eza_LieferbedingungCode
If EZA.eza_LieferbedingungCode IsNot Nothing AndAlso EZA.eza_LieferbedingungCode <> "" Then Incoterms = EZA.eza_LieferbedingungCode
If EZA.eza_LieferbedingungOrt IsNot Nothing AndAlso EZA.eza_LieferbedingungOrt <> "" AndAlso Incoterms <> "" Then Incoterms &= " " & EZA.eza_LieferbedingungOrt
If EZA.eza_Rechnungswaehrung IsNot Nothing AndAlso EZA.eza_Rechnungswaehrung <> "" Then Waehrungscode = EZA.eza_Rechnungswaehrung
Return True
Catch ex As Exception
@@ -991,25 +1089,25 @@ Public Class cZollsysteme_Aktenbeschriftung
'Frächter
Dim DTzsAnmCarrier As DataTable = SQL.loadDgvBySql("SELECT * FROM [zsAnmCarrTra] WHERE (LizenzNr = '" & r.Item("LizenzNr") & "') And (OperatorID = " & r.Item("OperatorID") & ") And (VorgangID = '" & r.Item("VorgangID") & "') And (AnmID = " & AnmID & ")", "EZOLL")
If DTzsAnmCarrier.Rows().Count > 0 Then
VERAG_NCTS.NCTS_Data.Carrier.Name = DTzsAnmCarrier.Rows(0).Item("Na")
If Not SQL.IsNull(DTzsAnmCarrier.Rows(0).Item("Pst")) Then VERAG_NCTS.NCTS_Data.Carrier.Adress.Postcode = DTzsAnmCarrier.Rows(0).Item("Pst")
If Not SQL.IsNull(DTzsAnmCarrier.Rows(0).Item("Strt")) Then VERAG_NCTS.NCTS_Data.Carrier.Adress.Street = DTzsAnmCarrier.Rows(0).Item("Strt")
If Not SQL.IsNull(DTzsAnmCarrier.Rows(0).Item("Cty")) Then VERAG_NCTS.NCTS_Data.Carrier.Adress.City = DTzsAnmCarrier.Rows(0).Item("Cty")
If Not SQL.IsNull(DTzsAnmCarrier.Rows(0).Item("Ctry")) Then VERAG_NCTS.NCTS_Data.Carrier.Adress.Country = DTzsAnmCarrier.Rows(0).Item("Ctry")
If Not SQL.IsNull(DTzsAnmCarrier.Rows(0).Item("TIN")) Then VERAG_NCTS.NCTS_Data.Carrier.EORI = DTzsAnmCarrier.Rows(0).Item("TIN")
'VERAG_NCTS.NCTS_Data.Carrier.EORI_NL = If(NCTS_TMP.ncts_Empfaenger_NLNR, "")
'VERAG_NCTS.NCTS_Data.Carrier.UID_Nr = If(NCTS_TMP.ncts_Empfaenger_NLNR, "")
End If
If DTzsAnmCarrier.Rows().Count > 0 Then
VERAG_NCTS.NCTS_Data.Carrier.Name = DTzsAnmCarrier.Rows(0).Item("Na")
If Not SQL.IsNull(DTzsAnmCarrier.Rows(0).Item("Pst")) Then VERAG_NCTS.NCTS_Data.Carrier.Adress.Postcode = DTzsAnmCarrier.Rows(0).Item("Pst")
If Not SQL.IsNull(DTzsAnmCarrier.Rows(0).Item("Strt")) Then VERAG_NCTS.NCTS_Data.Carrier.Adress.Street = DTzsAnmCarrier.Rows(0).Item("Strt")
If Not SQL.IsNull(DTzsAnmCarrier.Rows(0).Item("Cty")) Then VERAG_NCTS.NCTS_Data.Carrier.Adress.City = DTzsAnmCarrier.Rows(0).Item("Cty")
If Not SQL.IsNull(DTzsAnmCarrier.Rows(0).Item("Ctry")) Then VERAG_NCTS.NCTS_Data.Carrier.Adress.Country = DTzsAnmCarrier.Rows(0).Item("Ctry")
If Not SQL.IsNull(DTzsAnmCarrier.Rows(0).Item("TIN")) Then VERAG_NCTS.NCTS_Data.Carrier.EORI = DTzsAnmCarrier.Rows(0).Item("TIN")
'VERAG_NCTS.NCTS_Data.Carrier.EORI_NL = If(NCTS_TMP.ncts_Empfaenger_NLNR, "")
'VERAG_NCTS.NCTS_Data.Carrier.UID_Nr = If(NCTS_TMP.ncts_Empfaenger_NLNR, "")
End If
' Tabelle zsAnmGrteeGrteeRef lesen.
Dim DTzsAnmGrteeGrteeRef As DataTable = SQL.loadDgvBySql("SELECT GRN, GVal" &
' Tabelle zsAnmGrteeGrteeRef lesen.
Dim DTzsAnmGrteeGrteeRef As DataTable = SQL.loadDgvBySql("SELECT GRN, GVal" &
" FROM zsAnmGrteeGrteeRef" &
" WHERE (LizenzNr = '" & r.Item("LizenzNr") & "') And (OperatorID = " & r.Item("OperatorID") & ") And (VorgangID = '" & r.Item("VorgangID") & "') And (AnmID = " & AnmID & ")" &
" ORDER BY GrteeID, GrteeRefID", "EZOLL")
If DTzsAnmGrteeGrteeRef.Rows().Count > 0 Then
If DTzsAnmGrteeGrteeRef.Rows().Count > 0 Then
VERAG_NCTS.NCTS_Data.Guarantee.Amount = 0
For Each DTzsAnmGrteeGrteeRef_row In DTzsAnmGrteeGrteeRef.Rows()
If Not SQL.IsNull(DTzsAnmGrteeGrteeRef_row.item("GRN")) Then VERAG_NCTS.NCTS_Data.Guarantee.GRN = DTzsAnmGrteeGrteeRef_row.item("GRN")
@@ -1055,6 +1153,29 @@ Public Class cZollsysteme_Aktenbeschriftung
End Function
Sub initDTWarenpos()
If dtWARENPOS IsNot Nothing And Not dtWARENPOS.Columns.Contains("PosNr") Then
dtWARENPOS.Columns.Add("PosNr", GetType(Integer))
dtWARENPOS.Columns.Add("WarenNr", GetType(String))
dtWARENPOS.Columns.Add("WarenBez", GetType(String))
dtWARENPOS.Columns.Add("Verfahren", GetType(Integer))
dtWARENPOS.Columns.Add("Preferenz", GetType(Integer))
dtWARENPOS.Columns.Add("PosWert", GetType(Double))
dtWARENPOS.Columns.Add("isCBAM", GetType(Boolean))
dtWARENPOS.Columns.Add("Herkunft", GetType(String))
dtWARENPOS.Columns.Add("Netto", GetType(Integer))
Else
dtWARENPOS.Clear()
End If
End Sub
Shared Function getGRTY_fromEZOLL(LRN As String) As String
Try
Return SQL.getValueTxtBySql("SELECT TOP 1 GRN FROM zsAnmRefs inner join zsAnmGrteeGrteeRef on zsAnmGrteeGrteeRef.AnmID=zsAnmRefs.AnmID WHERE (zsAnmRefs.VorgangID = 'AV') AND (LRN = '" & LRN & "')", "EZOLL")

View File

@@ -58,7 +58,7 @@ Module Mail
' PARAM = "NCTSLIST_TOBB"
' PARAM = "NCTSLIST_TOBB"
'------------------------------------------------------------------------------------
' PARAM = "ZF"
'PARAM = "ZF_QUARTER"
If PARAM = "" Then
System.Console.WriteLine("OPTION nicht erkannt!")
@@ -274,13 +274,16 @@ Module Mail
Dim von = CDate("01." & Now.AddMonths(-1).Month & "." & Now.AddMonths(-1).Year)
Dim bis = CDate("01." & Now.Month & "." & Now.Year).AddDays(-1)
'--------ZF PASSAU------------
Dim KdNr As String = "714869"
If dtParam.Rows.Count = 1 Then
System.Console.WriteLine("OPTION erkannt: " & dtParam.Rows(0).Item("ms_info"))
System.Console.WriteLine("Auswertung Details gestartet...")
If SendEmail_ZF(dtParam.Rows(0).Item("ms_an"), KdNr, von, bis, dtParam.Rows(0).Item("ms_cc"), dtParam.Rows(0).Item("ms_bcc"), dtParam.Rows(0).Item("ms_subject"), dtParam.Rows(0).Item("ms_mailtext")) Then
If SendEmail_ZF(dtParam.Rows(0).Item("ms_an"), KdNr, von, bis, "monthly", dtParam.Rows(0).Item("ms_cc"), dtParam.Rows(0).Item("ms_bcc"), dtParam.Rows(0).Item("ms_subject"), dtParam.Rows(0).Item("ms_mailtext")) Then
System.Console.WriteLine("Vorgang erfolgreich abgeschlossen ...")
End If
@@ -288,7 +291,7 @@ Module Mail
System.Console.WriteLine("OPTION erkannt: ZF _ Erstellt eine monaltiche Auswertung der DAKSOY-Abfertigungen für ZF.")
System.Console.WriteLine("Auswertung Details gestartet...")
If SendEmail_ZF("robert.buchbauer@zf.com; teresa.elster@zf.com", KdNr, von, bis) Then
If SendEmail_ZF("robert.buchbauer@zf.com; teresa.elster@zf.com", KdNr, von, bis, "monthly") Then
System.Console.WriteLine("Vorgang erfolgreich abgeschlossen ...")
End If
@@ -309,7 +312,7 @@ Module Mail
System.Console.WriteLine("OPTION erkannt: " & dtParam.Rows(0).Item("ms_info"))
System.Console.WriteLine("Auswertung Details gestartet...")
If SendEmail_ZF(dtParam.Rows(0).Item("ms_an"), KdNr, von, bis, dtParam.Rows(0).Item("ms_cc"), dtParam.Rows(0).Item("ms_bcc"), dtParam.Rows(0).Item("ms_subject"), dtParam.Rows(0).Item("ms_mailtext")) Then
If SendEmail_ZF(dtParam.Rows(0).Item("ms_an"), KdNr, von, bis, "monthly", dtParam.Rows(0).Item("ms_cc"), dtParam.Rows(0).Item("ms_bcc"), dtParam.Rows(0).Item("ms_subject"), dtParam.Rows(0).Item("ms_mailtext")) Then
System.Console.WriteLine("Vorgang erfolgreich abgeschlossen ...")
End If
@@ -318,7 +321,7 @@ Module Mail
System.Console.WriteLine("OPTION erkannt: ZF _ Erstellt eine monaltiche Auswertung der Abfertigungen für ZF.")
System.Console.WriteLine("Auswertung Details gestartet...")
If SendEmail_ZF("teresa.elster@zf.com;manfred.lindbichler@zf.com;walter.gnadlinger@zf.com", KdNr, von, bis) Then
If SendEmail_ZF("teresa.elster@zf.com;manfred.lindbichler@zf.com;walter.gnadlinger@zf.com", KdNr, von, bis, "monthly") Then
System.Console.WriteLine("Vorgang erfolgreich abgeschlossen ...")
End If
@@ -326,6 +329,50 @@ Module Mail
End If
Case "ZF_QUARTER" 'umgebaut auf neue Mailsender-Logik
Dim quartal As Integer = ((Now.Month - 1) \ 3)
Dim von = CDate("01." & (quartal - 1) * 3 + 1 & "." & Now.Year)
Dim bis = CDate(von.AddMonths(3).AddDays(-1))
'--------ZF STEYR------------
Dim KdNr As String = "764755"
If dtParam.Rows.Count = 1 Then
System.Console.WriteLine("OPTION erkannt: " & dtParam.Rows(0).Item("ms_info"))
System.Console.WriteLine("Auswertung Details gestartet...")
If SendEmail_ZF(dtParam.Rows(0).Item("ms_an"), KdNr, von, bis, "quarter", dtParam.Rows(0).Item("ms_cc"), dtParam.Rows(0).Item("ms_bcc"), dtParam.Rows(0).Item("ms_subject"), dtParam.Rows(0).Item("ms_mailtext")) Then
System.Console.WriteLine("Vorgang erfolgreich abgeschlossen ...")
End If
Else
System.Console.WriteLine("OPTION erkannt: ZF _ Erstellt eine Auswertung pro Quartal aller Abfertigungen für ZF.")
System.Console.WriteLine("Auswertung Details gestartet...")
If SendEmail_ZF("d.breimaier@verag.ag; ml@verag.ag", KdNr, von, bis, "quarter") Then
System.Console.WriteLine("Vorgang erfolgreich abgeschlossen ...")
End If
End If
'--------ZF THYRNAU------------
KdNr = "718486"
'NIX...
'--------ZF PASSAU------------
KdNr = "714869"
'NIX...
Case "QS_AUFTEILUNG"
System.Console.WriteLine("OPTION erkannt: QS_AUFTEILUNG _ Erstellt die Auswertung der QS-AUFTEILUNG.")
System.Console.WriteLine("Auswertung gestartet...")
@@ -747,18 +794,18 @@ Module Mail
Dim anhenge As New List(Of String)
anhenge.Add(excel)
If VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(Mailto, Subject, Body,,, False,, "d.breimaier@verag.ag;schulung@verag.ag", anhenge) Then
System.Console.WriteLine("E-Mail gesendet.")
System.Console.WriteLine("Erfolgreich!")
Else
System.Console.WriteLine("ERROR BEIM SENDEN DER MAIL!")
End If
Return True
anhenge.Add(excel)
If VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(Mailto, Subject, Body,,, False,, "d.breimaier@verag.ag;schulung@verag.ag", anhenge) Then
System.Console.WriteLine("E-Mail gesendet.")
System.Console.WriteLine("Erfolgreich!")
Else
System.Console.WriteLine(excel)
System.Console.WriteLine("ERROR BEIM SENDEN DER MAIL!")
End If
Return True
Else
System.Console.WriteLine(excel)
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)
@@ -791,18 +838,18 @@ Module Mail
Dim anhenge As New List(Of String)
anhenge.Add(excel)
anhenge.Add(excel)
If VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(Mailto, Subject, Body,,, False, cc, bcc, anhenge) Then
System.Console.WriteLine("E-Mail gesendet.")
System.Console.WriteLine("Erfolgreich!")
Else
System.Console.WriteLine("ERROR BEIM SENDEN DER MAIL!")
End If
End If
Return True
Else
System.Console.WriteLine(excel)
Return True
Else
System.Console.WriteLine(excel)
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)
@@ -853,9 +900,9 @@ Module Mail
End Try
End Function
Private Function SendEmail_ZF(Mailto As String, KdNr As String, von As Date, bis As Date, Optional cc As String = "", Optional bcc As String = "", Optional Subject As String = "", Optional Body As String = "") As Boolean
Private Function SendEmail_ZF(Mailto As String, KdNr As String, von As Date, bis As Date, Auswertungstyp As String, Optional cc As String = "", Optional bcc As String = "", Optional Subject As String = "", Optional Body As String = "") As Boolean
Try
Dim excel As String = genEXCEL_ZF(KdNr, von, bis)
Dim excel As String = genEXCEL_ZF(KdNr, von, bis, Auswertungstyp)
System.Console.WriteLine("EXCEL erstellt...")
If excel <> "" And Not excel.StartsWith("ERROR: ") Then
@@ -867,35 +914,35 @@ Module Mail
Case Else : Subject = "Auswertungen Zollanmeldungen ZF Friedrichshafen AG "
End Select
Else
Subject = replaceBodyVariable(Subject, von, bis)
End If
If Body = "" Then
Body = "Anbei befinden sich die Auswertungen Zollanmeldungen von " & von.ToShortDateString & " bis " & bis.ToShortDateString & "." &
Body = "Anbei befinden sich die Auswertungen Zollanmeldungen von " & von.ToShortDateString & " bis " & bis.ToShortDateString & "." &
"<br><br>Erstellt am: " & Now.ToShortDateString & ", um " & Now.ToShortTimeString &
"<br><br><br>Automatisch generiertes E-Mail. Bitte Antworten Sie nicht an dieses E-Mail." &
"<br><br>VERAG SPEDITION AG"
Else
Body = replaceBodyVariable(Body, von, bis)
End If
Else
Body = replaceBodyVariable(Body, von, bis)
End If
Dim anhenge As New List(Of String)
anhenge.Add(excel)
Dim anhenge As New List(Of String)
anhenge.Add(excel)
If VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(Mailto, Subject, Body,,, False, cc, bcc, anhenge) Then
System.Console.WriteLine("E-Mail gesendet.")
System.Console.WriteLine("Erfolgreich!")
Else
System.Console.WriteLine("ERROR BEIM SENDEN DER MAIL!")
End If
End If
Return True
Else
System.Console.WriteLine(excel)
Return True
Else
System.Console.WriteLine(excel)
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)
@@ -1836,10 +1883,10 @@ Module Mail
Else
System.Console.WriteLine("ERROR BEIM SENDEN DER MAIL!")
End If
End If
Return True
Return True
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL)
System.Console.WriteLine(ex.Message & ex.StackTrace)
@@ -2191,7 +2238,7 @@ Module Mail
End Function
Public Function genEXCEL_ZF(KdNr As String, von As Date, bis As Date) As String
Public Function genEXCEL_ZF(KdNr As String, von As Date, bis As Date, Auswertungstyp As String) As String
Try
Dim KUNDENADR = New VERAG_PROG_ALLGEMEIN.cAdressen(KdNr)
@@ -2204,7 +2251,7 @@ Module Mail
,BelegNr
,[FilialenNr],[AbfertigungsNr],Speditionsbuch.Abfertigungsart,Abfertigungsbezeichnung,Speditionsbuch.Zollsystem_Land
FROM Speditionsbuch INNER JOIN [Abfertigungsarten] ON Speditionsbuch.Abfertigungsart=Abfertigungsarten.Abfertigungsart
where EmpfängerKundenNr IN (" & KdNr & ") and Abfertigungsdatum BETWEEN '" & von.ToShortDateString & "' AND '" & bis.ToShortDateString & "' And Speditionsbuch.Abfertigungsart IN (1,29,38)")
where EmpfängerKundenNr IN (" & KdNr & ") and VermittlerKundenNr IN (" & KdNr & ") and Abfertigungsdatum BETWEEN '" & von.ToShortDateString & "' AND '" & bis.ToShortDateString & "' And Speditionsbuch.Abfertigungsart IN (1,29,38)")
@@ -2219,62 +2266,206 @@ Module Mail
Dim Blatt As Object 'Microsoft.Office.Interop.Excel.Worksheet 'As Object 'as Worksheet
exclApp = CreateObject("Excel.Application")
With exclApp
.Visible = False
Try
Path = sPath & "ZF_" & KdNr & "_" & von.ToShortDateString & " - " & bis.ToShortDateString & "" & ".xlsx"
While System.IO.File.Exists(Path)
Path = sPath & "ZF_" & KdNr & "_" & von.ToShortDateString & "-" & bis.ToShortDateString & "_" & Now.ToString("ddMMyyyyHHmmss") & ".xlsx"
End While
My.Computer.FileSystem.WriteAllBytes(Path, My.Resources.RG_ZF, False)
Catch ex As System.Exception
' MsgBox(ex.Message)
MsgBox("Error 01: " & ex.Message & vbNewLine & ex.StackTrace)
Select Case Auswertungstyp
Case "monthly"
Return ""
End Try
With exclApp
.Visible = False
Datei = .Workbooks.Open(Path) 'Anpassen
Blatt = Datei.Worksheets(1) 'Anpassen
Try
Path = sPath & "ZF_" & KdNr & "_" & von.ToShortDateString & " - " & bis.ToShortDateString & "" & ".xlsx"
While System.IO.File.Exists(Path)
Path = sPath & "ZF_" & KdNr & "_" & von.ToShortDateString & "-" & bis.ToShortDateString & "_" & Now.ToString("ddMMyyyyHHmmss") & ".xlsx"
End While
My.Computer.FileSystem.WriteAllBytes(Path, My.Resources.RG_ZF, False)
Catch ex As System.Exception
' MsgBox(ex.Message)
MsgBox("Error 01: " & ex.Message & vbNewLine & ex.StackTrace)
Blatt.Range("I1").Value = von.ToShortDateString & "-" & bis.ToShortDateString
Dim cnt = 3
For Each r In dt.Rows
Blatt.Range("A" & cnt).Value = cnt - 2
Blatt.Range("B" & cnt).Value = r("Abfertigungsnummer")
' Blatt.Range("C" & cnt).Value = r("RechnungsNr")
Blatt.Range("C" & cnt).Value = r("Abfertigungsdatum")
Blatt.Range("D" & cnt).Value = r("Abfertigungsbezeichnung")
Blatt.Range("E" & cnt).Value = r("Absender")
Blatt.Range("F" & cnt).Value = "" 'r("Betrag")
Blatt.Range("H" & cnt).Value = r("BelegNr")
Return ""
End Try
VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "VERAG"
Datei = .Workbooks.Open(Path) 'Anpassen
Blatt = Datei.Worksheets(1) 'Anpassen
Dim ZOLLANMELDUNG As New cZollsysteme_Aktenbeschriftung
Dim zS = If(r("Zollsystem_Land") IsNot DBNull.Value, r("Zollsystem_Land").ToString(), "")
If ZOLLANMELDUNG.getDataByBezugsnummer(r("FilialenNr") & "/" & r("AbfertigungsNr"), r("Abfertigungsart"), "", False, zS) Then
Blatt.Range("F" & cnt).Value = ZOLLANMELDUNG.Rechnungspreis
Blatt.Range("G" & cnt).Value = ZOLLANMELDUNG.Handelsrechnung.Replace(", ", "," & vbNewLine)
Blatt.Range("I" & cnt).Value = ZOLLANMELDUNG.ABGABEN_ZOLL
Blatt.Range("J" & cnt).Value = ZOLLANMELDUNG.ANZ_POS
If If(ZOLLANMELDUNG.ATCMRN, "") <> "" Then
Blatt.Range("H" & cnt).Value = ZOLLANMELDUNG.ATCMRN
End If
End If
Blatt.Range("I1").Value = von.ToShortDateString & "-" & bis.ToShortDateString
Dim cnt = 3
For Each r In dt.Rows
Blatt.Range("A" & cnt).Value = cnt - 2
Blatt.Range("B" & cnt).Value = r("Abfertigungsnummer")
' Blatt.Range("C" & cnt).Value = r("RechnungsNr")
Blatt.Range("C" & cnt).Value = r("Abfertigungsdatum")
Blatt.Range("D" & cnt).Value = r("Abfertigungsbezeichnung")
Blatt.Range("E" & cnt).Value = r("Absender")
Blatt.Range("F" & cnt).Value = "" 'r("Betrag")
Blatt.Range("H" & cnt).Value = r("BelegNr")
VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "VERAG"
Dim ZOLLANMELDUNG As New cZollsysteme_Aktenbeschriftung
Dim zS = If(r("Zollsystem_Land") IsNot DBNull.Value, r("Zollsystem_Land").ToString(), "")
If ZOLLANMELDUNG.getDataByBezugsnummer(r("FilialenNr") & "/" & r("AbfertigungsNr"), r("Abfertigungsart"), "", False, zS) Then
Blatt.Range("F" & cnt).Value = ZOLLANMELDUNG.Rechnungspreis
Blatt.Range("G" & cnt).Value = ZOLLANMELDUNG.Handelsrechnung.Replace(", ", "," & vbNewLine)
Blatt.Range("I" & cnt).Value = ZOLLANMELDUNG.ABGABEN_ZOLL
Blatt.Range("J" & cnt).Value = ZOLLANMELDUNG.ANZ_POS
If If(ZOLLANMELDUNG.ATCMRN, "") <> "" Then
Blatt.Range("H" & cnt).Value = ZOLLANMELDUNG.ATCMRN
End If
End If
cnt += 1
Next
Datei.Save()
.DisplayAlerts = False
.quit()
Try : Datei.close(True) : Catch : End Try
End With
Case "quarter"
With exclApp
.Visible = False
Try
Path = sPath & "ZF_" & KdNr & "_" & von.ToShortDateString & " - " & bis.ToShortDateString & "" & ".xlsx"
While System.IO.File.Exists(Path)
Path = sPath & "ZF_" & KdNr & "_" & von.ToShortDateString & "-" & bis.ToShortDateString & "_" & Now.ToString("ddMMyyyyHHmmss") & ".xlsx"
End While
My.Computer.FileSystem.WriteAllBytes(Path, My.Resources.RG_ZF_NEW, False)
Catch ex As System.Exception
' MsgBox(ex.Message)
MsgBox("Error 01: " & ex.Message & vbNewLine & ex.StackTrace)
Return ""
End Try
Datei = .Workbooks.Open(Path) 'Anpassen
Blatt = Datei.Worksheets(1) 'Anpassen
Dim cnt = 2
For Each r In dt.Rows
Dim ZOLLANMELDUNG As New DAKOSY_Worker.cZollsysteme_Aktenbeschriftung
Dim zS = If(r("Zollsystem_Land") IsNot DBNull.Value, r("Zollsystem_Land").ToString(), "")
If ZOLLANMELDUNG.getDataByBezugsnummer(r("FilialenNr") & "/" & r("AbfertigungsNr"), r("Abfertigungsart"), "", False, zS) Then
If ZOLLANMELDUNG.dtWARENPOS.Rows.Count > 0 Then
Dim rowcounter As Integer = 0
For Each row As DataRow In ZOLLANMELDUNG.dtWARENPOS.Rows
Dim ZollInProzent As Double = ZOLLANMELDUNG.ABGABEN_ZOLL / ZOLLANMELDUNG.Rechnungspreis * 100
Blatt.Range("A" & cnt).Value = cnt - 1
Blatt.Range("B" & cnt).Value = r("Abfertigungsdatum")
Blatt.Range("C" & cnt).Value = VERAG_PROG_ALLGEMEIN.cAllgemein.getFirmaFromFiliale(r("FilialenNr"))
Blatt.Range("D" & cnt).Value = ZOLLANMELDUNG.Empfaenger
Blatt.Range("E" & cnt).Value = r("FilialenNr") & "/" & r("AbfertigungsNr")
Blatt.Range("F" & cnt).Value = r("BelegNr")
Blatt.Range("G" & cnt).Value = row.Item("PosNr")
Blatt.Range("H" & cnt).Value = row.Item("WarenNr")
Blatt.Range("I" & cnt).Value = "-"
Blatt.Range("J" & cnt).Value = row.Item("WarenBez")
Blatt.Range("K" & cnt).Value = ""
Blatt.Range("L" & cnt).Value = ZOLLANMELDUNG.Waehrungscode
Blatt.Range("M" & cnt).Value = ZOLLANMELDUNG.Geschaeftsart
Blatt.Range("N" & cnt).Value = ZOLLANMELDUNG.Zollstelle_Eingang
Blatt.Range("O" & cnt).Value = ""
Blatt.Range("P" & cnt).Value = row.Item("Netto")
Blatt.Range("Q" & cnt).Value = row.Item("PosWert")
Blatt.Range("R" & cnt).Value = IIf(rowcounter = 0, ZOLLANMELDUNG.ABGABEN_EUST, "")
Blatt.Range("S" & cnt).Value = IIf(rowcounter = 0, ZOLLANMELDUNG.ABGABEN_ZOLL, "")
Blatt.Range("T" & cnt).Value = IIf(rowcounter = 0, ZollInProzent.ToString("N2") & " %", "")
Blatt.Range("U" & cnt).Value = IIf(ZOLLANMELDUNG.VerBestLandZst.ToString.Count > 1, ZOLLANMELDUNG.VerBestLandZst.ToString.Substring(0, 2), "")
Blatt.Range("V" & cnt).Value = ZOLLANMELDUNG.Absender
Blatt.Range("W" & cnt).Value = row.Item("Herkunft")
Blatt.Range("X" & cnt).Value = ZOLLANMELDUNG.Incoterms
Blatt.Range("Y" & cnt).Value = row.Item("Verfahren")
Blatt.Range("Z" & cnt).Value = row.Item("Preferenz")
Blatt.Range("AA" & cnt).Value = IIf(row.Item("isCBAM"), "Y", "N")
If If(ZOLLANMELDUNG.ATCMRN, "") <> "" AndAlso Blatt.Range("F" & cnt).Value = "" Then
Blatt.Range("F" & cnt).Value = ZOLLANMELDUNG.ATCMRN
End If
cnt += 1
rowcounter += 1
Next
Else
Dim ZollInProzent As Double = ZOLLANMELDUNG.ABGABEN_ZOLL / ZOLLANMELDUNG.Rechnungspreis * 100
Blatt.Range("A" & cnt).Value = cnt - 1
Blatt.Range("B" & cnt).Value = r("Abfertigungsdatum")
Blatt.Range("C" & cnt).Value = VERAG_PROG_ALLGEMEIN.cAllgemein.getFirmaFromFiliale(r("FilialenNr"))
Blatt.Range("D" & cnt).Value = ZOLLANMELDUNG.Empfaenger
Blatt.Range("E" & cnt).Value = r("FilialenNr") & "/" & r("AbfertigungsNr")
Blatt.Range("F" & cnt).Value = r("BelegNr")
Blatt.Range("G" & cnt).Value = ""
Blatt.Range("H" & cnt).Value = ""
Blatt.Range("I" & cnt).Value = "-"
Blatt.Range("J" & cnt).Value = ""
Blatt.Range("K" & cnt).Value = ""
Blatt.Range("L" & cnt).Value = ZOLLANMELDUNG.Waehrungscode
Blatt.Range("M" & cnt).Value = ZOLLANMELDUNG.Geschaeftsart
Blatt.Range("N" & cnt).Value = ZOLLANMELDUNG.Zollstelle_Eingang
Blatt.Range("O" & cnt).Value = ""
Blatt.Range("P" & cnt).Value = ""
Blatt.Range("Q" & cnt).Value = ""
Blatt.Range("R" & cnt).Value = ZOLLANMELDUNG.ABGABEN_EUST
Blatt.Range("S" & cnt).Value = ZOLLANMELDUNG.ABGABEN_ZOLL
Blatt.Range("T" & cnt).Value = ZollInProzent.ToString("N2") & " %"
Blatt.Range("U" & cnt).Value = IIf(ZOLLANMELDUNG.VerBestLandZst.ToString.Count > 1, ZOLLANMELDUNG.VerBestLandZst.ToString.Substring(0, 2), "")
Blatt.Range("V" & cnt).Value = ZOLLANMELDUNG.Absender
Blatt.Range("W" & cnt).Value = ""
Blatt.Range("X" & cnt).Value = ZOLLANMELDUNG.Incoterms
Blatt.Range("Y" & cnt).Value = ""
Blatt.Range("Z" & cnt).Value = ""
Blatt.Range("AA" & cnt).Value = ""
If If(ZOLLANMELDUNG.ATCMRN, "") <> "" AndAlso Blatt.Range("F" & cnt).Value = "" Then
Blatt.Range("F" & cnt).Value = ZOLLANMELDUNG.ATCMRN
End If
cnt += 1
End If
End If
Next
Datei.Save()
.DisplayAlerts = False
.quit()
Try : Datei.close(True) : Catch : End Try
End With
End Select
cnt += 1
Next
Datei.Save()
.DisplayAlerts = False
.quit()
Try : Datei.close(True) : Catch : End Try
End With
'Dim filepath = VERAG_PROG_ALLGEMEIN.cProgramFunctions.genExcelFromDT_NEW(dt,,,,, False, "Report Data_" & KUNDENADR.FullName & "_" & von.ToShortDateString & "-" & bis.ToShortDateString)

View File

@@ -130,6 +130,7 @@
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="Resources\RG_ZF.xlsx" />
<None Include="Resources\RG_ZF_NEW.xlsx" />
</ItemGroup>
<ItemGroup>
<WCFMetadata Include="Service References\" />

View File

@@ -109,5 +109,15 @@ Namespace My.Resources
Return CType(obj,Byte())
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Byte[].
'''</summary>
Friend ReadOnly Property RG_ZF_NEW() As Byte()
Get
Dim obj As Object = ResourceManager.GetObject("RG_ZF_NEW", resourceCulture)
Return CType(obj,Byte())
End Get
End Property
End Module
End Namespace

View File

@@ -133,4 +133,7 @@
<data name="RG_ZF" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\RG_ZF.xlsx;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="RG_ZF_NEW" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\RG_ZF_NEW.xlsx;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
</root>

Binary file not shown.