2018-10-12 16:18:18 +02:00

88 lines
3.1 KiB
VB.net

Imports System.Text.RegularExpressions
Imports DigitalData.Modules.Windream.Constants
Public Class Helpers
Private Shared ReadOnly VectorIndicies As New List(Of Integer) From {
INDEX_TYPE_VECTOR_BOOLEAN,
INDEX_TYPE_VECTOR_CURRENCY,
INDEX_TYPE_VECTOR_DATE,
INDEX_TYPE_VECTOR_DATE_TIME,
INDEX_TYPE_VECTOR_FIXED_POINT,
INDEX_TYPE_VECTOR_FLOAT,
INDEX_TYPE_VECTOR_INTEGER,
INDEX_TYPE_VECTOR_INTEGER_64BIT,
INDEX_TYPE_VECTOR_STRING,
INDEX_TYPE_VECTOR_TIME
}
Friend Shared Function ConvertVectorType(vType As Object, value As String)
Select Case vType
Case INDEX_TYPE_HASH ' 36865
'Umwandeln in String
Return value
Case INDEX_TYPE_VECTOR_STRING '4097
'Umwandeln in String
Return value
Case INDEX_TYPE_VECTOR_INTEGER '4098
'Umwandeln in Integer
value = value.Replace(" ", "")
Return CInt(value)
Case INDEX_TYPE_VECTOR_FLOAT '4099
value = value.
Replace(" ", "").
Replace(".", ",")
'Umwandeln in Double
Return CDbl(value)
Case INDEX_TYPE_VECTOR_BOOLEAN '4100
'Umwandeln in Boolean
Return CBool(value)
Case INDEX_TYPE_VECTOR_DATE '4101
'Umwandeln in Date
Return CDate(value)
Case INDEX_TYPE_VECTOR_INTEGER_64BIT '4107
Return Convert.ToInt64(value)
Case INDEX_TYPE_VECTOR_DATE_TIME '4103
'Umwandeln in Datum Uhrzeit
Return value
Case Else
'Umwandeln in String
Return value
End Select
End Function
Friend Shared Function ConvertIndexValue(Type As Integer, Value As String) As Object
' Leerzeichen an Anfang und Ende entfernen
Value = Value.Trim()
Select Case Type
Case INDEX_TYPE_HASH
Case INDEX_TYPE_STRING
Case INDEX_TYPE_VECTOR_STRING
Return Value
Case INDEX_TYPE_INTEGER
Case INDEX_TYPE_VECTOR_INTEGER
Value = Value.Replace(" ", String.Empty)
Return Convert.ToInt16(Value)
Case INDEX_TYPE_VECTOR_INTEGER_64BIT
Value = Value.Replace(" ", String.Empty)
Return Convert.ToInt64(Value)
Case INDEX_TYPE_VECTOR_BOOLEAN
Case INDEX_TYPE_BOOLEAN
Return Convert.ToBoolean(Value)
Case INDEX_TYPE_DATE
Case INDEX_TYPE_DATE_TIME
Case INDEX_TYPE_TIME
Case INDEX_TYPE_VECTOR_DATE_TIME
Case INDEX_TYPE_VECTOR_DATE
Return Convert.ToDateTime(Value)
Case INDEX_TYPE_FLOAT
Case INDEX_TYPE_VECTOR_FLOAT
Return Convert.ToDouble(Value)
End Select
End Function
Friend Shared Function IsVectorIndex(indexType As Integer)
Return VectorIndicies.Contains(indexType)
End Function
End Class