Vorschausummen.

This commit is contained in:
2025-04-11 10:16:31 +02:00
parent 09d7c6d5b6
commit 057afa710e
4 changed files with 207 additions and 129 deletions

View File

@@ -1,5 +1,6 @@
Imports com.sun.org.apache.xpath.internal.functions
Imports javax.validation.constraints
Imports Org.BouncyCastle.Asn1
Public Class cMDMFunctionsAllgemein
@@ -25,6 +26,20 @@ Public Class cMDMFunctionsAllgemein
UTAAlteSchnittstelle = UTAAlt
UTANeueSchnittstelle = UTANeu
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
ploseAlteLogikSchnittstelle = True
ploseNeueLogikSchnittstelle = True
ITSchnittstelle = False
MSEAlteSchnittstelle = True
MSENeueSchnittstelle = True
IDSAlteSchnittstelle = True
IDSNeueSchnittstelle = True
UTAAlteSchnittstelle = True
UTANeueSchnittstelle = True
End If
End Function
@@ -130,8 +145,9 @@ Public Class cMDMFunctionsAllgemein
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, kde_UStV_SummeVorschaubetragEUR_PLOSE as UStV_SummeVorschaubetragEUR_PLOSE
Dim sqlKunden = "SELECT Kunden.KundenNr as KundenNr,isnull(Adressen.LandKz,'') as LandKz, 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 Adressen on Adressen.AdressenNr = Kunden.KundenNr
left JOIN [tblKundenErweitert] on [kde_KundenNr] = Kunden.KundenNr
WHERE Kunden.KundenNr " & sqlWhere &
" order by Kunden.KundenNr"
@@ -146,6 +162,13 @@ Public Class cMDMFunctionsAllgemein
'Neuberechnung der Steuerbeträge aus den Anträgen
'WICHTIG laut Brigitte am 09.04.2025:
'SRB und BIH Kunden bekommen die MWST direkt vom HU Finanzamt ausbezahlt.
'Deswegen sollten alle ungarischen Anträge die wir für SRB und BIH Kunden stellen, nicht beim Risiko mitberechnet werden
Dim sqlSummeBilden = "SELECT
tblUStVAntrag.UStVAn_KuNr,
SUM(tblUStVAntrag.UStVAn_USteuerbetragEUR) As UStVKu_SummeUmsatzsteuer,
@@ -179,12 +202,12 @@ Public Class cMDMFunctionsAllgemein
Dim invoiceDate = If(Date.Now > New Date(Date.Now.Year, 6, 30), New Date(Date.Now.Year, 1, 1), New Date(Date.Now.Year - 1, 1, 1))
'Neuberechnung der Vorschausummen (also alle noch nicht verrechneten Transaktionen , die aber schon eingelesen wurden)
curUStV_SummeVorschaubetragEUR_VERAG = UStVKunden_Summen_lesen_Vorschau_VERAG(r.Item("KundenNr"), invoiceDate)
curUStV_SummeVorschaubetragEUR_IDS = UStVKunden_Summen_lesen_Vorschau_IDS(r.Item("KundenNr"), invoiceDate, IDSAlteSchnittstelle, IDSNeueSchnittstelle)
curUStV_SummeVorschaubetragEUR_IT = UStVKunden_Summen_lesen_Vorschau_IT(r.Item("KundenNr"), invoiceDate, ITSchnittstelle)
curUStV_SummeVorschaubetragEUR_MSE = UStVKunden_Summen_lesen_Vorschau_MSE(r.Item("KundenNr"), invoiceDate, MSEAlteSchnittstelle, MSENeueSchnittstelle)
curUStV_SummeVorschaubetragEUR_UTA = UStVKunden_Summen_lesen_Vorschau_UTA(r.Item("KundenNr"), invoiceDate, UTAAlteSchnittstelle, UTANeueSchnittstelle)
curUStV_SummeVorschaubetragEUR_PLOSE = UStVKunden_Summen_lesen_Vorschau_PLOSE(r.Item("KundenNr"), invoiceDate, ploseAlteLogikSchnittstelle, ploseNeueLogikSchnittstelle)
curUStV_SummeVorschaubetragEUR_VERAG = UStVKunden_Summen_lesen_Vorschau_VERAG(r.Item("KundenNr"), r.Item("LandKz"), invoiceDate)
curUStV_SummeVorschaubetragEUR_IDS = UStVKunden_Summen_lesen_Vorschau_IDS(r.Item("KundenNr"), r.Item("LandKz"), invoiceDate, IDSAlteSchnittstelle, IDSNeueSchnittstelle)
curUStV_SummeVorschaubetragEUR_IT = UStVKunden_Summen_lesen_Vorschau_IT(r.Item("KundenNr"), r.Item("LandKz"), invoiceDate, ITSchnittstelle)
curUStV_SummeVorschaubetragEUR_MSE = UStVKunden_Summen_lesen_Vorschau_MSE(r.Item("KundenNr"), r.Item("LandKz"), invoiceDate, MSEAlteSchnittstelle, MSENeueSchnittstelle)
curUStV_SummeVorschaubetragEUR_UTA = UStVKunden_Summen_lesen_Vorschau_UTA(r.Item("KundenNr"), r.Item("LandKz"), invoiceDate, UTAAlteSchnittstelle, UTANeueSchnittstelle)
curUStV_SummeVorschaubetragEUR_PLOSE = UStVKunden_Summen_lesen_Vorschau_PLOSE(r.Item("KundenNr"), r.Item("LandKz"), invoiceDate, ploseAlteLogikSchnittstelle, ploseNeueLogikSchnittstelle)
curUStV_SummeVorschaubetragEUR += curUStV_SummeVorschaubetragEUR_VERAG
curUStV_SummeVorschaubetragEUR += curUStV_SummeVorschaubetragEUR_IDS
@@ -303,7 +326,7 @@ Public Class cMDMFunctionsAllgemein
End Try
End Function
Shared Function UStVKunden_Summen_lesen_Vorschau_VERAG(varUStVAn_KuNr As Integer, invoiceDate As Date) As Double
Shared Function UStVKunden_Summen_lesen_Vorschau_VERAG(varUStVAn_KuNr As Integer, landKZ As String, invoiceDate As Date) As Double
'Return 0
' Public Function UStVKunden_Summen_lesen_Vorschau_VERAG(ByRef varUStVAn_KuNr As Variant) As Currency
@@ -349,7 +372,7 @@ Public Class cMDMFunctionsAllgemein
End Function
Shared Function UStVKunden_Summen_lesen_Vorschau_IDS(varUStVAn_KuNr As Integer, invoiceDate As Date, calcSummeAlteSchnittstelle As Boolean, calcSummeNeueSchnittstelle As Boolean) As Double
Shared Function UStVKunden_Summen_lesen_Vorschau_IDS(varUStVAn_KuNr As Integer, landKZ As String, invoiceDate As Date, calcSummeAlteSchnittstelle As Boolean, calcSummeNeueSchnittstelle As Boolean) 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)
@@ -375,7 +398,7 @@ Public Class cMDMFunctionsAllgemein
dbo.tblSteuernummern ON dbo.tblDieselArchiv.KdNrVERAG = dbo.tblSteuernummern.AdressenNr INNER JOIN
dbo.tbl_IDS_Länder ON dbo.tblSteuernummern.LandNr = dbo.tbl_IDS_Länder.LandNr AND dbo.tblDieselArchiv.[Outlet Country Code] = dbo.tbl_IDS_Länder.OutletCountryCode
WHERE (dbo.tblDieselArchiv.KdNrVERAG = " & varUStVAn_KuNr & " ) AND (dbo.tblDieselArchiv.[Year Month Day] >= '" & invoiceDate.ToShortDateString & "') AND (dbo.tblDieselArchiv.UStVAn_ID IS NULL) AND
(dbo.tblSteuernummern.UStV = 1)
(dbo.tblSteuernummern.UStV = 1) " & IIf(landKZ = "SRB" OrElse landKZ = "BIH", " AND dbo.tblSteuernummern.LandKZ <> 'HU'", "") & "
GROUP BY dbo.tblDieselArchiv.KdNrVERAG, dbo.tblSteuernummern.LandNr
ORDER BY dbo.tblDieselArchiv.KdNrVERAG, dbo.tblSteuernummern.LandNr"
@@ -397,7 +420,7 @@ Public Class cMDMFunctionsAllgemein
dbo.tblSteuernummern ON [tblIDSTransactionsNew].KdNrVERAG = dbo.tblSteuernummern.AdressenNr INNER JOIN
dbo.tbl_IDS_Länder ON dbo.tblSteuernummern.LandNr = dbo.tbl_IDS_Länder.LandNr AND [tblIDSTransactionsNew].[OutletCountryCode] = dbo.tbl_IDS_Länder.OutletCountryCode
WHERE ([tblIDSTransactionsNew].KdNrVERAG = " & varUStVAn_KuNr & " ) AND ([tblIDSTransactionsNew].[YearMonthDay] >= '" & invoiceDate.ToShortDateString & "') AND ([tblIDSTransactionsNew].UStVAn_ID IS NULL) AND
(dbo.tblSteuernummern.UStV = 1)
(dbo.tblSteuernummern.UStV = 1) " & IIf(landKZ = "SRB" OrElse landKZ = "BIH", " AND dbo.tblSteuernummern.LandKZ <> 'HU'", "") & "
GROUP BY [tblIDSTransactionsNew].KdNrVERAG, dbo.tblSteuernummern.LandNr
ORDER BY [tblIDSTransactionsNew].KdNrVERAG, dbo.tblSteuernummern.LandNr"
@@ -422,7 +445,7 @@ Public Class cMDMFunctionsAllgemein
End Function
Shared Function UStVKunden_Summen_lesen_Vorschau_PLOSE(varUStVAn_KuNr As Integer, invoiceDate As Date, calcSummeAlteSchnittstelle As Boolean, calcSummeNeueSchnitttelle As Boolean) As Double
Shared Function UStVKunden_Summen_lesen_Vorschau_PLOSE(varUStVAn_KuNr As Integer, landKZ As String, invoiceDate As Date, calcSummeAlteSchnittstelle As Boolean, calcSummeNeueSchnitttelle As Boolean) As Double
' set plose_Archiv=1, [plose_ArchiviertDatum]=GETDATE(), UStVAn_ID = @UStVAn_ID beim Einarbeiten in USTVA
@@ -436,8 +459,11 @@ Public Class cMDMFunctionsAllgemein
'plose_MWSTBetragWaehrungAbbuchung ist immer in EUR
Dim sqlPLOSE = "select plose_POLSEKundennummer, sum([plose_MWSTBetragWaehrungAbbuchung])[plose_MWSTBetragWaehrungAbbuchung] FROM [tblPLOSE_Details] INNER JOIN Adressen on PLOSEKundenNr=plose_POLSEKundennummer
WHERE plose_Archiv <> 1 AND plose_Fakturiert = 1 AND plose_LieferantCode IN (0,1,7) AND cast(plose_RechnungsDatum as date) >= '" & invoiceDate.ToShortDateString & "' and AdressenNr = " & varUStVAn_KuNr & "
Dim sqlPLOSE = "select plose_POLSEKundennummer, sum([plose_MWSTBetragWaehrungAbbuchung])[plose_MWSTBetragWaehrungAbbuchung] FROM [tblPLOSE_Details]
INNER JOIN tblPLOSE_Produktbeschreibung ON [plp_ProductCode]=[plose_ProduktCode]
INNER JOIN Adressen on PLOSEKundenNr=plose_POLSEKundennummer
INNER JOIN dbo.tblSteuernummern ON dbo.tblSteuernummern.AdressenNr = dbo.Adressen.AdressenNr and dbo.tblPLOSE_Produktbeschreibung.plp_Land = tblSteuernummern.LandKZ
WHERE dbo.tblSteuernummern.AdressenNr = " & varUStVAn_KuNr & " AND (dbo.tblSteuernummern.UStV = 1) AND plose_Archiv <> 1 AND plose_Fakturiert = 1 AND plose_LieferantCode IN (0,1,7) AND cast(plose_RechnungsDatum as date) >= '" & invoiceDate.ToShortDateString & "' and Adressen.AdressenNr = " & varUStVAn_KuNr & IIf(landKZ = "SRB" OrElse landKZ = "BIH", " AND dbo.tblSteuernummern.LandKZ <> 'HU'", "") & "
group by plose_POLSEKundennummer"
@@ -454,8 +480,10 @@ Public Class cMDMFunctionsAllgemein
If calcSummeNeueSchnitttelle Then
Dim sqlPLOSE = "select plInv_PLOSEKundennummer, sum([plInv_MWSTBetrag])[plInv_MWSTBetrag], ISNULL([plInv_Currency],'') as plInv_Currency FROM [tblPLOSE_Inv_Data] INNER JOIN Adressen on PLOSEKundenNr=plInv_PLOSEKundennummer
WHERE plInv_Archiv <> 1 AND plInv_ArchiviertDatum is null AND cast(plInv_SupplierRechnungsDatum as date) >= '" & invoiceDate.ToShortDateString & "' and AdressenNr = " & varUStVAn_KuNr & "
Dim sqlPLOSE = "select plInv_PLOSEKundennummer, sum([plInv_MWSTBetrag])[plInv_MWSTBetrag], ISNULL([plInv_Currency],'') as plInv_Currency FROM [tblPLOSE_Inv_Data]
INNER JOIN Adressen on PLOSEKundenNr=plInv_PLOSEKundennummer
INNER JOIN dbo.tblSteuernummern ON dbo.tblSteuernummern.AdressenNr = dbo.Adressen.AdressenNr and [tblPLOSE_Inv_Data].plInv_SupplierCountry = tblSteuernummern.LandKZ
WHERE dbo.tblSteuernummern.AdressenNr = " & varUStVAn_KuNr & " AND (dbo.tblSteuernummern.UStV = 1) AND plInv_Archiv <> 1 AND plInv_ArchiviertDatum is null AND cast(plInv_SupplierRechnungsDatum as date) >= '" & invoiceDate.ToShortDateString & "' and Adressen.AdressenNr = " & varUStVAn_KuNr & IIf(landKZ = "SRB" OrElse landKZ = "BIH", " AND dbo.tblSteuernummern.LandKZ <> 'HU'", "") & "
group by plInv_PLOSEKundennummer, plInv_Currency"
@@ -500,7 +528,7 @@ Public Class cMDMFunctionsAllgemein
End Function
Shared Function UStVKunden_Summen_lesen_Vorschau_IT(varUStVAn_KuNr As Integer, invoiceDate As Date, calcSum As Boolean) As Double
Shared Function UStVKunden_Summen_lesen_Vorschau_IT(varUStVAn_KuNr As Integer, landKZ As String, invoiceDate As Date, calcSum As Boolean) As Double
' Dim qdf As DAO.QueryDef
' Dim rst As DAO.Recordset
@@ -573,7 +601,7 @@ Public Class cMDMFunctionsAllgemein
End Function
Shared Function UStVKunden_Summen_lesen_Vorschau_MSE(varUStVAn_KuNr As Integer, invoiceDate As Date, calcSumalteSchnittstelle As Boolean, calcSumneueSchnittstelle As Boolean) As Double
Shared Function UStVKunden_Summen_lesen_Vorschau_MSE(varUStVAn_KuNr As Integer, landKZ As String, invoiceDate As Date, calcSumalteSchnittstelle As Boolean, calcSumneueSchnittstelle As Boolean) As Double
'Return 0
' dtmRechnungsdatum = IIf(Date > DateSerial(Year(Of Date), 6, 30), DateSerial(Year(Of Date), 1, 1), DateSerial(Year(Of Date)() - 1, 1, 1))
'1850 strParameter = ParameterBereitstellen(varUStVAn_KuNr, dtmRechnungsdatum)
@@ -605,7 +633,7 @@ Public Class cMDMFunctionsAllgemein
dbo.[Länderverzeichnis für die Außenhandelsstatistik] ON dbo.tblSteuernummern.LandNr = dbo.[Länderverzeichnis für die Außenhandelsstatistik].LandNr AND
dbo.tblMSETransactionsArchiv.[Transaction Country] = dbo.[Länderverzeichnis für die Außenhandelsstatistik].LandKz
WHERE (dbo.tblSteuernummern.AdressenNr = " & varUStVAn_KuNr & ") AND (dbo.tblSteuernummern.UStV = 1) AND (dbo.tblMSETransactionsArchiv.[Invoice Date] >= '" & invoiceDate.ToShortDateString & "') AND
(dbo.tblMSETransactionsArchiv.[Original VAT Amount] <> 0) AND (dbo.tblMSETransactionsArchiv.UStVAn_ID IS NULL)
(dbo.tblMSETransactionsArchiv.[Original VAT Amount] <> 0) AND (dbo.tblMSETransactionsArchiv.UStVAn_ID IS NULL) " & IIf(landKZ = "SRB" OrElse landKZ = "BIH", " AND dbo.tblSteuernummern.LandKZ <> 'HU'", "") & "
GROUP BY dbo.tblSteuernummern.AdressenNr, dbo.tblSteuernummern.LandNr, dbo.tblMSETransactionsArchiv.[Invoice Date], dbo.tblMSETransactionsArchiv.[Original Currency]
ORDER BY dbo.tblSteuernummern.AdressenNr, dbo.tblSteuernummern.LandNr, dbo.tblMSETransactionsArchiv.[Invoice Date], dbo.tblMSETransactionsArchiv.[Original Currency] "
@@ -628,8 +656,8 @@ Public Class cMDMFunctionsAllgemein
left join [VERAG].[dbo].[tblMSETransactions] as trans on bills.[transaction_id] = trans.[transaction_id]
left join [VERAG].[dbo].[tblMSECustomers] as cust on cust.partner_customer_number = trans.partner_haulier_id
left join [VERAG].[dbo].[tblMSEInvoices] as inv on inv.invoice_id = bills.invoice_number
left join dbo.tblSteuernummern on dbo.tblSteuernummern.AdressenNr = trans.partner_haulier_id
where bills.invoice_date >= '" & invoiceDate.ToShortDateString & "' and inv.archiv <> 1 and dbo.tblSteuernummern.UStV = 1 and trans.charged = 1 and cust.[partner_customer_number] = " & varUStVAn_KuNr & "
left join dbo.tblSteuernummern on dbo.tblSteuernummern.AdressenNr = trans.partner_haulier_id and dbo.tblSteuernummern.LandKZ = trans.transaction_country
where bills.invoice_date >= '" & invoiceDate.ToShortDateString & "' and inv.archiv <> 1 and dbo.tblSteuernummern.UStV = 1 and trans.charged = 1 and cust.[partner_customer_number] = " & varUStVAn_KuNr & IIf(landKZ = "SRB" OrElse landKZ = "BIH", " AND dbo.tblSteuernummern.LandKZ <> 'HU'", "") & "
group by bills.invoice_date, bills.invoice_number, cust.[customer_id], bills.specification_page_name, trans.transaction_country,trans.original_currency) as temp"
Dim dtMSENeut As DataTable = sql.loadDgvBySql(sqlFMZollDatenNEU, "FMZOLL")
@@ -656,7 +684,7 @@ Public Class cMDMFunctionsAllgemein
End Function
Shared Function UStVKunden_Summen_lesen_Vorschau_UTA(varUStVAn_KuNr As Integer, invoiceDate As Date, calcSumalteSchnittstelle As Boolean, calcSumneueSchnittstelle As Boolean) As Double
Shared Function UStVKunden_Summen_lesen_Vorschau_UTA(varUStVAn_KuNr As Integer, landKZ As String, invoiceDate As Date, calcSumalteSchnittstelle As Boolean, calcSumneueSchnittstelle As Boolean) As Double
'Return 0
' Dim qdf As DAO.QueryDef
' Dim rst As DAO.Recordset
@@ -709,7 +737,7 @@ Public Class cMDMFunctionsAllgemein
dbo.[Länderverzeichnis für die Außenhandelsstatistik] ON dbo.tblSteuernummern.LandNr = dbo.[Länderverzeichnis für die Außenhandelsstatistik].LandNr AND
dbo.tblUTAArchiv.Lieferland = dbo.[Länderverzeichnis für die Außenhandelsstatistik].LandKz_ISO_3
WHERE (dbo.tblSteuernummern.AdressenNr = " & varUStVAn_KuNr & ") AND (dbo.tblSteuernummern.UStV = 1) AND (dbo.tblUTAArchiv.UStVAn_ID IS NULL) AND
(dbo.tblUTAArchiv.Rechnungsdatum >= '" & invoiceDate.ToShortDateString & "') AND (dbo.tblUTAArchiv.Gesamtbetrag_Umsatzsteuer_in_Darstellwährung <> 0)
(dbo.tblUTAArchiv.Rechnungsdatum >= '" & invoiceDate.ToShortDateString & "') AND (dbo.tblUTAArchiv.Gesamtbetrag_Umsatzsteuer_in_Darstellwährung <> 0) " & IIf(landKZ = "SRB" OrElse landKZ = "BIH", " AND dbo.tblSteuernummern.LandKZ <> 'HU'", "") & "
GROUP BY dbo.tblSteuernummern.AdressenNr, dbo.tblSteuernummern.LandNr
ORDER BY dbo.tblSteuernummern.AdressenNr, dbo.tblSteuernummern.LandNr"
@@ -733,7 +761,7 @@ Public Class cMDMFunctionsAllgemein
dbo.[Länderverzeichnis für die Außenhandelsstatistik] ON dbo.tblSteuernummern.LandNr = dbo.[Länderverzeichnis für die Außenhandelsstatistik].LandNr AND
dbo.tblUTAImportNew.Lieferland = dbo.[Länderverzeichnis für die Außenhandelsstatistik].LandKz_ISO_3
WHERE (dbo.tblSteuernummern.AdressenNr = " & varUStVAn_KuNr & ") AND (dbo.tblSteuernummern.UStV = 1) AND (dbo.tblUTAImportNew.archiv IS NULL) AND (dbo.tblUTAImportNew.charged = 1) AND
(dbo.tblUTAImportNew.Rechnungsdatum >= '" & invoiceDate.ToShortDateString & "') AND (dbo.tblUTAImportNew.Gesamtbetrag_Umsatzsteuer_in_Darstellwährung <> 0)
(dbo.tblUTAImportNew.Rechnungsdatum >= '" & invoiceDate.ToShortDateString & "') AND (dbo.tblUTAImportNew.Gesamtbetrag_Umsatzsteuer_in_Darstellwährung <> 0) " & IIf(landKZ = "SRB" OrElse landKZ = "BIH", " AND dbo.tblSteuernummern.LandKZ <> 'HU'", "") & "
GROUP BY dbo.tblSteuernummern.AdressenNr, dbo.tblSteuernummern.LandNr
ORDER BY dbo.tblSteuernummern.AdressenNr, dbo.tblSteuernummern.LandNr"