This commit is contained in:
2025-02-17 10:51:43 +01:00
11 changed files with 1899 additions and 190 deletions

View File

@@ -430,3 +430,168 @@ Public Class cUStVPositionen
End Function
End Class
Public Class cUStVErstattungPositionen
Property UStVAn_ID As Integer
Property UStVEr_ID As Integer
Property UStVEr_USteuerbetrag As Object = Nothing
Property Belegdatum As Object = Nothing
Property Belegnummer As Object = Nothing
Property GutschriftsDatum As Object = Nothing
Property GutschriftsNr As Object = Nothing
Property Berufungsdatum As Object = Nothing
Property Berufungshöhe As Object = Nothing
Property Berufungsgrund As Object = Nothing
Property Bemerkung As Object = Nothing '
Property UStVEr_Umrechnungskurs As Object = Nothing
Property UStVEr_USteuerbetragEUR As Object = Nothing
Property UStVEr_Sachbearbeiter As Object = Nothing
Property UStVEr_Zeitstempel As Object = Nothing
Dim SQL As New SQL
Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVAn_ID", UStVAn_ID))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVEr_ID", UStVEr_ID))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVEr_USteuerbetrag", UStVEr_USteuerbetrag))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Belegdatum", Belegdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Belegnummer", Belegnummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("GutschriftsDatum", GutschriftsDatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("GutschriftsNr", GutschriftsNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Berufungsdatum", Berufungsdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Berufungshöhe", Berufungshöhe))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Berufungsgrund", Berufungsgrund))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Bemerkung", Bemerkung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVEr_Umrechnungskurs", UStVEr_Umrechnungskurs))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVEr_USteuerbetragEUR", UStVEr_USteuerbetragEUR))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVEr_Sachbearbeiter", UStVEr_Sachbearbeiter))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVEr_Zeitstempel", UStVEr_Zeitstempel))
Return list
End Function
Sub New(UStVAn_ID, UStVEr_ID)
Me.UStVAn_ID = UStVAn_ID
Me.UStVEr_ID = UStVEr_ID
LOAD(UStVAn_ID, UStVEr_ID)
End Sub
Sub New()
End Sub
Public Sub LOAD(UStVAn_ID, UStVEr_ID)
Try
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("SELECT * FROM tblUStVErstattung WHERE UStVAn_ID=@UStVAn_ID AND UStVEr_ID=@UStVEr_ID ", conn)
cmd.Parameters.AddWithValue("@UStVAn_ID", UStVAn_ID)
cmd.Parameters.AddWithValue("@UStVEr_ID", UStVEr_ID)
Dim dr = cmd.ExecuteReader()
If dr.Read Then
'Dim l As New cOfferte
For Each i In getParameterList()
Dim propInfo As PropertyInfo = Me.GetType.GetProperty(i.Scalarvariable)
If dr.Item(i.Text) Is DBNull.Value Then
propInfo.SetValue(Me, Nothing)
Else
propInfo.SetValue(Me, dr.Item(i.Text))
End If
Next
End If
dr.Close()
End Using
End Using
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
End Sub
Public Function SAVE() As Boolean
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim sqlstr = " BEGIN TRAN IF EXISTS(SELECT * FROM tblUStVErstattung WHERE UStVAn_ID=@UStVAn_ID AND UStVEr_ID=@UStVEr_ID) " &
" BEGIN " & getUpdateCmd() & " END " &
" Else " &
" BEGIN " & getInsertCmd() & " END " &
" commit tran "
Return SQL.doSQLVarList(sqlstr, "FMZOLL", , list)
End Function
Public Function getUpdateCmd() As String
Try
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim str As String = ""
For Each i In list
If Not i.isPrimaryParam Then
str &= "[" & i.Text & "] = @" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
End If
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
Return (" UPDATE [tblUStVErstattung] SET " & str & " WHERE UStVAn_ID=@UStVAn_ID AND UStVEr_ID=@UStVEr_ID")
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
Return ""
End Function
Public Function INSERT() As Boolean
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Return SQL.doSQLVarList(getInsertCmd, "FMZOLL", , list)
End Function
Public Function getInsertCmd() As String
Try
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim str As String = ""
Dim values As String = ""
For Each i In list
If Not i.isPrimaryParam Then
str &= "[" & i.Text & "],"
values &= "@" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
End If
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
values = values.Substring(0, values.Length - 1) 'wg. ','
Return (" INSERT INTO tblUStVErstattung (" & str & ") VALUES(" & values & ") ")
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
Return ""
End Function
Public Function DELETE(UStVAn_ID, UStVEr_ID) As Boolean
Dim sqlstr = " DELETE FROM tblUStVErstattung WHERE UStVAn_ID=" & Me.UStVAn_ID & " AND UStVEr_ID=" & Me.UStVEr_ID
Return SQL.doSQL(sqlstr, "FMZOLL")
End Function
Public Function getMaxPosNr() As Integer
Try
Dim maxPosNr = -1
Return SQL.getValueTxtBySql("SELECT isnull(max([UStVEr_ID]),0)+1 FROM [tblUStVErstattung] where UStVAn_ID='" & UStVAn_ID & "'", "FMZOLL",,, "1")
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
Return -1
End Function
End Class

View File

@@ -91,6 +91,7 @@ Public Class cKundenErweitert
Property kde_MWStAbrechnung As Object = Nothing
Property kde_AnmerkungVZ As Object = Nothing
Property kde_VZ As Boolean = False
Property kde_AnmerkungAntrag As Object = Nothing
Dim SQL As New SQL
@@ -184,6 +185,7 @@ Public Class cKundenErweitert
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("kde_MWStAbrechnung", kde_MWStAbrechnung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("kde_AnmerkungVZ", kde_AnmerkungVZ))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("kde_VZ", kde_VZ))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("kde_AnmerkungAntrag", kde_AnmerkungAntrag))
Return list
End Function