Imports System.Text Imports System.Text.RegularExpressions Module ModuleHelpers Public Function encode_utf8(ByVal str As String) As String Try 'supply True as the construction parameter to indicate 'that you wanted the class to emit BOM (Byte Order Mark) 'NOTE: this BOM value is the indicator of a UTF-8 string Dim utf8Encoding As New System.Text.UTF8Encoding(True) Dim encodedString() As Byte encodedString = utf8Encoding.GetBytes(str) Return utf8Encoding.GetString(encodedString) Catch ex As Exception MsgBox("Unexpected error in encode_utf8: " & ex.Message, MsgBoxStyle.Critical) Return Nothing End Try End Function Public Function StringAsUtf8Bytes(ByVal strData As String) As Byte() Try Dim bytes() As Byte ' get unicode string as bytes bytes = Encoding.UTF8.GetBytes(strData) ' return byte data Return bytes Catch ex As Exception MsgBox("Unexpected error in StringAsUtf8Bytes: " & ex.Message, MsgBoxStyle.Critical) Return Nothing End Try End Function Public Function CheckSpecialSigns(ByVal str As String) Try Dim pattern As String = "[!""#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~\s]" Dim matches As MatchCollection = Regex.Matches(str, pattern) Return matches.Count Catch ex As Exception MsgBox("Unexpected error in CheckSpecialSigns: " & ex.Message, MsgBoxStyle.Critical) Return 0 End Try End Function Public Sub Refresh_RegexTable() Dim oSQL = "select * from TBGI_FUNCTION_REGEX" My.Application.Globix.DT_FUNCTION_REGEX = clsDataASorDB.GetDatatable("DD_ECM", oSQL, "TBGI_FUNCTION_REGEX", "", "") End Sub Public Function GetConnectionString(id As Integer) Dim connectionString As String = "" Try Dim oSQL = "SELECT * FROM TBDD_CONNECTION WHERE GUID = " & id Dim DTConnection As DataTable = clsDataASorDB.GetDatatable("DD_ECM", oSQL, "TBDD_CONNECTION", "GUID = " & id, "") If DTConnection.Rows.Count = 1 Then Dim CSType = DTConnection.Rows(0).Item("SQL_PROVIDER").ToString.ToUpper Select Case CSType Case "MS-SQL".ToUpper If DTConnection.Rows(0).Item("USERNAME").ToString.ToLower = "winauth" Then connectionString = "Data Source=" & DTConnection.Rows(0).Item("SERVER") & ";Initial Catalog= " & DTConnection.Rows(0).Item("DATENBANK") & ";Trusted_Connection=True;" Else connectionString = "Data Source=" & DTConnection.Rows(0).Item("SERVER") & ";Initial Catalog= " & DTConnection.Rows(0).Item("DATENBANK") & ";User Id=" & DTConnection.Rows(0).Item("USERNAME") & ";Password=" & DTConnection.Rows(0).Item("PASSWORD") & ";" End If Case "MS-SQLServer".ToUpper If DTConnection.Rows(0).Item("USERNAME").ToString.ToLower = "winauth" Then connectionString = "Data Source=" & DTConnection.Rows(0).Item("SERVER") & ";Initial Catalog= " & DTConnection.Rows(0).Item("DATENBANK") & ";Trusted_Connection=True;" Else connectionString = "Data Source=" & DTConnection.Rows(0).Item("SERVER") & ";Initial Catalog= " & DTConnection.Rows(0).Item("DATENBANK") & ";User Id=" & DTConnection.Rows(0).Item("USERNAME") & ";Password=" & DTConnection.Rows(0).Item("PASSWORD") & ";" End If Case "Oracle".ToUpper If DTConnection.Rows(0).Item("BEMERKUNG").ToString.Contains("without tnsnames") Then connectionString = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=" & DTConnection.Rows(0).Item("SERVER") & ")(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=" & DTConnection.Rows(0).Item("DATENBANK") & ")));User Id=" & DTConnection.Rows(0).Item("USERNAME") & ";Password=" & DTConnection.Rows(0).Item("PASSWORD") & ";" Else connectionString = "Data Source=" & DTConnection.Rows(0).Item("SERVER") & ";Persist Security Info=True;User Id=" & DTConnection.Rows(0).Item("USERNAME") & ";Password=" & DTConnection.Rows(0).Item("PASSWORD") & ";Unicode=True" End If Case Else MsgBox("ConnectionType not integrated", MsgBoxStyle.Critical, "Please check connection:") End Select End If Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in GetConnectionString:") End Try Return connectionString End Function Public Function FilterDatatable(myDatatable As DataTable, myFilter As String, mycheckColumn As String, pSortString As String, returnDT As Boolean) As Object Try If myDatatable.Rows.Count = 0 Then Return Nothing End If Dim dv As DataView = myDatatable.DefaultView dv.RowFilter = myFilter If dv.Count = 1 And returnDT = False Then For Each rowView As DataRowView In dv Dim row As DataRow = rowView.Row Return row.Item(mycheckColumn) Next Else Dim dt_copy As DataTable = New DataTable() dt_copy = myDatatable.Select(myFilter, pSortString).CopyToDataTable() Return dt_copy End If Catch ex As Exception MsgBox("Unexpected error in FilterDatatable: " + ex.Message, MsgBoxStyle.Critical) Return Nothing End Try End Function End Module