DHF Artikelstamm
This commit is contained in:
@@ -1,4 +1,6 @@
|
||||
Imports System.Data.SqlClient
|
||||
Imports System.Reflection
|
||||
Imports com.sun.org.apache.xml.internal.security.transforms
|
||||
Imports DocumentFormat.OpenXml.Bibliography
|
||||
|
||||
Public Class SQL
|
||||
@@ -545,6 +547,54 @@ Public Class SQL
|
||||
Return Nothing
|
||||
End Function
|
||||
|
||||
Public Function GetNewOpenConnection(conn_art) As SqlConnection
|
||||
Dim conn As New SqlConnection
|
||||
Select Case conn_art
|
||||
Case "SDL" : conn = GetNewOpenConnectionSDL()
|
||||
Case "FMZOLL" : conn = GetNewOpenConnectionFMZOLL()
|
||||
Case "ADMIN" : conn = GetNewOpenConnectionADMIN()
|
||||
Case "ASFINAG" : conn = GetNewOpenConnectionAsfinag()
|
||||
Case "DISPO" : conn = GetNewOpenConnectionDISPO()
|
||||
Case "ATLAS" : conn = GetNewOpenConnectionATLAS()
|
||||
Case "ATLAS_SBG" : conn = GetNewOpenConnectionATLAS_SBG()
|
||||
Case "EZOLL" : conn = GetNewOpenConnectionEZOLL()
|
||||
Case "EZOLL_UNISPED" : conn = GetNewOpenConnectionEZOLL_UNISPED()
|
||||
Case "AVISO" : conn = GetNewOpenConnectionAVISO()
|
||||
Case "VERAG" : conn = GetNewOpenConnectionFMZOLL()
|
||||
Case "FD" : conn = GetNewOpenConnectionFD()
|
||||
Case "WEB" : conn = GetNewOpenConnectionWEB()
|
||||
Case "FIBU", "SYSKA" : conn = GetNewOpenConnectionSYSKA()
|
||||
Case "PARKZEIT" : conn = GetNewOpenConnectionPARKZEIT()
|
||||
|
||||
|
||||
Case "AVISO_ATILLA"
|
||||
conn.ConnectionString = "Data Source=172.16.0.98;Initial Catalog=AVISO_ATILLA;Integrated Security=false;User ID=sa;Password=BmWr501956;Pooling=true;Min Pool Size=5;Max Pool Size=200"
|
||||
conn.Open()
|
||||
End Select
|
||||
Return conn
|
||||
End Function
|
||||
Public Function GetScalarValue(sql As String, conn_art As String, params As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)) As Integer
|
||||
Try
|
||||
Using conn As SqlConnection = GetNewOpenConnection(conn_art)
|
||||
Using cmd As New SqlCommand(sql, conn)
|
||||
For Each p In params
|
||||
cmd.Parameters.AddWithValue("@" & p.Scalarvariable, If(p.Value, DBNull.Value))
|
||||
Next
|
||||
|
||||
Dim result = cmd.ExecuteScalar()
|
||||
If result Is Nothing OrElse result Is DBNull.Value Then
|
||||
Return 0
|
||||
Else
|
||||
Return Convert.ToInt32(result)
|
||||
End If
|
||||
End Using
|
||||
End Using
|
||||
Catch ex As Exception
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("Fehler in GetScalarValue: " & ex.Message, ex.StackTrace, MethodBase.GetCurrentMethod().Name)
|
||||
Return 0
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Public Function loadDgvBySql(ByVal sql As String, Optional conn_art As String = "SDL", Optional timeout As Integer = 0, Optional showerror As Boolean = True) As DataTable
|
||||
Try
|
||||
Dim myTable = New DataTable()
|
||||
@@ -867,10 +917,27 @@ Public Class SQL
|
||||
Case "PARKZEIT" : conn = GetNewOpenConnectionPARKZEIT()
|
||||
End Select
|
||||
Try
|
||||
|
||||
|
||||
' MsgBox(sql)
|
||||
Using cmd As New SqlCommand(sql, conn)
|
||||
If list IsNot Nothing Then
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
For Each i In list
|
||||
If String.IsNullOrWhiteSpace(i.Scalarvariable) Then
|
||||
Throw New Exception("❌ Leerer Parametername in SQLVariable!")
|
||||
End If
|
||||
If i.Scalarvariable.ToLower = "errno" Then
|
||||
Throw New Exception("❌ Ungültiger Parametername 'errno' – bitte umbenennen.")
|
||||
End If
|
||||
If Not System.Text.RegularExpressions.Regex.IsMatch(i.Scalarvariable, "^[a-zA-Z0-9_]+$") Then
|
||||
Throw New Exception("❌ Ungültiger SQL-Parametername (Regex): '" & i.Scalarvariable & "'")
|
||||
End If
|
||||
|
||||
'MsgBox(i.Text.trim & " " & IIf(i.Value Is Nothing, DBNull.Value, i.Value))
|
||||
cmd.Parameters.AddWithValue("@" & i.Scalarvariable.trim, IIf(i.Value Is Nothing, DBNull.Value, i.Value))
|
||||
Next
|
||||
@@ -881,7 +948,13 @@ Public Class SQL
|
||||
Return True
|
||||
Catch ex As Exception
|
||||
' MsgBox("ERR!")
|
||||
If showErr Then VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name, , , , , sql)
|
||||
If ex.Message.Contains("Falsche Syntax in der Nähe von '@errno'") Then
|
||||
' Spezielle Behandlung für den Fehler mit dem Parameter 'errno'
|
||||
'VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("❌ Ungültiger SQL-Parametername 'errno' – bitte umbenennen.", ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name, , , , , sql)
|
||||
|
||||
ElseIf ex.Message.Contains("Leerer Parametername") Then
|
||||
If showErr Then VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name, , , , , sql)
|
||||
End If
|
||||
End Try
|
||||
Return False
|
||||
End Function
|
||||
|
||||
Reference in New Issue
Block a user