Kundensicherheiten, CBAM-Rechner, etc.
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
Imports System.Globalization
|
Imports System.Globalization
|
||||||
Imports System.Text
|
Imports System.Text
|
||||||
Imports System.Web.UI.WebControls.Expressions
|
Imports System.Web.UI.WebControls.Expressions
|
||||||
|
Imports QRCoder.PayloadGenerator.SwissQrCode
|
||||||
Imports VERAG_PROG_ALLGEMEIN
|
Imports VERAG_PROG_ALLGEMEIN
|
||||||
|
|
||||||
Public Class usrCntlBH
|
Public Class usrCntlBH
|
||||||
@@ -2220,6 +2221,7 @@ Public Class usrCntlBH
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
Dim importiert As Boolean = False
|
Dim importiert As Boolean = False
|
||||||
|
Dim TYP = cbxBankspesentyp._value
|
||||||
|
|
||||||
Dim fd As New OpenFileDialog
|
Dim fd As New OpenFileDialog
|
||||||
fd.InitialDirectory = "\\share01.verag.ost.dmn\F\19 VERAG 360 - MDM\Buchhaltung MDM\Bank\Subkonten"
|
fd.InitialDirectory = "\\share01.verag.ost.dmn\F\19 VERAG 360 - MDM\Buchhaltung MDM\Bank\Subkonten"
|
||||||
@@ -2267,7 +2269,7 @@ Public Class usrCntlBH
|
|||||||
exclApp.CutCopyMode = False
|
exclApp.CutCopyMode = False
|
||||||
|
|
||||||
'Try to open exclusively
|
'Try to open exclusively
|
||||||
Datei = exclApp.Workbooks.Open(Filename:=fd.FileName, ReadOnly:=False, IgnoreReadOnlyRecommended:=True, Notify:=False)
|
Datei = exclApp.Workbooks.Open(Filename:=fd.FileName, ReadOnly:=False, IgnoreReadOnlyRecommended:=True, Notify:=False, Format:=6, Delimiter:=";")
|
||||||
|
|
||||||
If Datei.ReadOnly Then
|
If Datei.ReadOnly Then
|
||||||
MessageBox.Show("Die Datei wird bereits von einem anderen Benutzer oder einer anderen Excel-Instanz verwendet, bitte Datei vor dem Import schließen!")
|
MessageBox.Show("Die Datei wird bereits von einem anderen Benutzer oder einer anderen Excel-Instanz verwendet, bitte Datei vor dem Import schließen!")
|
||||||
@@ -2280,27 +2282,44 @@ Public Class usrCntlBH
|
|||||||
' Header einlesen
|
' Header einlesen
|
||||||
Dim headerMap As New Dictionary(Of String, Integer)(StringComparer.OrdinalIgnoreCase)
|
Dim headerMap As New Dictionary(Of String, Integer)(StringComparer.OrdinalIgnoreCase)
|
||||||
|
|
||||||
|
Dim startHeaderRow As Integer = If(TYP = "M", 7, 1)
|
||||||
|
|
||||||
For col As Integer = 1 To Blatt.UsedRange.Columns.Count
|
For col As Integer = 1 To Blatt.UsedRange.Columns.Count
|
||||||
|
|
||||||
Dim header As String = Convert.ToString(Blatt.Cells(1, col).Value).Trim()
|
Dim rawHeader As String = Convert.ToString(Blatt.Cells(startHeaderRow, col).Value2)
|
||||||
|
|
||||||
If header <> "" AndAlso Not headerMap.ContainsKey(header) Then
|
If String.IsNullOrWhiteSpace(rawHeader) Then Continue For
|
||||||
headerMap.Add(header, col)
|
|
||||||
|
If rawHeader.Contains(";") Then
|
||||||
|
' Gesamte Kopfzeile steht in einer Zelle
|
||||||
|
Dim headers As String() = rawHeader.Split(";"c)
|
||||||
|
|
||||||
|
For i As Integer = 0 To headers.Length - 1
|
||||||
|
Dim header As String = headers(i).Replace(ChrW(160), " "c).Trim().TrimEnd("."c).Trim()
|
||||||
|
|
||||||
|
If header <> "" AndAlso Not headerMap.ContainsKey(header) Then
|
||||||
|
headerMap.Add(header, i + 1)
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
Else
|
||||||
|
Dim header As String = rawHeader.Replace(ChrW(160), " "c).Trim().TrimEnd("."c).Trim()
|
||||||
|
|
||||||
|
If header <> "" AndAlso Not headerMap.ContainsKey(header) Then
|
||||||
|
headerMap.Add(header, col)
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Next
|
Next
|
||||||
|
|
||||||
' Pflichtspalten prüfen
|
' Pflichtspalten prüfen
|
||||||
Dim requiredHeaders As String() = {
|
Dim requiredHeaders As String()
|
||||||
"Umsatz-ID",
|
|
||||||
"Datum",
|
Select Case TYP
|
||||||
"IBAN",
|
Case "M"
|
||||||
"BIC",
|
requiredHeaders = {"Belegdat", "Belegnr", "BuchText", "Soll EUR", "Haben EUR", "Gegenkto"}
|
||||||
"Buchungstext",
|
Case "Q"
|
||||||
"Währung",
|
requiredHeaders = {"Umsatz-ID", "Datum", "IBAN", "BIC", "Buchungstext", "Währung", "Betrag", "Kontoauszug"}
|
||||||
"Betrag",
|
End Select
|
||||||
"Kontoauszug"
|
|
||||||
}
|
|
||||||
|
|
||||||
For Each h As String In requiredHeaders
|
For Each h As String In requiredHeaders
|
||||||
|
|
||||||
@@ -2316,86 +2335,64 @@ Public Class usrCntlBH
|
|||||||
visibleKdNrCheck = True
|
visibleKdNrCheck = True
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
Dim letzteZeile As Integer = Blatt.UsedRange.Rows.Count
|
Dim letzteZeile As Integer = Blatt.UsedRange.Rows.Count
|
||||||
|
|
||||||
|
For row As Integer = startHeaderRow + 1 To letzteZeile
|
||||||
|
|
||||||
|
If TYP = "Q" Then
|
||||||
|
|
||||||
For row As Integer = 2 To letzteZeile
|
Dim Umsatz_ID As String = Convert.ToString(Blatt.Cells(row, headerMap("Umsatz-ID")).Value)
|
||||||
|
Dim Datum As String = Convert.ToString(Blatt.Cells(row, headerMap("Datum")).Value)
|
||||||
|
Dim IBAN As String = Convert.ToString(Blatt.Cells(row, headerMap("IBAN")).Value)
|
||||||
|
Dim BIC As String = Convert.ToString(Blatt.Cells(row, headerMap("BIC")).Value)
|
||||||
|
Dim Buchungstext As String = Convert.ToString(Blatt.Cells(row, headerMap("Buchungstext")).Value)
|
||||||
|
Dim Währung As String = Convert.ToString(Blatt.Cells(row, headerMap("Währung")).Value)
|
||||||
|
Dim Kontoauszug As String = Convert.ToString(Blatt.Cells(row, headerMap("Kontoauszug")).Value)
|
||||||
|
Dim Betrag As Double = Convert.ToDouble(Blatt.Cells(row, headerMap("Betrag")).Value)
|
||||||
|
Dim KundenNrCheck As String = ""
|
||||||
|
|
||||||
Dim Umsatz_ID As String =
|
If headerMap.ContainsKey("KDNR") Then
|
||||||
Convert.ToString(Blatt.Cells(row, headerMap("Umsatz-ID")).Value)
|
KundenNrCheck = Convert.ToString(Blatt.Cells(row, headerMap("KDNR")).Value)
|
||||||
|
|
||||||
|
|
||||||
Dim Datum As String =
|
|
||||||
Convert.ToString(Blatt.Cells(row, headerMap("Datum")).Value)
|
|
||||||
|
|
||||||
Dim IBAN As String =
|
|
||||||
Convert.ToString(Blatt.Cells(row, headerMap("IBAN")).Value)
|
|
||||||
|
|
||||||
Dim BIC As String =
|
|
||||||
Convert.ToString(Blatt.Cells(row, headerMap("BIC")).Value)
|
|
||||||
|
|
||||||
Dim Buchungstext As String =
|
|
||||||
Convert.ToString(Blatt.Cells(row, headerMap("Buchungstext")).Value)
|
|
||||||
|
|
||||||
Dim Währung As String =
|
|
||||||
Convert.ToString(Blatt.Cells(row, headerMap("Währung")).Value)
|
|
||||||
|
|
||||||
Dim Kontoauszug As String =
|
|
||||||
Convert.ToString(Blatt.Cells(row, headerMap("Kontoauszug")).Value)
|
|
||||||
|
|
||||||
Dim Betrag As Double =
|
|
||||||
Convert.ToDouble(Blatt.Cells(row, headerMap("Betrag")).Value)
|
|
||||||
|
|
||||||
Dim KundenNrCheck As String = ""
|
|
||||||
|
|
||||||
If headerMap.ContainsKey("KDNR") Then
|
|
||||||
KundenNrCheck = Convert.ToString(Blatt.Cells(row, headerMap("KDNR")).Value)
|
|
||||||
End If
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
If String.IsNullOrWhiteSpace(Umsatz_ID) Then
|
|
||||||
Continue For
|
|
||||||
End If
|
|
||||||
|
|
||||||
If IsNumeric(Umsatz_ID) AndAlso IsNumeric(Betrag) AndAlso Not String.IsNullOrWhiteSpace(Kontoauszug) Then
|
|
||||||
|
|
||||||
|
|
||||||
Dim R As DataRow = dt.NewRow
|
|
||||||
R("Umsatz-ID") = Umsatz_ID
|
|
||||||
R("Datum") = Datum
|
|
||||||
R("IBAN") = IBAN
|
|
||||||
R("BIC") = BIC
|
|
||||||
R("Buchungstext") = Buchungstext
|
|
||||||
R("Währung") = Währung
|
|
||||||
R("Betrag") = Betrag
|
|
||||||
R("Kontoauszug") = Kontoauszug
|
|
||||||
|
|
||||||
Dim BuchungstextOnlyNr As String = System.Text.RegularExpressions.Regex.Replace(Buchungstext, "[^0-9]", "")
|
|
||||||
Dim KundeNr = CInt(sql.DLookup("bnk_KundenNr", "tblBankverbindungen", "bnk_iban like '%" & BuchungstextOnlyNr & "%' and isnull(bnk_archiv,0) = 0", "FMZOLL", "-1"))
|
|
||||||
|
|
||||||
R("KdNr") = KundeNr
|
|
||||||
|
|
||||||
If visibleKdNrCheck Then
|
|
||||||
|
|
||||||
R("KdNrCheck") = KundenNrCheck
|
|
||||||
|
|
||||||
If KundenNrCheck <> "" AndAlso IsNumeric(KundenNrCheck) Then
|
|
||||||
If CInt(KundenNrCheck) = KundeNr Then
|
|
||||||
R("KdNrValid") = True
|
|
||||||
Else
|
|
||||||
R("KdNrValid") = False
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
If KundeNr = -1 Then
|
If String.IsNullOrWhiteSpace(Umsatz_ID) Then
|
||||||
|
Continue For
|
||||||
|
End If
|
||||||
|
|
||||||
|
If IsNumeric(Umsatz_ID) AndAlso IsNumeric(Betrag) AndAlso Not String.IsNullOrWhiteSpace(Kontoauszug) Then
|
||||||
|
|
||||||
|
|
||||||
|
Dim R As DataRow = dt.NewRow
|
||||||
|
R("Umsatz-ID") = Umsatz_ID
|
||||||
|
R("Datum") = Datum
|
||||||
|
R("IBAN") = IBAN
|
||||||
|
R("BIC") = BIC
|
||||||
|
R("Buchungstext") = Buchungstext
|
||||||
|
R("Währung") = Währung
|
||||||
|
R("Betrag") = Betrag
|
||||||
|
R("Kontoauszug") = Kontoauszug
|
||||||
|
|
||||||
|
Dim BuchungstextOnlyNr As String = System.Text.RegularExpressions.Regex.Replace(Buchungstext, "[^0-9]", "")
|
||||||
|
Dim KundeNr = CInt(sql.DLookup("bnk_KundenNr", "tblBankverbindungen", "bnk_iban like '%" & BuchungstextOnlyNr & "%' and isnull(bnk_archiv,0) = 0", "FMZOLL", "-1"))
|
||||||
|
|
||||||
|
R("KdNr") = KundeNr
|
||||||
|
|
||||||
|
If visibleKdNrCheck Then
|
||||||
|
|
||||||
|
R("KdNrCheck") = KundenNrCheck
|
||||||
|
|
||||||
|
If KundenNrCheck <> "" AndAlso IsNumeric(KundenNrCheck) Then
|
||||||
|
If CInt(KundenNrCheck) = KundeNr Then
|
||||||
|
R("KdNrValid") = True
|
||||||
|
Else
|
||||||
|
R("KdNrValid") = False
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
If KundeNr = -1 Then
|
||||||
missingKdNr += 1
|
missingKdNr += 1
|
||||||
End If
|
End If
|
||||||
|
|
||||||
@@ -2413,16 +2410,89 @@ Public Class usrCntlBH
|
|||||||
|
|
||||||
Continue For
|
Continue For
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
Else
|
||||||
|
|
||||||
|
|
||||||
|
Dim Umsatz_ID As String = Convert.ToString(Blatt.Cells(row, headerMap("Belegnr")).Value)
|
||||||
|
Dim Datum As String = Convert.ToString(Blatt.Cells(row, headerMap("Belegdat")).Value)
|
||||||
|
Dim Buchungstext As String = Convert.ToString(Blatt.Cells(row, headerMap("BuchText")).Value)
|
||||||
|
Dim Währung As String = "EUR"
|
||||||
|
|
||||||
|
Dim SollBetrag As String = Convert.ToString(Blatt.Cells(row, headerMap("Soll EUR")).Value)
|
||||||
|
Dim HabenBetrag As String = Convert.ToString(Blatt.Cells(row, headerMap("Haben EUR")).Value)
|
||||||
|
|
||||||
|
Dim Betrag As Double = 0
|
||||||
|
If SollBetrag <> "" AndAlso IsNumeric(SollBetrag) Then
|
||||||
|
Betrag = CDbl(SollBetrag)
|
||||||
|
ElseIf HabenBetrag <> "" AndAlso IsNumeric(HabenBetrag) Then
|
||||||
|
Betrag = CDbl(HabenBetrag)
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim KundenNrCheck As String = ""
|
||||||
|
|
||||||
|
If headerMap.ContainsKey("Gegenkto") Then
|
||||||
|
KundenNrCheck = Convert.ToString(Blatt.Cells(row, headerMap("Gegenkto")).Value)
|
||||||
|
End If
|
||||||
|
|
||||||
|
If String.IsNullOrWhiteSpace(Umsatz_ID) Then
|
||||||
|
Continue For
|
||||||
|
End If
|
||||||
|
|
||||||
|
If IsNumeric(Betrag) AndAlso Not String.IsNullOrWhiteSpace(Buchungstext) AndAlso Not String.IsNullOrWhiteSpace(Datum) AndAlso IsDate(Datum) Then
|
||||||
|
|
||||||
|
|
||||||
|
Dim R As DataRow = dt.NewRow
|
||||||
|
R("Umsatz-ID") = Umsatz_ID
|
||||||
|
R("Datum") = Datum
|
||||||
|
R("Buchungstext") = Buchungstext
|
||||||
|
R("Währung") = Währung
|
||||||
|
R("Betrag") = Betrag
|
||||||
|
|
||||||
|
R("KdNr") = 0
|
||||||
|
|
||||||
|
If visibleKdNrCheck Then
|
||||||
|
|
||||||
|
R("KdNrCheck") = KundenNrCheck
|
||||||
|
|
||||||
|
If KundenNrCheck <> "" AndAlso IsNumeric(KundenNrCheck) Then
|
||||||
|
If CInt(KundenNrCheck) = R("KdNr") Then
|
||||||
|
R("KdNrValid") = True
|
||||||
|
Else
|
||||||
|
R("KdNrValid") = False
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
If R("KdNr") = -1 Then
|
||||||
|
missingKdNr += 1
|
||||||
|
End If
|
||||||
|
|
||||||
|
'Betrag laut folgendem Schema berechnen:
|
||||||
|
|
||||||
|
If Betrag < 0 Then Betrag = Betrag * -1
|
||||||
|
Betrag = Betrag + 1
|
||||||
|
Dim aufgerundet As Double = Math.Ceiling(Betrag / 5) * 5
|
||||||
|
|
||||||
|
R("Gebühr") = aufgerundet
|
||||||
|
|
||||||
|
dt.Rows.Add(R)
|
||||||
|
|
||||||
|
Else
|
||||||
|
|
||||||
|
Continue For
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
Next
|
Next
|
||||||
|
|
||||||
If dt.Rows.Count > 0 Then
|
If dt.Rows.Count > 0 Then
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Using frm As New frmAbrechnungHandling(dt, Nothing, "Import " & dt.Rows.Count & " Buchungsdaten " & cbxBankspesentyp.SelectedItem.Text & IIf(missingKdNr > 0, missingKdNr & " Kundenkonten konnten nicht gefunden werden!", ""))
|
Using frm As New frmAbrechnungHandling(dt, Nothing, "Import " & dt.Rows.Count & " Buchungsdaten " & cbxBankspesentyp.SelectedItem.Text & IIf(missingKdNr > 0, missingKdNr & " Kundenkonten konnten nicht gefunden werden!", ""))
|
||||||
|
|
||||||
With frm
|
With frm
|
||||||
@@ -2454,8 +2524,8 @@ Public Class usrCntlBH
|
|||||||
For Each r As DataGridViewRow In frm.dgvHandling.SelectedRows
|
For Each r As DataGridViewRow In frm.dgvHandling.SelectedRows
|
||||||
|
|
||||||
Dim Datum = r.Cells("Datum").Value
|
Dim Datum = r.Cells("Datum").Value
|
||||||
Dim TYP = cbxBankspesentyp._value
|
|
||||||
Dim KdNr = 0
|
Dim KdNr = 0
|
||||||
|
|
||||||
If frm.cbxDivers.Checked AndAlso visibleKdNrCheck Then
|
If frm.cbxDivers.Checked AndAlso visibleKdNrCheck Then
|
||||||
If r.Cells("KdNrCheck").Value <> "" AndAlso IsNumeric(r.Cells("KdNrCheck").Value) Then KdNr = CInt(r.Cells("KdNrCheck").Value)
|
If r.Cells("KdNrCheck").Value <> "" AndAlso IsNumeric(r.Cells("KdNrCheck").Value) Then KdNr = CInt(r.Cells("KdNrCheck").Value)
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
Imports DAKOSY_Worker.DEERRE
|
Imports Microsoft.Office.Interop
|
||||||
Imports Microsoft.Office.Interop
|
|
||||||
Imports VERAG_PROG_ALLGEMEIN
|
Imports VERAG_PROG_ALLGEMEIN
|
||||||
|
|
||||||
Public Class frmdynMailvorlagen
|
Public Class frmdynMailvorlagen
|
||||||
|
|||||||
@@ -2380,7 +2380,8 @@ Public Class frmMDMDatenverarbetiung
|
|||||||
Function genPLOSEInsertMautD_NEW(von As Date, bis As Date) As Boolean
|
Function genPLOSEInsertMautD_NEW(von As Date, bis As Date) As Boolean
|
||||||
Try
|
Try
|
||||||
|
|
||||||
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False
|
|
||||||
|
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = True
|
||||||
|
|
||||||
pic.Visible = False
|
pic.Visible = False
|
||||||
|
|
||||||
|
|||||||
38
SDL/seriendruck/usrCntlFakturierung.Designer.vb
generated
38
SDL/seriendruck/usrCntlFakturierung.Designer.vb
generated
@@ -46,6 +46,7 @@ Partial Class usrcntlFakturierung
|
|||||||
Me.Button18 = New System.Windows.Forms.Button()
|
Me.Button18 = New System.Windows.Forms.Button()
|
||||||
Me.Label44 = New System.Windows.Forms.Label()
|
Me.Label44 = New System.Windows.Forms.Label()
|
||||||
Me.GBSammelrechnung = New System.Windows.Forms.GroupBox()
|
Me.GBSammelrechnung = New System.Windows.Forms.GroupBox()
|
||||||
|
Me.btnSR_zuruecksetzen = New System.Windows.Forms.Button()
|
||||||
Me.PictureBox13 = New System.Windows.Forms.PictureBox()
|
Me.PictureBox13 = New System.Windows.Forms.PictureBox()
|
||||||
Me.Label15 = New System.Windows.Forms.Label()
|
Me.Label15 = New System.Windows.Forms.Label()
|
||||||
Me.PictureBox12 = New System.Windows.Forms.PictureBox()
|
Me.PictureBox12 = New System.Windows.Forms.PictureBox()
|
||||||
@@ -109,7 +110,7 @@ Partial Class usrcntlFakturierung
|
|||||||
Me.btnWikiStatusmails = New System.Windows.Forms.Button()
|
Me.btnWikiStatusmails = New System.Windows.Forms.Button()
|
||||||
Me.gb_MDM_Rechnungen = New System.Windows.Forms.GroupBox()
|
Me.gb_MDM_Rechnungen = New System.Windows.Forms.GroupBox()
|
||||||
Me.Label14 = New System.Windows.Forms.Label()
|
Me.Label14 = New System.Windows.Forms.Label()
|
||||||
Me.btnSR_zuruecksetzen = New System.Windows.Forms.Button()
|
Me.cbxFixeTaxe = New System.Windows.Forms.CheckBox()
|
||||||
Me.gb_fakturierung.SuspendLayout()
|
Me.gb_fakturierung.SuspendLayout()
|
||||||
Me.GBMautberichte.SuspendLayout()
|
Me.GBMautberichte.SuspendLayout()
|
||||||
CType(Me.dgvMautbericht, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.dgvMautbericht, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
@@ -356,6 +357,7 @@ Partial Class usrcntlFakturierung
|
|||||||
'
|
'
|
||||||
'GBSammelrechnung
|
'GBSammelrechnung
|
||||||
'
|
'
|
||||||
|
Me.GBSammelrechnung.Controls.Add(Me.cbxFixeTaxe)
|
||||||
Me.GBSammelrechnung.Controls.Add(Me.btnSR_zuruecksetzen)
|
Me.GBSammelrechnung.Controls.Add(Me.btnSR_zuruecksetzen)
|
||||||
Me.GBSammelrechnung.Controls.Add(Me.PictureBox13)
|
Me.GBSammelrechnung.Controls.Add(Me.PictureBox13)
|
||||||
Me.GBSammelrechnung.Controls.Add(Me.Label15)
|
Me.GBSammelrechnung.Controls.Add(Me.Label15)
|
||||||
@@ -423,6 +425,18 @@ Partial Class usrcntlFakturierung
|
|||||||
Me.GBSammelrechnung.TabIndex = 14
|
Me.GBSammelrechnung.TabIndex = 14
|
||||||
Me.GBSammelrechnung.TabStop = False
|
Me.GBSammelrechnung.TabStop = False
|
||||||
'
|
'
|
||||||
|
'btnSR_zuruecksetzen
|
||||||
|
'
|
||||||
|
Me.btnSR_zuruecksetzen.FlatStyle = System.Windows.Forms.FlatStyle.Flat
|
||||||
|
Me.btnSR_zuruecksetzen.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer))
|
||||||
|
Me.btnSR_zuruecksetzen.Location = New System.Drawing.Point(744, 261)
|
||||||
|
Me.btnSR_zuruecksetzen.Name = "btnSR_zuruecksetzen"
|
||||||
|
Me.btnSR_zuruecksetzen.Size = New System.Drawing.Size(107, 32)
|
||||||
|
Me.btnSR_zuruecksetzen.TabIndex = 135
|
||||||
|
Me.btnSR_zuruecksetzen.Text = "SR-zurücksetzen"
|
||||||
|
Me.btnSR_zuruecksetzen.UseVisualStyleBackColor = True
|
||||||
|
Me.btnSR_zuruecksetzen.Visible = False
|
||||||
|
'
|
||||||
'PictureBox13
|
'PictureBox13
|
||||||
'
|
'
|
||||||
Me.PictureBox13.BackgroundImage = CType(resources.GetObject("PictureBox13.BackgroundImage"), System.Drawing.Image)
|
Me.PictureBox13.BackgroundImage = CType(resources.GetObject("PictureBox13.BackgroundImage"), System.Drawing.Image)
|
||||||
@@ -518,7 +532,7 @@ Partial Class usrcntlFakturierung
|
|||||||
'
|
'
|
||||||
Me.Label11.Location = New System.Drawing.Point(168, 156)
|
Me.Label11.Location = New System.Drawing.Point(168, 156)
|
||||||
Me.Label11.Name = "Label11"
|
Me.Label11.Name = "Label11"
|
||||||
Me.Label11.Size = New System.Drawing.Size(440, 17)
|
Me.Label11.Size = New System.Drawing.Size(262, 17)
|
||||||
Me.Label11.TabIndex = 125
|
Me.Label11.TabIndex = 125
|
||||||
Me.Label11.Text = "6. Fixe Taxe 441 (bei Belegsumme < 500) berechnen"
|
Me.Label11.Text = "6. Fixe Taxe 441 (bei Belegsumme < 500) berechnen"
|
||||||
'
|
'
|
||||||
@@ -1063,17 +1077,16 @@ Partial Class usrcntlFakturierung
|
|||||||
Me.Label14.TabIndex = 73
|
Me.Label14.TabIndex = 73
|
||||||
Me.Label14.Text = "Rechnungsdaten"
|
Me.Label14.Text = "Rechnungsdaten"
|
||||||
'
|
'
|
||||||
'btnSR_zuruecksetzen
|
'cbxFixeTaxe
|
||||||
'
|
'
|
||||||
Me.btnSR_zuruecksetzen.FlatStyle = System.Windows.Forms.FlatStyle.Flat
|
Me.cbxFixeTaxe.AutoSize = True
|
||||||
Me.btnSR_zuruecksetzen.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer))
|
Me.cbxFixeTaxe.Checked = True
|
||||||
Me.btnSR_zuruecksetzen.Location = New System.Drawing.Point(744, 261)
|
Me.cbxFixeTaxe.CheckState = System.Windows.Forms.CheckState.Checked
|
||||||
Me.btnSR_zuruecksetzen.Name = "btnSR_zuruecksetzen"
|
Me.cbxFixeTaxe.Location = New System.Drawing.Point(428, 156)
|
||||||
Me.btnSR_zuruecksetzen.Size = New System.Drawing.Size(107, 32)
|
Me.cbxFixeTaxe.Name = "cbxFixeTaxe"
|
||||||
Me.btnSR_zuruecksetzen.TabIndex = 135
|
Me.cbxFixeTaxe.Size = New System.Drawing.Size(15, 14)
|
||||||
Me.btnSR_zuruecksetzen.Text = "SR-zurücksetzen"
|
Me.cbxFixeTaxe.TabIndex = 136
|
||||||
Me.btnSR_zuruecksetzen.UseVisualStyleBackColor = True
|
Me.cbxFixeTaxe.UseVisualStyleBackColor = True
|
||||||
Me.btnSR_zuruecksetzen.Visible = False
|
|
||||||
'
|
'
|
||||||
'usrcntlFakturierung
|
'usrcntlFakturierung
|
||||||
'
|
'
|
||||||
@@ -1201,4 +1214,5 @@ Partial Class usrcntlFakturierung
|
|||||||
Friend WithEvents PictureBox13 As PictureBox
|
Friend WithEvents PictureBox13 As PictureBox
|
||||||
Friend WithEvents Label15 As Label
|
Friend WithEvents Label15 As Label
|
||||||
Friend WithEvents btnSR_zuruecksetzen As Button
|
Friend WithEvents btnSR_zuruecksetzen As Button
|
||||||
|
Friend WithEvents cbxFixeTaxe As CheckBox
|
||||||
End Class
|
End Class
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
Imports System.Globalization
|
Imports System.Globalization
|
||||||
Imports System.IO
|
Imports System.IO
|
||||||
Imports System.Web.UI.WebControls.Expressions
|
Imports System.Web.UI.WebControls.Expressions
|
||||||
|
Imports java.util
|
||||||
Imports VERAG_PROG_ALLGEMEIN
|
Imports VERAG_PROG_ALLGEMEIN
|
||||||
|
|
||||||
Public Class usrcntlFakturierung
|
Public Class usrcntlFakturierung
|
||||||
@@ -290,7 +291,7 @@ Public Class usrcntlFakturierung
|
|||||||
GROUP BY [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], [Steuersatz %], [Lastschrift]", "FMZOLL")
|
GROUP BY [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], [Steuersatz %], [Lastschrift]", "FMZOLL")
|
||||||
|
|
||||||
|
|
||||||
If Not vbYes = MsgBox("Möchten Sie mit der Erstellung der " & dtREGU.Rows.Count & " Sammelrechnungen vorfahren?", vbYesNoCancel) Then
|
If Not vbYes = MsgBox("Möchten Sie mit der Erstellung der " & dtREGU.Rows.Count & " Sammelrechnungen vorfahren?" & vbNewLine & IIf(cbxFixeTaxe.Checked, "Fixe Taxe wird verrechnet!", "Fixe Taxe wird NICHT verrechnet!"), vbYesNoCancel) Then
|
||||||
MsgBox("Rechnungslauf wird abgebrochen!") : Exit Sub
|
MsgBox("Rechnungslauf wird abgebrochen!") : Exit Sub
|
||||||
End If
|
End If
|
||||||
|
|
||||||
@@ -366,7 +367,7 @@ Public Class usrcntlFakturierung
|
|||||||
showPic(Bankspesen(Sachbearbeiter, rechnungsdatum), PictureBox5)
|
showPic(Bankspesen(Sachbearbeiter, rechnungsdatum), PictureBox5)
|
||||||
|
|
||||||
'Berechnet FixeTaxe.
|
'Berechnet FixeTaxe.
|
||||||
showPic(FixeTaxe(Sachbearbeiter, rechnungsdatum), PictureBox6)
|
If cbxFixeTaxe.Checked Then showPic(FixeTaxe(Sachbearbeiter, rechnungsdatum), PictureBox6)
|
||||||
|
|
||||||
|
|
||||||
'Gesamtmautberichte an Sammelrechnung anhängen
|
'Gesamtmautberichte an Sammelrechnung anhängen
|
||||||
@@ -622,10 +623,6 @@ Public Class usrcntlFakturierung
|
|||||||
|
|
||||||
Dim intZlr As Integer = 0
|
Dim intZlr As Integer = 0
|
||||||
|
|
||||||
If r("RechnungsKundenNr") = "401715" Or r("RechnungsKundenNr") = "401943" Or r("RechnungsKundenNr") = "402179" Or r("RechnungsKundenNr") = "402598" Or r("RechnungsKundenNr") = "402656" Or r("RechnungsKundenNr") = "402688" Or r("RechnungsKundenNr") = "402719" Or r("RechnungsKundenNr") = "402888" Or r("RechnungsKundenNr") = "402933" Or r("RechnungsKundenNr") = "401733" Or r("RechnungsKundenNr") = "402245" Or r("RechnungsKundenNr") = "402712" Or r("RechnungsKundenNr") = "402065" Or r("RechnungsKundenNr") = "402712" Or r("RechnungsKundenNr") = "401908" Or r("RechnungsKundenNr") = "401829" Or r("RechnungsKundenNr") = "203083" Then
|
|
||||||
'MsgBox("Test")
|
|
||||||
End If
|
|
||||||
|
|
||||||
|
|
||||||
' Bei BetragExclusivFT kleiner als 500€ wird 1x fixe Taxe verrechnet, bei grösser/gleich 500€ wird kein fixe Taxe verrechnet.
|
' Bei BetragExclusivFT kleiner als 500€ wird 1x fixe Taxe verrechnet, bei grösser/gleich 500€ wird kein fixe Taxe verrechnet.
|
||||||
' Zähler auf die Anzahl der fixe Taxe Löschungen einstellen.
|
' Zähler auf die Anzahl der fixe Taxe Löschungen einstellen.
|
||||||
@@ -1126,7 +1123,7 @@ Public Class usrcntlFakturierung
|
|||||||
Dim hatFehler As Boolean = False
|
Dim hatFehler As Boolean = False
|
||||||
|
|
||||||
If dtSammelRechnugen.Rows.Count = 0 Then
|
If dtSammelRechnugen.Rows.Count = 0 Then
|
||||||
MsgBox("Keine Rechnungen für die Anlage der ZNB-Berichte gefunden!" & vbNewLine & "Vorgang wird abgebrochen.")
|
MsgBox("Keine Rechnungen für die Anlage der ZNB-Berichte gefunden!" & vbNewLine & "Vorgang für die ZNB-liste wird übersprungen.")
|
||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
|
|
||||||
@@ -1141,7 +1138,7 @@ Public Class usrcntlFakturierung
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
If dtSammelRechnugen_EZB.Rows.Count = 0 Then
|
If dtSammelRechnugen_EZB.Rows.Count = 0 Then
|
||||||
MsgBox("Keine Rechnungen der Filiale 8001 für die Anlage der ZNB-Berichte gefunden!" & vbNewLine & "Vorgang wird abgebrochen.")
|
MsgBox("Keine Rechnungen der Filiale 8001 für die Anlage der ZNB-Berichte gefunden!" & vbNewLine & "Vorgang für die ZNB-liste wird übersprungen.")
|
||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
|
|
||||||
@@ -2615,30 +2612,63 @@ Public Class usrcntlFakturierung
|
|||||||
If vbYes = MsgBox("Soll die Sammelrechnung für den " & rechnungsdatum & " zurückgesetzt werden?" & vbNewLine & "ACHTUNG, das darf nur von Administratoren durchgeführt werden!!!!", vbYesNoCancel) Then
|
If vbYes = MsgBox("Soll die Sammelrechnung für den " & rechnungsdatum & " zurückgesetzt werden?" & vbNewLine & "ACHTUNG, das darf nur von Administratoren durchgeführt werden!!!!", vbYesNoCancel) Then
|
||||||
|
|
||||||
Dim SQL As New SQL
|
Dim SQL As New SQL
|
||||||
|
Dim setBack As Boolean = False
|
||||||
|
Dim LIEFERANT As String = ""
|
||||||
|
|
||||||
|
|
||||||
'1. VZ zurücksetzen - wenn vorhanden!
|
'1. VZ zurücksetzen - wenn vorhanden!
|
||||||
SQL.doSQL("UPDATE [VERAG].[dbo].[tblMDM_Zinsberechnung] Set RK_ID = NULL,verrechnet = NULL where RK_ID in (select RK_ID from Rechnungsausgang where cast(RechnungsDatum as date) = '" & rechnungsdatum.ToShortDateString & "' and Firma_ID = 19 and Sammelrechnung = 6 )", "FMZOLL")
|
LIEFERANT = "VZ-Daten"
|
||||||
|
setBack = SQL.doSQL("UPDATE [VERAG].[dbo].[tblMDM_Zinsberechnung] Set RK_ID = NULL,verrechnet = NULL where RK_ID in (select RK_ID from Rechnungsausgang where cast(RechnungsDatum as date) = '" & rechnungsdatum.ToShortDateString & "' and Firma_ID = 19 and Sammelrechnung = 6 )", "FMZOLL")
|
||||||
|
|
||||||
|
If Not createInfo(setBack, LIEFERANT) Then Exit Sub
|
||||||
|
|
||||||
'2. SR löschen
|
'2. SR löschen
|
||||||
SQL.doSQL("delete from Rechnungsausgang where cast(RechnungsDatum as date) = '" & rechnungsdatum.ToShortDateString & "' and Firma_ID = 19 and Sammelrechnung = 6 ", "FMZOLL")
|
LIEFERANT = "SR-Rechnung"
|
||||||
|
setBack = SQL.doSQL("delete from Rechnungsausgang where cast(RechnungsDatum as date) = '" & rechnungsdatum.ToShortDateString & "' and Firma_ID = 19 and Sammelrechnung = 6 ", "FMZOLL")
|
||||||
|
|
||||||
|
If Not createInfo(setBack, LIEFERANT) Then Exit Sub
|
||||||
'3. Lieferantendaten zurücksetzten
|
'3. Lieferantendaten zurücksetzten
|
||||||
|
|
||||||
'PLOSE
|
'PLOSE
|
||||||
SQL.doSQL("update tblPLOSE_Details set plose_Fakturiert = 0, plose_FakturiertDatum=NULL where isnull(plose_Fakturiert,0) = 1 and cast(plose_FakturiertDatum as Date) >= '" & rechnungsdatum.AddDays(1) & "'", "FMZOLL")
|
LIEFERANT = "PLOSE-Daten"
|
||||||
|
setBack = SQL.doSQL("update tblPLOSE_Details set plose_Fakturiert = 0, plose_FakturiertDatum=NULL where isnull(plose_Fakturiert,0) = 1 and cast(plose_FakturiertDatum as Date) >= '" & rechnungsdatum.AddDays(1) & "'", "FMZOLL")
|
||||||
|
|
||||||
|
If Not createInfo(setBack, LIEFERANT) Then Exit Sub
|
||||||
|
|
||||||
'UTA
|
'UTA
|
||||||
SQL.doSQL("UPDATE [tblUTAImportNew] set charged=0,chargedDatetime=NULL where isnull(charged,0) = 1 and chargedDatetime >= '" & rechnungsdatum.AddDays(1) & "'", "FMZOLL")
|
LIEFERANT = "UTA-Daten"
|
||||||
|
setBack = SQL.doSQL("UPDATE [tblUTAImportNew] set charged=0,chargedDatetime=NULL where isnull(charged,0) = 1 and chargedDatetime >= '" & rechnungsdatum.AddDays(1) & "'", "FMZOLL")
|
||||||
|
|
||||||
'IDS
|
If Not createInfo(setBack, LIEFERANT) Then Exit Sub
|
||||||
SQL.doSQL("UPDATE [tblIDSTransactionsNew] Set charged = 0 ,chargedDatetime = NULL where isnull(charged,0) = 1 and chargedDatetime >= '" & rechnungsdatum.AddDays(1) & "'", "FMZOLL")
|
|
||||||
|
LIEFERANT = "IDS-Daten"
|
||||||
|
setBack = SQL.doSQL("UPDATE [tblIDSTransactionsNew] Set charged = 0 ,chargedDatetime = NULL where isnull(charged,0) = 1 and chargedDatetime >= '" & rechnungsdatum.AddDays(1) & "'", "FMZOLL")
|
||||||
|
|
||||||
|
If Not createInfo(setBack, LIEFERANT) Then Exit Sub
|
||||||
|
|
||||||
'MSE
|
'MSE
|
||||||
SQL.doSQL("UPDATE [tblMSETransactions] Set charged = 0 , chargedDatetime = NULL where isnull(charged,0) = 1 and chargedDatetime >= '" & rechnungsdatum.AddDays(1) & "'", "FMZOLL")
|
setBack = SQL.doSQL("UPDATE [tblMSETransactions] Set charged = 0 , chargedDatetime = NULL where isnull(charged,0) = 1 and chargedDatetime >= '" & rechnungsdatum.AddDays(1) & "'", "FMZOLL")
|
||||||
|
LIEFERANT = "MSE-Daten"
|
||||||
|
|
||||||
|
If Not createInfo(setBack, LIEFERANT) Then Exit Sub
|
||||||
|
|
||||||
'BANK - Wenn vorhanden
|
'BANK - Wenn vorhanden
|
||||||
SQL.doSQL("UPDATE [VERAG].[dbo].[tblMDM_Bankspesen] Set RK_ID = NULL,verrechnet = NULL, SR_datum = NULL where verrechnet >= '" & rechnungsdatum.AddDays(1) & "' and SR_datum = '" & rechnungsdatum.ToShortDateString & "'", "FMZOLL")
|
LIEFERANT = "BANK-Daten"
|
||||||
|
setBack = SQL.doSQL("UPDATE [VERAG].[dbo].[tblMDM_Bankspesen] Set RK_ID = NULL,verrechnet = NULL, SR_datum = NULL where verrechnet >= '" & rechnungsdatum.AddDays(1) & "' and SR_datum = '" & rechnungsdatum.ToShortDateString & "'", "FMZOLL")
|
||||||
|
|
||||||
|
If Not createInfo(setBack, LIEFERANT) Then Exit Sub
|
||||||
|
|
||||||
|
|
||||||
|
'MAUTDATEN
|
||||||
|
LIEFERANT = "Mautbericht-Daten"
|
||||||
|
setBack = SQL.doSQL("delete from tblMautbericht where Billingdate= '" & rechnungsdatum.ToShortDateString & "'", "FMZOLL")
|
||||||
|
|
||||||
|
If Not createInfo(setBack, LIEFERANT) Then Exit Sub
|
||||||
|
|
||||||
|
|
||||||
|
If setBack Then
|
||||||
|
MsgBox("Rücksetzung erfolgreich!")
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -2649,4 +2679,16 @@ Public Class usrcntlFakturierung
|
|||||||
|
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
Private Function createInfo(setBack As Boolean, Lieferant As String) As Boolean
|
||||||
|
|
||||||
|
Dim INFO As String = "Achtung die Rücksetzung der " & Lieferant & " ist fehlgeschlagen, Rücksetzung wird abgebrochen!"
|
||||||
|
|
||||||
|
If Not setBack Then
|
||||||
|
MsgBox(INFO)
|
||||||
|
End If
|
||||||
|
|
||||||
|
Return setBack
|
||||||
|
|
||||||
|
End Function
|
||||||
End Class
|
End Class
|
||||||
|
|||||||
@@ -24,6 +24,9 @@ Public Class cKundenSicherheiten
|
|||||||
Public Property sc_stornoDatum As Date? = Nothing
|
Public Property sc_stornoDatum As Date? = Nothing
|
||||||
Public Property sc_stornoMaId As Integer? = Nothing
|
Public Property sc_stornoMaId As Integer? = Nothing
|
||||||
|
|
||||||
|
Public Property sc_cbam_jahr As Integer? = Nothing
|
||||||
|
Public Property sc_cbam_quartal As Integer? = Nothing
|
||||||
|
|
||||||
|
|
||||||
Public hasEntry As Boolean = False
|
Public hasEntry As Boolean = False
|
||||||
|
|
||||||
@@ -34,6 +37,13 @@ Public Class cKundenSicherheiten
|
|||||||
LOAD()
|
LOAD()
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
Sub New(sc_kundenNr As String, sc_cbam_quartal As Integer, sc_cbam_jahr As Integer)
|
||||||
|
sc_kundenNr = sc_kundenNr
|
||||||
|
sc_cbam_quartal = sc_cbam_quartal
|
||||||
|
sc_cbam_jahr = sc_cbam_jahr
|
||||||
|
LOADCBAM()
|
||||||
|
End Sub
|
||||||
|
|
||||||
Public Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
Public Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||||
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||||
|
|
||||||
@@ -57,6 +67,8 @@ Public Class cKundenSicherheiten
|
|||||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("sc_storno", sc_storno))
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("sc_storno", sc_storno))
|
||||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("sc_stornoDatum", sc_stornoDatum))
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("sc_stornoDatum", sc_stornoDatum))
|
||||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("sc_stornoMaId", sc_stornoMaId))
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("sc_stornoMaId", sc_stornoMaId))
|
||||||
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("sc_cbam_jahr", sc_cbam_jahr))
|
||||||
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("sc_cbam_quartal", sc_cbam_quartal))
|
||||||
|
|
||||||
Return list
|
Return list
|
||||||
End Function
|
End Function
|
||||||
@@ -103,6 +115,33 @@ Public Class cKundenSicherheiten
|
|||||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, MethodInfo.GetCurrentMethod.Name)
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, MethodInfo.GetCurrentMethod.Name)
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
|
Public Sub LOADCBAM()
|
||||||
|
Try
|
||||||
|
hasEntry = False
|
||||||
|
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
||||||
|
Using cmd As New SqlCommand("SELECT * FROM tblKundenSicherheiten WHERE sc_kundenNr=@sc_kundenNr and sc_cbam_quartal = @sc_cbam_quartal and sc_cbam_jahr = @sc_cbamsc_cbam_jahr_year", conn)
|
||||||
|
cmd.Parameters.AddWithValue("@sc_kundenNr", sc_kundenNr)
|
||||||
|
cmd.Parameters.AddWithValue("@sc_cbam_quartal", sc_cbam_quartal)
|
||||||
|
cmd.Parameters.AddWithValue("@sc_cbam_jahr", sc_cbam_jahr)
|
||||||
|
Dim dr = cmd.ExecuteReader()
|
||||||
|
If dr.Read Then
|
||||||
|
For Each li In getParameterList()
|
||||||
|
Dim prop As PropertyInfo = Me.GetType.GetProperty(li.Scalarvariable)
|
||||||
|
If dr(li.Text) Is DBNull.Value Then
|
||||||
|
prop.SetValue(Me, Nothing)
|
||||||
|
Else
|
||||||
|
prop.SetValue(Me, dr(li.Text))
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
hasEntry = True
|
||||||
|
End If
|
||||||
|
dr.Close()
|
||||||
|
End Using
|
||||||
|
End Using
|
||||||
|
Catch ex As Exception
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
|
||||||
Public Function getUpdateCmd() As String
|
Public Function getUpdateCmd() As String
|
||||||
Dim list = getParameterList()
|
Dim list = getParameterList()
|
||||||
|
|||||||
@@ -1,8 +1,10 @@
|
|||||||
Imports System.Data.SqlClient
|
Imports System.Data.SqlClient
|
||||||
Imports System.Reflection
|
Imports System.Reflection
|
||||||
Imports System.Runtime.InteropServices.ComTypes
|
Imports System.Runtime.InteropServices.ComTypes
|
||||||
|
Imports System.Windows.Forms
|
||||||
Imports com.sun.tools.javac.util
|
Imports com.sun.tools.javac.util
|
||||||
Imports java.lang.ProcessBuilder
|
Imports java.lang.ProcessBuilder
|
||||||
|
Imports Org.BouncyCastle.Crypto.Agreement
|
||||||
Imports sun.util.resources.cldr.aa
|
Imports sun.util.resources.cldr.aa
|
||||||
Imports VERAG_PROG_ALLGEMEIN.TESTJSON
|
Imports VERAG_PROG_ALLGEMEIN.TESTJSON
|
||||||
|
|
||||||
@@ -518,6 +520,9 @@ Public Class cVERAG_CustomsDeclarations
|
|||||||
End Function
|
End Function
|
||||||
|
|
||||||
Public Sub checkfreshCBAMWarning()
|
Public Sub checkfreshCBAMWarning()
|
||||||
|
|
||||||
|
'TODO: die CBAM-Kosten pro Quartal berechnen und als "Bankgarantie" in die tblKundenSicherheiten schreiben/aktualisieren (wird aktuell noch händisch gemacht, Fehleranfällig und
|
||||||
|
|
||||||
Try
|
Try
|
||||||
Dim CBAM_ITEMS As New List(Of cVERAG_CustomsDeclarations_Item)
|
Dim CBAM_ITEMS As New List(Of cVERAG_CustomsDeclarations_Item)
|
||||||
|
|
||||||
@@ -597,6 +602,10 @@ Public Class cVERAG_CustomsDeclarations
|
|||||||
Dim dateCBAM = If(If(za_ReleaseDate, za_DeclarationDate), Now)
|
Dim dateCBAM = If(If(za_ReleaseDate, za_DeclarationDate), Now)
|
||||||
Dim eigenmasseSumme_YEAR As Decimal = getCBAM_KG(vertretenerEORI, CDate("01.01." & dateCBAM.Year), CDate("31.12." & dateCBAM.Year), za_MRN) / 1000
|
Dim eigenmasseSumme_YEAR As Decimal = getCBAM_KG(vertretenerEORI, CDate("01.01." & dateCBAM.Year), CDate("31.12." & dateCBAM.Year), za_MRN) / 1000
|
||||||
|
|
||||||
|
Dim quarter As Integer = Math.Ceiling(dateCBAM.Month / 3.0)
|
||||||
|
Dim Country As String = If(CBAM_ITEMS.FirstOrDefault()?.zaItem_OriginCountry, "")
|
||||||
|
createOrUpdateKundenSicherheitseintrag(KD_IND, Country, vertretenerEORI, quarter, dateCBAM.Year)
|
||||||
|
|
||||||
|
|
||||||
'Prüft, ob Vertrag vorliegt:
|
'Prüft, ob Vertrag vorliegt:
|
||||||
Dim hasValidVertrag_CBAM As Boolean =
|
Dim hasValidVertrag_CBAM As Boolean =
|
||||||
@@ -679,6 +688,10 @@ Public Class cVERAG_CustomsDeclarations
|
|||||||
|
|
||||||
Dim dateCBAM = If(If(za_ReleaseDate, za_DeclarationDate), Now)
|
Dim dateCBAM = If(If(za_ReleaseDate, za_DeclarationDate), Now)
|
||||||
|
|
||||||
|
Dim Country As String = If(CBAM_ITEMS.FirstOrDefault()?.zaItem_OriginCountry, "")
|
||||||
|
Dim quarter As Integer = Math.Ceiling(dateCBAM.Month / 3.0)
|
||||||
|
createOrUpdateKundenSicherheitseintrag(KD, Country, importerEORI, quarter, dateCBAM.Year)
|
||||||
|
|
||||||
Dim eigenmasseSumme_Shipment As Decimal = CBAM_ITEMS.Sum(Function(i) If(i.zaItem_NetMass, 0D)) / 1000
|
Dim eigenmasseSumme_Shipment As Decimal = CBAM_ITEMS.Sum(Function(i) If(i.zaItem_NetMass, 0D)) / 1000
|
||||||
Dim eigenmasseSumme_YEAR As Decimal = getCBAM_KG(importerEORI, CDate("01.01." & dateCBAM.Year), CDate("31.12." & dateCBAM.Year)) / 1000
|
Dim eigenmasseSumme_YEAR As Decimal = getCBAM_KG(importerEORI, CDate("01.01." & dateCBAM.Year), CDate("31.12." & dateCBAM.Year)) / 1000
|
||||||
|
|
||||||
@@ -807,6 +820,95 @@ Public Class cVERAG_CustomsDeclarations
|
|||||||
Return String.Join(", ", result)
|
Return String.Join(", ", result)
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
Private Function createOrUpdateKundenSicherheitseintrag(KUNDE As cKunde, ImportCountry As String, EORI As String, cbamQquarter As Integer, cbamYear As Integer)
|
||||||
|
|
||||||
|
Dim von As Date
|
||||||
|
Dim bis As Date
|
||||||
|
Dim CBAMZertifikatKosten As Double = 0
|
||||||
|
|
||||||
|
If ImportCountry = "" Then Return False
|
||||||
|
|
||||||
|
Select Case cbamQquarter
|
||||||
|
Case "1"
|
||||||
|
von = New Date(cbamYear, 1, 1)
|
||||||
|
bis = New Date(cbamYear, 3, 31)
|
||||||
|
CBAMZertifikatKosten = 75.36
|
||||||
|
|
||||||
|
Case "2"
|
||||||
|
von = New Date(cbamYear, 4, 1)
|
||||||
|
bis = New Date(cbamYear, 6, 30)
|
||||||
|
CBAMZertifikatKosten = 75.28
|
||||||
|
Case "3"
|
||||||
|
von = New Date(cbamYear, 7, 1)
|
||||||
|
bis = New Date(cbamYear, 9, 30)
|
||||||
|
CBAMZertifikatKosten = 82.32
|
||||||
|
|
||||||
|
Case "4"
|
||||||
|
von = New Date(cbamYear, 10, 1)
|
||||||
|
bis = New Date(cbamYear, 12, 31)
|
||||||
|
CBAMZertifikatKosten = 0
|
||||||
|
End Select
|
||||||
|
|
||||||
|
Dim EORI_ = {EORI}
|
||||||
|
|
||||||
|
Dim LIST As List(Of VERAG_PROG_ALLGEMEIN.cVERAG_CustomsDeclarations) = VERAG_PROG_ALLGEMEIN.cVERAG_CustomsDeclarations.LOAD_List_CBAM(EORI_, ImportCountry, von, bis,, True)
|
||||||
|
|
||||||
|
|
||||||
|
Dim grouped = From za In LIST
|
||||||
|
Where za.Items IsNot Nothing
|
||||||
|
From it In za.Items
|
||||||
|
Let tarif = If(it.zaItem_HSCode IsNot Nothing AndAlso it.zaItem_HSCode.Length >= 8,
|
||||||
|
it.zaItem_HSCode.Substring(0, 8),
|
||||||
|
it.zaItem_HSCode)
|
||||||
|
Let country = it.zaItem_OriginCountry
|
||||||
|
Group By tarif, country
|
||||||
|
Into grp = Group
|
||||||
|
Select New With {
|
||||||
|
.Tarif = tarif,
|
||||||
|
.Country = country,
|
||||||
|
.Eigenmasse = grp.Sum(Function(x) If(x.it.zaItem_NetMass, 0D)),
|
||||||
|
.Rohmasse = grp.Sum(Function(x) If(x.it.zaItem_GrossMass, 0D)),
|
||||||
|
.RechnungswertEUR = grp.Sum(Function(x) If(x.it.zaItem_InvoiceValueEUR, 0D))
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Dim gesamtBetrag As Double = 0
|
||||||
|
Dim cost As Double = 0
|
||||||
|
Dim emission As Double = 0
|
||||||
|
Dim benchmark As Double = 0
|
||||||
|
|
||||||
|
|
||||||
|
For Each r In grouped
|
||||||
|
cATEZ_Greenpulse_CBAM_CostCalculation.calcCBAM_ByCertificatePrice(r.Tarif, r.Rohmasse, r.Country, CBAMZertifikatKosten, cbamYear, cost, emission, benchmark)
|
||||||
|
gesamtBetrag += cost
|
||||||
|
Next
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Dim Kunde_Sicherheit As New cKundenSicherheiten(KUNDE.KundenNr, cbamQquarter, cbamYear)
|
||||||
|
If Kunde_Sicherheit.hasEntry Then
|
||||||
|
|
||||||
|
Kunde_Sicherheit.sc_Betrag = gesamtBetrag
|
||||||
|
KUNDE.SAVE()
|
||||||
|
Else
|
||||||
|
Kunde_Sicherheit.sc_Bemerkung = "EUR"
|
||||||
|
Kunde_Sicherheit.sc_Bemerkung = "CBAM Kosten Q" & cbamQquarter & " " & cbamYear
|
||||||
|
Kunde_Sicherheit.sc_Art = "BANKGARANTIE"
|
||||||
|
Kunde_Sicherheit.sc_Betrag = gesamtBetrag
|
||||||
|
Kunde_Sicherheit.sc_datum = Today()
|
||||||
|
Kunde_Sicherheit.sc_Mitarbeiter = "AUTO"
|
||||||
|
KUNDE.SAVE()
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
End Function
|
||||||
|
|
||||||
Public Function getCBAM_KG(EORI As String, von As Date, bis As Date, Optional without_MRN As String = "", Optional isDeclarant As Boolean = False) As Decimal
|
Public Function getCBAM_KG(EORI As String, von As Date, bis As Date, Optional without_MRN As String = "", Optional isDeclarant As Boolean = False) As Decimal
|
||||||
Try
|
Try
|
||||||
If EORI = "" Then Return 0
|
If EORI = "" Then Return 0
|
||||||
|
|||||||
Reference in New Issue
Block a user