USTVA, Summenberechnung USTVA, , etc.

This commit is contained in:
2024-10-22 13:05:11 +02:00
parent f6de85f515
commit 4f7ac17921
10 changed files with 395 additions and 193 deletions

View File

@@ -192,7 +192,7 @@ Public Class cAPI
Me.api_fehlversuch += 1
Me.SAVE()
End Sub
Public Sub UPDTAE_OK(Optional api_status = 1, Optional api_filepathDestination = Nothing)
Public Sub UPDTAE_OK(Optional api_status = 1, Optional api_filepathDestination = Nothing, Optional MethodeName = Nothing)
Me.api_status = cAPI_Status.OK
Me.api_finTstmp = Now
Me.api_filepathDestination = If(api_filepathDestination, Me.api_filepathDestination)
@@ -202,6 +202,7 @@ Public Class cAPI
Me.api_EMailSubject = If(api_EMailSubject, Me.api_EMailSubject)
Me.api_EMailText = If(api_EMailText, Me.api_EMailText)
Me.api_EMailAttCnt = If(api_EMailAttCnt, Me.api_EMailAttCnt)
Me.api_errMethodName = If(MethodeName, MethodeName)
Me.SAVE()
End Sub

View File

@@ -86,6 +86,7 @@ Public Class cKundenErweitert
Property kde_WechselErhaltenAm As Object = Nothing
Property kde_BankgarantielErhaltenAm As Object = Nothing
Property kde_WechselBlanko As Boolean = False
Property kde_UStV_SummeVorschaubetragEUR_PLOSE As Object = Nothing
@@ -177,8 +178,7 @@ Public Class cKundenErweitert
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("kde_WechselErhaltenAm", kde_WechselErhaltenAm))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("kde_BankgarantielErhaltenAm", kde_BankgarantielErhaltenAm))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("kde_WechselBlanko", kde_WechselBlanko))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("kde_UStV_SummeVorschaubetragEUR_PLOSE", kde_UStV_SummeVorschaubetragEUR_PLOSE))
Return list
End Function

View File

@@ -1,4 +1,6 @@
Public Class cMDMFunctionsAllgemein
Imports javax.validation.constraints
Public Class cMDMFunctionsAllgemein
Shared Function Update_UStVASummenNeuBerechnen(KundenNr As Integer) As Boolean
Try
@@ -7,7 +9,7 @@
If KundenNr < 0 Then Return False
Dim dtKundenAntrage As DataTable = SQL.loadDgvBySql("SELECT tblUStVAntrag.UStVAn_ID, tblUStVAntrag.UStVAn_KuNr FROM tblUStVAntrag ORDER BY tblUStVAntrag.UStVAn_ID where UStVAn_KuNr = " & KundenNr, "FMZOLL")
Dim dtKundenAntrage As DataTable = SQL.loadDgvBySql("SELECT tblUStVAntrag.UStVAn_ID, tblUStVAntrag.UStVAn_KuNr FROM tblUStVAntrag where UStVAn_KuNr = " & KundenNr & "ORDER BY tblUStVAntrag.UStVAn_ID", "FMZOLL")
If dtKundenAntrage.Rows.Count < 1 Then Return False
@@ -88,6 +90,9 @@
Shared Function UStVAKunden_SummenNeuBerechnen(Optional KundenNr As Integer = 0) As Boolean
Try
Dim sumChangedPLOSEOK As Boolean = True
Dim sumChangedPLOSE As Boolean = True
Dim sql As New VERAG_PROG_ALLGEMEIN.SQL
Dim sqlWhere = ""
If KundenNr > 0 Then
@@ -99,8 +104,9 @@
End If
'alle Kunden, die eine SteuerNr hinterlegt haben inkl. deren hinterlegte Summen!
Dim sqlKunden = "SELECT Kunden.KundenNr as KundenNr, Kunden.UStV_SummeUmsatzsteuerbetragEUR, Kunden.UStV_SummeErstattungsbetragEUR, Kunden.UStV_Summe3470BetragEUR, Kunden.UStV_SummeVZBetragEUR, Kunden.UStV_SummeVorschaubetragEUR_VERAG, Kunden.UStV_SummeVorschaubetragEUR_IDS, Kunden.UStV_SummeVorschaubetragEUR_IT, Kunden.UStV_SummeVorschaubetragEUR_MSE, Kunden.UStV_SummeVorschaubetragEUR_UTA, Kunden.UStV_SummeVorschaubetragEUR
FROM Kunden
Dim sqlKunden = "SELECT Kunden.KundenNr as KundenNr, Kunden.UStV_SummeUmsatzsteuerbetragEUR, Kunden.UStV_SummeErstattungsbetragEUR, Kunden.UStV_Summe3470BetragEUR, Kunden.UStV_SummeVZBetragEUR, Kunden.UStV_SummeVorschaubetragEUR_VERAG, Kunden.UStV_SummeVorschaubetragEUR_IDS, Kunden.UStV_SummeVorschaubetragEUR_IT, Kunden.UStV_SummeVorschaubetragEUR_MSE, Kunden.UStV_SummeVorschaubetragEUR_UTA, Kunden.UStV_SummeVorschaubetragEUR, kde_UStV_SummeVorschaubetragEUR_PLOSE as UStV_SummeVorschaubetragEUR_PLOSE
FROM Kunden
INNER JOIN [tblKundenErweitert] on [kde_KundenNr] = Kunden.KundenNr
WHERE Kunden.KundenNr " & sqlWhere &
"order by Kunden.KundenNr"
@@ -134,6 +140,7 @@
Dim curUStV_SummeVorschaubetragEUR_IT As Double
Dim curUStV_SummeVorschaubetragEUR_MSE As Double
Dim curUStV_SummeVorschaubetragEUR_UTA As Double
Dim curUStV_SummeVorschaubetragEUR_PLOSE As Double
Dim curUStV_SummeUmsatzsteuerbetragEUR As Double
Dim curUStV_SummeErstattungsbetragEUR As Double
@@ -147,12 +154,14 @@
curUStV_SummeVorschaubetragEUR_IT = UStVKunden_Summen_lesen_Vorschau_IT(r.Item("KundenNr"), invoiceDate)
curUStV_SummeVorschaubetragEUR_MSE = UStVKunden_Summen_lesen_Vorschau_MSE(r.Item("KundenNr"), invoiceDate)
curUStV_SummeVorschaubetragEUR_UTA = UStVKunden_Summen_lesen_Vorschau_UTA(r.Item("KundenNr"), invoiceDate)
curUStV_SummeVorschaubetragEUR_PLOSE = UStVKunden_Summen_lesen_Vorschau_PLOSE(r.Item("KundenNr"), invoiceDate)
curUStV_SummeVorschaubetragEUR += curUStV_SummeVorschaubetragEUR_VERAG
curUStV_SummeVorschaubetragEUR += curUStV_SummeVorschaubetragEUR_IDS
curUStV_SummeVorschaubetragEUR += curUStV_SummeVorschaubetragEUR_IT
curUStV_SummeVorschaubetragEUR += curUStV_SummeVorschaubetragEUR_MSE
curUStV_SummeVorschaubetragEUR += curUStV_SummeVorschaubetragEUR_UTA
curUStV_SummeVorschaubetragEUR += curUStV_SummeVorschaubetragEUR_PLOSE
Dim displayViewKundenSummen = New DataView(dtKundenSummen, "", "UStVAn_KuNr", DataViewRowState.CurrentRows)
Dim KundenDTSummenNeuBerechnet As DataTable = displayViewKundenSummen.ToTable(False)
@@ -162,10 +171,12 @@
curUStV_SummeErstattungsbetragEUR = IIf(KundenDTSummenNeuBerechnet.Rows(0).Item("UStVKu_SummeErstattung").ToString <> "" AndAlso IsNumeric(KundenDTSummenNeuBerechnet.Rows(0).Item("UStVKu_SummeErstattung").ToString), CDbl(KundenDTSummenNeuBerechnet.Rows(0).Item("UStVKu_SummeErstattung").ToString), 0)
curUStV_Summe3470BetragEUR = IIf(KundenDTSummenNeuBerechnet.Rows(0).Item("UStVKu_SummeKonto3470").ToString <> "" AndAlso IsNumeric(KundenDTSummenNeuBerechnet.Rows(0).Item("UStVKu_SummeKonto3470").ToString), CDbl(KundenDTSummenNeuBerechnet.Rows(0).Item("UStVKu_SummeKonto3470").ToString), 0)
curUStV_SummeVZBetragEUR = IIf(KundenDTSummenNeuBerechnet.Rows(0).Item("UStVKu_SummeVorauszahlung").ToString <> "" AndAlso IsNumeric(KundenDTSummenNeuBerechnet.Rows(0).Item("UStVKu_SummeVorauszahlung").ToString), CDbl(KundenDTSummenNeuBerechnet.Rows(0).Item("UStVKu_SummeVorauszahlung").ToString), 0)
End If
Dim sumChanged As Boolean = False
Dim sumChangedOK As Boolean = False
If Not (CDbl(r.Item("UStV_SummeUmsatzsteuerbetragEUR")) = curUStV_SummeUmsatzsteuerbetragEUR And
CDbl(r.Item("UStV_SummeErstattungsbetragEUR")) = curUStV_SummeErstattungsbetragEUR And
CDbl(r.Item("UStV_Summe3470BetragEUR")) = curUStV_Summe3470BetragEUR And
@@ -177,37 +188,47 @@
CDbl(r.Item("UStV_SummeVorschaubetragEUR_UTA")) = curUStV_SummeVorschaubetragEUR_UTA And
CDbl(r.Item("UStV_SummeVorschaubetragEUR")) = curUStV_SummeVorschaubetragEUR) Then
sumChanged = True
sumChangedOK = False
End If
If CDbl(r.Item("UStV_SummeVorschaubetragEUR_PLOSE")) = curUStV_SummeVorschaubetragEUR_PLOSE Then
sumChangedPLOSE = True
sumChangedPLOSEOK = False
End If
If sumChanged Then
'updateSummen
sql.doSQL("Update Kunden set Kunden.UStV_SummeUmsatzsteuerbetragEUR = " & curUStV_SummeUmsatzsteuerbetragEUR & ",
Kunden.UStV_SummeErstattungsbetragEUR = " & curUStV_SummeErstattungsbetragEUR & ",
Kunden.UStV_Summe3470BetragEUR = " & curUStV_Summe3470BetragEUR & ",
Kunden.UStV_SummeVZBetragEUR = " & curUStV_SummeVZBetragEUR & ",
Kunden.UStV_SummeVorschaubetragEUR_VERAG = " & curUStV_SummeVorschaubetragEUR_VERAG & ",
Kunden.UStV_SummeVorschaubetragEUR_IDS = " & curUStV_SummeVorschaubetragEUR_IDS & ",
Kunden.UStV_SummeVorschaubetragEUR_IT = " & curUStV_SummeVorschaubetragEUR_IT & ",
Kunden.UStV_SummeVorschaubetragEUR_MSE = " & curUStV_SummeVorschaubetragEUR_MSE & ",
Kunden.UStV_SummeVorschaubetragEUR_UTA = " & curUStV_SummeVorschaubetragEUR_UTA & ",
Kunden.UStV_SummeVorschaubetragEUR = " & curUStV_SummeVorschaubetragEUR, "FMZOLL")
'UStVKunden_Summen_speichern_Vorschau_VERAG
'UPDATE Kunden SET Kunden.UStV_SummeVorschaubetragEUR_VERAG = CCur(Nz(DSum("[SteuerbetragEUR]","qryUStVVorschau_VERAG","[RechnungsKundenNr] = " & [Kunden]![KundenNr]),0))
'WHERE (((Kunden.KundenNr)=[prmUStVKu_KuNr]));
'UStVKunden_Summen_speichern_Vorschau_IDS
'UPDATE Kunden SET Kunden.UStV_SummeVorschaubetragEUR_IDS = CCur(Nz(DSum("[SteuerbetragEUR]","qryUStVVorschau_IDS","[RechnungsKundenNr] = " & [Kunden]![KundenNr]),0))
'WHERE (((Kunden.KundenNr)=[prmUStVKu_KuNr]));
sumChangedOK = sql.doSQL("Update Kunden set Kunden.UStV_SummeUmsatzsteuerbetragEUR = " & curUStV_SummeUmsatzsteuerbetragEUR.ToString.Replace(",", ".") & ",
Kunden.UStV_SummeErstattungsbetragEUR = " & curUStV_SummeErstattungsbetragEUR.ToString.Replace(",", ".") & ",
Kunden.UStV_Summe3470BetragEUR = " & curUStV_Summe3470BetragEUR.ToString.Replace(",", ".") & ",
Kunden.UStV_SummeVZBetragEUR = " & curUStV_SummeVZBetragEUR.ToString.Replace(",", ".") & ",
Kunden.UStV_SummeVorschaubetragEUR_VERAG = " & curUStV_SummeVorschaubetragEUR_VERAG.ToString.Replace(",", ".") & ",
Kunden.UStV_SummeVorschaubetragEUR_IDS = " & curUStV_SummeVorschaubetragEUR_IDS.ToString.Replace(",", ".") & ",
Kunden.UStV_SummeVorschaubetragEUR_IT = " & curUStV_SummeVorschaubetragEUR_IT.ToString.Replace(",", ".") & ",
Kunden.UStV_SummeVorschaubetragEUR_MSE = " & curUStV_SummeVorschaubetragEUR_MSE.ToString.Replace(",", ".") & ",
Kunden.UStV_SummeVorschaubetragEUR_UTA = " & curUStV_SummeVorschaubetragEUR_UTA.ToString.Replace(",", ".") & ",
Kunden.UStV_SummeVorschaubetragEUR = " & curUStV_SummeVorschaubetragEUR.ToString.Replace(",", "."), "FMZOLL")
End If
If sumChangedPLOSE Then
sumChangedPLOSEOK = sql.doSQL("Update tblKundenErweitert set kde_UStV_SummeVorschaubetragEUR_PLOSE = " & curUStV_SummeVorschaubetragEUR_PLOSE.ToString.Replace(",", ".") & "", "FMZOLL")
End If
'UStVKunden_Summen_speichern_Vorschau_VERAG
'UPDATE Kunden SET Kunden.UStV_SummeVorschaubetragEUR_VERAG = CCur(Nz(DSum("[SteuerbetragEUR]","qryUStVVorschau_VERAG","[RechnungsKundenNr] = " & [Kunden]![KundenNr]),0))
'WHERE (((Kunden.KundenNr)=[prmUStVKu_KuNr]));
'UStVKunden_Summen_speichern_Vorschau_IDS
'UPDATE Kunden SET Kunden.UStV_SummeVorschaubetragEUR_IDS = CCur(Nz(DSum("[SteuerbetragEUR]","qryUStVVorschau_IDS","[RechnungsKundenNr] = " & [Kunden]![KundenNr]),0))
'WHERE (((Kunden.KundenNr)=[prmUStVKu_KuNr]));
Next
End If
Return sumChangedPLOSEOK And sumChangedPLOSEOK
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL)
@@ -291,7 +312,7 @@
ORDER BY dbo.tblDieselArchiv.KdNrVERAG, dbo.tblSteuernummern.LandNr"
Dim dtIT As DataTable = SQL.loadDgvBySql(sqlFMZollDaten, "FMZOLL")
Dim dtIT As DataTable = sql.loadDgvBySql(sqlFMZollDaten, "FMZOLL")
For Each r As DataRow In dtIT.Rows
Dim UST_org = CDbl(r.Item("Vorschaubetrag"))
@@ -311,6 +332,51 @@
End Function
Shared Function UStVKunden_Summen_lesen_Vorschau_PLOSE(varUStVAn_KuNr As Integer, invoiceDate As Date) As Double
'1300 dtmRechnungsdatum = IIf(Date > DateSerial(Year(Date), 6, 30), DateSerial(Year(Date), 1, 1), DateSerial(Year(Date) - 1, 1, 1))
'1310 strParameter = ParameterBereitstellen(varUStVAn_KuNr, dtmRechnungsdatum)
'1320 Set qdf = dbs.CreateQueryDef("")
'1330 With qdf
'1340 .Connect = AktuelleVerbindungszeichenfolge(0)
'1350 .ReturnsRecords = True
'1360 .SQL = "EXEC [dbo].[spUStVVorschau_IDS_Summe] " & strParameter
'1370 Set rst = qdf.OpenRecordset()
'1380 End With
'1390 Do Until rst.EOF
'1400 UStVKunden_Summen_lesen_Vorschau_IDS = UStVKunden_Summen_lesen_Vorschau_IDS + rst![Vorschaubetrag]
'1410 rst.MoveNext
'1420 Loop
Try
Dim sql As New VERAG_PROG_ALLGEMEIN.SQL
Dim summeSchnittstelle As Double
Dim sqlPLOSE = "select plose_POLSEKundennummer, sum([plose_MWSTBetrag])[plose_MWSTBetrag] FROM [tblPLOSE_Details] INNER JOIN Adressen on PLOSEKundenNr=plose_POLSEKundennummer
WHERE plose_Archiv = 1 AND plose_LieferantCode IN (0,1,7) AND cast(plose_RechnungsDatum as date) >= '" & invoiceDate.ToShortDateString & "' and plose_POLSEKundennummer = " & varUStVAn_KuNr & "
group by plose_POLSEKundennummer"
Dim dtPLOSE As DataTable = sql.loadDgvBySql(sqlPLOSE, "FMZOLL")
For Each r As DataRow In dtPLOSE.Rows
Dim UST_org = CDbl(r.Item("plose_MWSTBetrag"))
If UST_org <> 0 Then
summeSchnittstelle += UST_org
End If
Next
Return summeSchnittstelle
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL)
Return 0
End Try
End Function
Shared Function UStVKunden_Summen_lesen_Vorschau_IT(varUStVAn_KuNr As Integer, invoiceDate As Date) As Double
' Dim qdf As DAO.QueryDef
@@ -359,7 +425,7 @@
AND (dbo.tblMautITArchiv.Verrechnungsdatum >= '" & invoiceDate.ToShortDateString & "')
GROUP BY dbo.tblSteuernummern.AdressenNr, dbo.tblSteuernummern.LandNr, dbo.tblMautITArchiv.Verrechnungsdatum, dbo.tblMautITArchiv.Code_Adressat_des_Kontoauszugs"
Dim dtIT As DataTable = SQL.loadDgvBySql(sqlITSumme, "FMZOLL")
Dim dtIT As DataTable = sql.loadDgvBySql(sqlITSumme, "FMZOLL")
For Each r As DataRow In dtIT.Rows
Dim UST_org = CDbl(r.Item("Vorschaubetrag"))
@@ -443,7 +509,7 @@
Next
Return summealteSchnittstelle + summeNeueSchnittstelle
Return summeAlteSchnittstelle + summeNeueSchnittstelle
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL)
@@ -547,6 +613,9 @@
End If
Next
If Math.Round(summeAlteSchnittstelle, 2) = Math.Round(summeNeueSchnittstelle, 2) Then
Return summeNeueSchnittstelle
End If
Return summeAlteSchnittstelle + summeNeueSchnittstelle