USTVA und IDS MWST-Sätze

This commit is contained in:
2026-07-20 15:07:54 +02:00
parent 80e41c93f6
commit 8a516ac7c1
5 changed files with 66 additions and 34 deletions

View File

@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.5.5.9")>
<Assembly: AssemblyFileVersion("1.5.5.9")>
<Assembly: AssemblyVersion("1.5.6.0")>
<Assembly: AssemblyFileVersion("1.5.6.0")>

View File

@@ -2,9 +2,7 @@
Imports System.IO
Imports System.Reflection
Imports System.Windows.Documents
Imports com.sun.xml.internal.ws.api.pipe
Imports itextsharp.text.pdf
Imports java.rmi.server
Imports Microsoft.Office.Interop
Imports VERAG_PROG_ALLGEMEIN
@@ -4329,7 +4327,10 @@ Public Class frmMDM_USTVAntrag
End If
LeistenderName = row.Cells("UStVPo_Leistender").Value
LeistenderName = LeistenderName.ToString.Replace(Antrag_LandKz, "")
If LeistenderName.ToString.EndsWith(Antrag_LandKz) Then
LeistenderName = LeistenderName.ToString.Replace(Antrag_LandKz, "")
End If
Dim Nettobetrag As Double = 0
If Not IsDBNull(row.Cells("UStVPo_Nettobetrag").Value) AndAlso IsNumeric(row.Cells("UStVPo_Nettobetrag").Value) Then Nettobetrag = CDbl(row.Cells("UStVPo_Nettobetrag").Value)
@@ -4341,15 +4342,20 @@ Public Class frmMDM_USTVAntrag
End If
Dim goods As New GoodsDescription With {.GoodsItem = New List(Of GoodsItem)}
Dim code As Integer = 0
Dim Subcode = ""
If listOfLeistungstyp.Count > 0 Then
getCode(Antrag_LandKz, listOfLeistungstyp(0), code, Subcode, "RO")
For Each listEntry In listOfLeistungstyp
Dim code As Integer = 0
Dim Subcode = ""
getCode(Antrag_LandKz, listEntry, code, Subcode, "RO")
goods.GoodsItem.Add(New GoodsItem With {.Code = code, .SubCode = Subcode, .FreeText = ""})
Next
End If
Dim goods As New GoodsDescription With {.GoodsItem = New List(Of GoodsItem)}
goods.GoodsItem.Add(New GoodsItem With {.Code = code, .SubCode = Subcode, .FreeText = ""})
@@ -4601,7 +4607,11 @@ Public Class frmMDM_USTVAntrag
End If
LeistenderName = row.Cells("UStVPo_Leistender").Value
LeistenderName = LeistenderName.ToString.Replace(Antrag_LandKz, "")
If LeistenderName.ToString.EndsWith(Antrag_LandKz) Then
LeistenderName = LeistenderName.ToString.Replace(Antrag_LandKz, "")
End If
Dim Nettobetrag As Double = 0
If Not IsDBNull(row.Cells("UStVPo_Nettobetrag").Value) AndAlso IsNumeric(row.Cells("UStVPo_Nettobetrag").Value) Then Nettobetrag = CDbl(row.Cells("UStVPo_Nettobetrag").Value)
@@ -4759,6 +4769,10 @@ Public Class frmMDM_USTVAntrag
list.Add("übernachtung")
End If
If LeistungsBez.Contains("gas") Then
list.Add("gas")
End If
End If
Return list
@@ -4772,7 +4786,6 @@ Public Class frmMDM_USTVAntrag
Case "diesel"
Code = 1
SubCode = "1.1.2"
Case "maut"
Code = 4
SubCode = "4.1"
@@ -4804,6 +4817,9 @@ Public Class frmMDM_USTVAntrag
Case "parkplatz"
Code = 3
SubCode = "3.1.4"
Case "gas"
Code = 1
SubCode = "1.1.3"
Case "übernachtung"
Code = 6
SubCode = "6.1"
@@ -4823,7 +4839,7 @@ Public Class frmMDM_USTVAntrag
Code = 4
SubCode = "4.1"
End If
If typ = "parken" Then
If typ = "parkplatz" Then
Code = 3
SubCode = "3.1"
End If
@@ -5018,7 +5034,11 @@ Public Class frmMDM_USTVAntrag
End If
LeistenderName = row.Cells("UStVPo_Leistender").Value
LeistenderName = LeistenderName.ToString.Replace(Antrag_LandKz, "")
If LeistenderName.ToString.EndsWith(Antrag_LandKz) Then
LeistenderName = LeistenderName.ToString.Replace(Antrag_LandKz, "")
End If
Dim Nettobetrag As Double = 0
If Not IsDBNull(row.Cells("UStVPo_Nettobetrag").Value) AndAlso IsNumeric(row.Cells("UStVPo_Nettobetrag").Value) Then Nettobetrag = CDbl(row.Cells("UStVPo_Nettobetrag").Value)
@@ -5047,8 +5067,8 @@ Public Class frmMDM_USTVAntrag
Blatt.Range("E" & counter + 1).Value = Steuerbetrag.ToString("0.00", CultureInfo.InvariantCulture)
Blatt.Range("F" & counter + 1).Value = Steuerbetrag.ToString("0.00", CultureInfo.InvariantCulture)
Blatt.Range("H" & counter + 1).Value = "false"
Blatt.Range("I" & counter + 1).Value = VERAG_PROG_ALLGEMEIN.cDATENSERVER.replaceInvalidCahr(LeistenderName)
Blatt.Range("J" & counter + 1).Value = VERAG_PROG_ALLGEMEIN.cDATENSERVER.replaceInvalidCahr(Strasse)
Blatt.Range("I" & counter + 1).Value = VERAG_PROG_ALLGEMEIN.cDATENSERVER.replaceInvalidCahr(LeistenderName, False)
Blatt.Range("J" & counter + 1).Value = VERAG_PROG_ALLGEMEIN.cDATENSERVER.replaceInvalidCahr(Strasse, False)
Blatt.Range("M" & counter + 1).Value = PLZ
Blatt.Range("N" & counter + 1).Value = Ort
Blatt.Range("O" & counter + 1).Value = iso2Land
@@ -5175,7 +5195,11 @@ Public Class frmMDM_USTVAntrag
End If
LeistenderName = row.Cells("UStVPo_Leistender").Value
LeistenderName = LeistenderName.ToString.Replace(Antrag_LandKz, "")
If LeistenderName.ToString.EndsWith(Antrag_LandKz) Then
LeistenderName = LeistenderName.ToString.Replace(Antrag_LandKz, "")
End If
Dim Nettobetrag As Double = 0
If Not IsDBNull(row.Cells("UStVPo_Nettobetrag").Value) AndAlso IsNumeric(row.Cells("UStVPo_Nettobetrag").Value) Then Nettobetrag = CDbl(row.Cells("UStVPo_Nettobetrag").Value)
@@ -5197,10 +5221,10 @@ Public Class frmMDM_USTVAntrag
Blatt.Range("A" & zeile).Value = counter
Blatt.Range("C" & zeile).Value = VERAG_PROG_ALLGEMEIN.cDATENSERVER.replaceInvalidCahr(LeistenderName)
Blatt.Range("C" & zeile).Value = VERAG_PROG_ALLGEMEIN.cDATENSERVER.replaceInvalidCahr(LeistenderName, False)
Blatt.Range("D" & zeile).Value = UIDNrLeistender
Blatt.Range("E" & zeile).Value = VERAG_PROG_ALLGEMEIN.cDATENSERVER.replaceInvalidCahr(Strasse)
Blatt.Range("F" & zeile).Value = VERAG_PROG_ALLGEMEIN.cDATENSERVER.replaceInvalidCahr(StrasseNR)
Blatt.Range("E" & zeile).Value = VERAG_PROG_ALLGEMEIN.cDATENSERVER.replaceInvalidCahr(Strasse, False)
Blatt.Range("F" & zeile).Value = VERAG_PROG_ALLGEMEIN.cDATENSERVER.replaceInvalidCahr(StrasseNR, False)
Blatt.Range("G" & zeile).Value = PLZ
Blatt.Range("H" & zeile).Value = Ort
Blatt.Range("I" & zeile).Value = VERAG_PROG_ALLGEMEIN.cProgramFunctions.getLandEnglFromISO2Land(iso2Land) 'Funktion der das Land auf englisch zurückgibt

View File

@@ -583,14 +583,18 @@ Public Class ustCntlUSTV_AntragPosition
End If
End If
ElseIf sender Is txtLeistungsbezeichnung Then
ElseIf sender Is txtLeistungsbezeichnung Then
If UStV_POS.UStVPo_Leistungsbezeichnung IsNot Nothing AndAlso UStV_POS.UStVPo_Leistungsbezeichnung <> txtLeistungsbezeichnung.Text Then
'UStV_POS.UStVPo_Leistungsbezeichnung = txtLeistungsbezeichnung.Text
txtChanged = True
End If
txtChanged = True
ElseIf sender Is sbLeistender Then
If sbLeistender.Text <> "" Then
If sbLeistender.Text <> "" Then
If sbLeistender.Text IsNot Nothing AndAlso sbLeistender.Text <> "" Then
If IsNumeric(sbLeistender.Text) Then
If UStV_Leist IsNot Nothing AndAlso UStV_Leist.UStV_Leistender <> "" AndAlso (UStV_POS.UStVPo_Leistender <> sbLeistender.Text OrElse UStV_POS.UStVPo_LeistenderId <> sbLeistender.Text) Then

View File

@@ -3221,18 +3221,20 @@ LEFT JOIN VERAG.dbo.tbl_IDS_Länder land
'SPANIEN, POLEN : für alle Produkte gilt eine Reduzierung der MwSt. auf 10 % bzw. 8%, mit Ausnahme von AdBlue (bleibt bei 21 % MwSt.) -> Regelung der MWST-Anzeige erfolgt über IDS-Länder, allerdings wird auf Datenbasis hier kein Unterschied zw. ProductCode gemacht, daher hardcodiert -> weil es nur um Anzeige geht!
If (SQL.isDbnullEmpty(rpt.Fields.Item("OutletCountry").Value, "") = "Spain" Or SQL.isDbnullEmpty(rpt.Fields.Item("OutletCountry").Value, "") = "Poland") And SQL.isDbnullEmpty(rpt.Fields.Item("ProductDescription").Value, "") <> "Ad Blue" Then
'20.07.2026 -> Änderungen wieder deaktivert!
Select Case SQL.isDbnullEmpty(rpt.Fields.Item("OutletCountry").Value, "")
Case "Spain" : rpt.lblMWST.Text &= "10 %"
Case "Poland" : rpt.lblMWST.Text &= "8 %"
End Select
'If (SQL.isDbnullEmpty(rpt.Fields.Item("OutletCountry").Value, "") = "Spain" Or SQL.isDbnullEmpty(rpt.Fields.Item("OutletCountry").Value, "") = "Poland") And SQL.isDbnullEmpty(rpt.Fields.Item("ProductDescription").Value, "") <> "Ad Blue" Then
Else
' Select Case SQL.isDbnullEmpty(rpt.Fields.Item("OutletCountry").Value, "")
' Case "Spain" : rpt.lblMWST.Text &= "10 %"
' Case "Poland" : rpt.lblMWST.Text &= "8 %"
' End Select
rpt.lblMWST.Text &= IIf(SQL.isDbnullEmptyDbl(rpt.Fields.Item("Steuersatz").Value, 2, "") <> "", SQL.isDbnullEmptyDbl(rpt.Fields.Item("Steuersatz").Value, 2, "") * 100 & " %", "")
'Else
End If
rpt.lblMWST.Text &= IIf(SQL.isDbnullEmptyDbl(rpt.Fields.Item("Steuersatz").Value, 2, "") <> "", SQL.isDbnullEmptyDbl(rpt.Fields.Item("Steuersatz").Value, 2, "") * 100 & " %", "")
'End If
rpt.txtMWST.Text = SQL.isDbnullEmptyDbl(rpt.Fields.Item("Steuerbetrag").Value, 2, "")

View File

@@ -268,7 +268,7 @@ Public Class cDATENSERVER
End Try
End Function
Public Shared Function replaceInvalidCahr(ByRef s As String) As String
Public Shared Function replaceInvalidCahr(ByRef s As String, Optional useISO88598 As Boolean = True) As String
Try
@@ -296,9 +296,11 @@ Public Class cDATENSERVER
Dim temp = s
s = Regex.Replace(s, "[бБвгГдДёЁжЖзЗиИйЙкКлЛмнпПртфФхХцЦчЧшШщЩъЪыЫьЬэЭюЮяЯ]", "").Replace("""", "") 'REMOVE cyrillic letters
'If s = "" Then s = temp
If useISO88598 Then
Dim tempBytes = System.Text.Encoding.GetEncoding("ISO-8859-8").GetBytes(s)
s = System.Text.Encoding.UTF8.GetString(tempBytes)
End If
Dim tempBytes = System.Text.Encoding.GetEncoding("ISO-8859-8").GetBytes(s)
s = System.Text.Encoding.UTF8.GetString(tempBytes)
s = s.Replace("<EFBFBD>", "")
s = s.Replace("?", "")