MDM, USTVA, etc.

This commit is contained in:
2025-04-10 17:04:07 +02:00
parent 35c6c6ccea
commit 09d7c6d5b6
7 changed files with 198 additions and 71 deletions

View File

@@ -1,8 +1,10 @@
Imports javax.validation.constraints
Imports com.sun.org.apache.xpath.internal.functions
Imports javax.validation.constraints
Public Class cMDMFunctionsAllgemein
Public Shared ploseSchnittstelle As Boolean = False
Public Shared ploseAlteLogikSchnittstelle As Boolean = False
Public Shared ploseNeueLogikSchnittstelle As Boolean = False
Public Shared ITSchnittstelle As Boolean = False
Public Shared MSEAlteSchnittstelle As Boolean = False
Public Shared MSENeueSchnittstelle As Boolean = False
@@ -11,9 +13,10 @@ Public Class cMDMFunctionsAllgemein
Public Shared UTAAlteSchnittstelle As Boolean = False
Public Shared UTANeueSchnittstelle As Boolean = False
Shared Function setSchnittstellen(plose As Boolean, IT As Boolean, MSEalt As Boolean, MSENeu As Boolean, IDSAlt As Boolean, IDSNeu As Boolean, UTAAlt As Boolean, UTANeu As Boolean)
Shared Function setSchnittstellen(ploseAlt As Boolean, IT As Boolean, MSEalt As Boolean, MSENeu As Boolean, IDSAlt As Boolean, IDSNeu As Boolean, UTAAlt As Boolean, UTANeu As Boolean, ploseNeu As Boolean)
ploseSchnittstelle = plose
ploseAlteLogikSchnittstelle = ploseAlt
ploseNeueLogikSchnittstelle = ploseNeu
ITSchnittstelle = IT
MSEAlteSchnittstelle = MSEalt
MSENeueSchnittstelle = MSENeu
@@ -181,8 +184,7 @@ Public Class cMDMFunctionsAllgemein
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, ploseSchnittstelle)
curUStV_SummeVorschaubetragEUR_PLOSE = UStVKunden_Summen_lesen_Vorschau_PLOSE(r.Item("KundenNr"), invoiceDate, ploseAlteLogikSchnittstelle, ploseNeueLogikSchnittstelle)
curUStV_SummeVorschaubetragEUR += curUStV_SummeVorschaubetragEUR_VERAG
curUStV_SummeVorschaubetragEUR += curUStV_SummeVorschaubetragEUR_IDS
@@ -420,16 +422,19 @@ Public Class cMDMFunctionsAllgemein
End Function
Shared Function UStVKunden_Summen_lesen_Vorschau_PLOSE(varUStVAn_KuNr As Integer, invoiceDate As Date, calcSumme As Boolean) As Double
Shared Function UStVKunden_Summen_lesen_Vorschau_PLOSE(varUStVAn_KuNr As Integer, 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
Try
Dim sql As New VERAG_PROG_ALLGEMEIN.SQL
Dim summeSchnittstelle As Double = 0
Dim summeAlteSchnittstelle As Double = 0
Dim summeNeueSchnittstelle As Double = 0
If calcSumme Then
If calcSummeAlteSchnittstelle Then
'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 & "
@@ -441,13 +446,50 @@ Public Class cMDMFunctionsAllgemein
For Each r As DataRow In dtPLOSE.Rows
Dim UST_org = CDbl(r.Item("plose_MWSTBetragWaehrungAbbuchung"))
If UST_org <> 0 Then
summeSchnittstelle += UST_org
summeAlteSchnittstelle += UST_org
End If
Next
End If
Return summeSchnittstelle
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 & "
group by plInv_PLOSEKundennummer, plInv_Currency"
Dim dtPLOSE As DataTable = sql.loadDgvBySql(sqlPLOSE, "FMZOLL")
For Each r As DataRow In dtPLOSE.Rows
Dim UST_org = CDbl(r.Item("plInv_MWSTBetrag"))
If UST_org <> 0 Then
Dim Weahrung As String = IIf(r.Item("plInv_Currency") IsNot Nothing, r.Item("plInv_Currency"), "")
If Weahrung <> "" Then
If Weahrung <> "EUR" Then
Dim kurs As New cEZB_Waehrungskurse(Weahrung)
Dim UST_EUR As Double = 0
UST_EUR = Math.Round((UST_org / kurs.ezb_kurs), 2) '+ (UST_org Mod Math.Round(kurs.ezb_kurs, 2)), ")"
summeNeueSchnittstelle += UST_EUR
Else Weahrung = "EUR"
summeNeueSchnittstelle += UST_org
End If
End If
End If
Next
End If
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.LOG)

View File

@@ -524,7 +524,7 @@ BindingFlags.Instance Or BindingFlags.NonPublic, Nothing, [Control], New Object(
Shared Function getISO2LandFromISO3Land(Iso3Land As String)
If Iso3Land Is Nothing Then Return Nothing
If Iso3Land.Length <> 3 Then Return Nothing
Dim sqlstr = "SELECT TOP 1 isnull(LandKz,'') AS LandKzISO2 from [Länderverzeichnis für die Außenhandelsstatistik] where LandKz_ISO_3 = '" & Iso3Land & "' "
Dim sqlstr = "SELECT TOP 1 isnull(LandKz,'') AS LandKzISO2 from [Länderverzeichnis für die Außenhandelsstatistik] where LandKz_ISO_3 = Replace('" & Iso3Land & "','SLO','SVN')"
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Return SQL.getValueTxtBySql(sqlstr, "FMZOLL")
End Function