Make DisplayFormat configurable for TextBoxes and GridColumns, Fix Typo, Properly Convert Dates and Numbers in Vector Fields
This commit is contained in:
@@ -4,20 +4,21 @@ Imports System.Runtime.InteropServices
|
||||
Imports System.IO
|
||||
Imports System.Text.RegularExpressions
|
||||
Imports System.ComponentModel
|
||||
Imports System.Globalization
|
||||
Imports DigitalData.Controls.LookupGrid
|
||||
Imports DevExpress.XtraGrid
|
||||
Imports DevExpress.XtraGrid.Views.Grid
|
||||
Imports DigitalData.Modules.Language.Utils
|
||||
Imports DigitalData.Modules.Language
|
||||
Imports DigitalData.Modules.Base
|
||||
Imports DigitalData.Modules.EDMI.API.DatabaseWithFallback
|
||||
Imports DigitalData.Modules.EDMI.API.Constants
|
||||
Imports DevExpress.XtraBars
|
||||
Imports DigitalData.GUIs.Common.DocumentResultList
|
||||
Imports DigitalData.Modules.ZooFlow
|
||||
Imports DigitalData.Modules.ZooFlow.Constants
|
||||
Imports DigitalData.GUIs.Common
|
||||
Imports DevExpress.XtraGrid
|
||||
Imports DevExpress.XtraGrid.Views.Grid
|
||||
Imports DevExpress.XtraBars
|
||||
Imports DevExpress.XtraGrid.Columns
|
||||
Imports System.Globalization
|
||||
|
||||
Public Class frmValidator
|
||||
Private Property Current_Document As DocumentResultList.Document = Nothing
|
||||
@@ -2638,8 +2639,8 @@ Public Class frmValidator
|
||||
LOGGER.Info("LoadNextDocument - Dokument-GUID: '" & CURRENT_DOC_GUID.ToString & "'")
|
||||
If CURRENT_DOC_GUID > 0 Then
|
||||
If (OPERATION_MODE_FS = ClassConstants.OpModeFS_PWM Or OPERATION_MODE_FS = ClassConstants.OpModeFS_IDBWM) And GetDocPathWindows(0) = False Then
|
||||
SetStatusLabel($"File not accessable: {DocPathWindows}", "DarkOrange")
|
||||
MsgBox("The file can not be diplayed or is not accessable!", MsgBoxStyle.Exclamation, ADDITIONAL_TITLE)
|
||||
SetStatusLabel($"File not accessible: {DocPathWindows}", "DarkOrange")
|
||||
MsgBox("The file can not be diplayed or is not accessible!", MsgBoxStyle.Exclamation, ADDITIONAL_TITLE)
|
||||
End If
|
||||
If IDB_ACTIVE = False Then
|
||||
If CreateWMObject() = False Then
|
||||
@@ -3182,67 +3183,12 @@ Public Class frmValidator
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
Try
|
||||
Dim oFormatString As String = oControlRow.ItemEx("CTRL_FORMAT_STRING", "")
|
||||
If oFormatString <> String.Empty Then
|
||||
' https://learn.microsoft.com/en-us/dotnet/api/system.datetime.tostring?view=net-7.0#system-datetime-tostring(system-string)
|
||||
oFormattedValue = ClassFormat.GetFormattedValue(oControl.Name, oValueFromSource, oFormatString)
|
||||
|
||||
Select Case oFormatString
|
||||
Case "Currency" ' 16,325.63 €
|
||||
Dim oValue As Double = oValueFromSource
|
||||
oFormattedValue = oValue.ToString("C2")
|
||||
|
||||
Case "Decimal" ' 16325,63
|
||||
Dim oValue As Double = oValueFromSource
|
||||
oFormattedValue = oValue.ToString("F")
|
||||
|
||||
Case "Date" ' 15.06.2008
|
||||
Dim oValue As DateTime = oValueFromSource
|
||||
oFormattedValue = oValue.ToString("d")
|
||||
|
||||
Case "DateTime" ' 15.06.2008 9:15:07
|
||||
Dim oValue As DateTime = oValueFromSource
|
||||
oFormattedValue = oValue.ToString("G")
|
||||
|
||||
End Select
|
||||
|
||||
End If
|
||||
Catch ex As Exception
|
||||
LOGGER.Warn($"Unexpected error in Format String [{oControl.Name}]: {ex.Message}")
|
||||
LOGGER.Error(ex)
|
||||
End Try
|
||||
|
||||
Try
|
||||
'Dim oFormatString As String = oControlRow.ItemEx("CTRL_FORMAT_STRING", "")
|
||||
'If oFormatString <> String.Empty Then
|
||||
' Try
|
||||
' Dim oSPlit = Split(oFormatString, ";")
|
||||
' If oSPlit(0) = "Decimal" Then
|
||||
' LOGGER.Debug("FORMAT_STRING DECIMAL")
|
||||
' oFormattedValue = oValueFromSource
|
||||
' LOGGER.Debug($"Unformatted String: {oFormattedValue}")
|
||||
' Dim oFormattedDec As Decimal = oValueFromSource
|
||||
' If oSPlit.Length = 3 Then
|
||||
' oFormattedValue = $"{oFormattedDec.ToString(oSPlit(1))} {oSPlit(2)}"
|
||||
' ElseIf oSPlit.Length = 4 Then
|
||||
' oFormattedValue = $"{oFormattedDec.ToString(oSPlit(1), New CultureInfo(oSPlit(2)))} {oSPlit(3)}"
|
||||
' Else
|
||||
' oFormatString = oFormatString.Replace("Decimal;", "")
|
||||
' End If
|
||||
' LOGGER.Debug($"Formatted String: {oFormattedValue}")
|
||||
|
||||
|
||||
' End If
|
||||
' Catch ex As Exception
|
||||
' LOGGER.Warn($"Unexpected error in Format String [{oControl.Name}]: {ex.Message}")
|
||||
' LOGGER.Error(ex)
|
||||
' End Try
|
||||
|
||||
|
||||
'End If
|
||||
If Not IsNothing(oFormattedValue) And oFormattedValue <> String.Empty Then
|
||||
oControl.Text = NotNull(oFormattedValue, oDefaultValue)
|
||||
Else
|
||||
@@ -3264,11 +3210,13 @@ Public Class frmValidator
|
||||
Dim oSQl = $"SELECT CASE WHEN {oExpression} THEN CONVERT(BIT,1) ELSE CONVERT(BIT,0) END "
|
||||
Dim oColorName = IIf(DatabaseECM.GetScalarValue(oSQl), oSPlit(1), oSPlit(2))
|
||||
oControl.BackColor = Color.FromName(oColorName)
|
||||
If oColorName = "Green" Or oColorName = "Blue" Or oColorName = "Red" Then
|
||||
oControl.ForeColor = Color.FromName("White")
|
||||
Else
|
||||
oControl.ForeColor = Color.FromName("Black")
|
||||
End If
|
||||
|
||||
oControl.ForeColor = GraphicsEx.GetContrastedColor(oControl.BackColor)
|
||||
'If oColorName = "Green" Or oColorName = "Blue" Or oColorName = "Red" Then
|
||||
' oControl.ForeColor = Color.FromName("White")
|
||||
'Else
|
||||
' oControl.ForeColor = Color.FromName("Black")
|
||||
'End If
|
||||
End If
|
||||
End If
|
||||
Catch ex As Exception
|
||||
@@ -3447,25 +3395,37 @@ Public Class frmValidator
|
||||
If oColValuesfromSource.Length > 8 Then
|
||||
LOGGER.Warn("Fill Grid Error - Max 8 columns can be configured!")
|
||||
End If
|
||||
Select Case oColValuesfromSource.Length
|
||||
Case 1
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0)})
|
||||
Case 2
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1)})
|
||||
Case 3
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2)})
|
||||
Case 4
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3)})
|
||||
Case 5
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4)})
|
||||
Case 6
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4), oColValuesfromSource(5)})
|
||||
Case 7
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4), oColValuesfromSource(5), oColValuesfromSource(6)})
|
||||
Case 8
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4), oColValuesfromSource(5), oColValuesfromSource(6), oColValuesfromSource(7)})
|
||||
|
||||
End Select
|
||||
Dim oRowData As New List(Of Object)
|
||||
|
||||
For index = 1 To oColValuesfromSource.Length
|
||||
Dim oColumnType = oDTColumnsPerDevExGrid.Rows.Item(index - 1).Item("TYPE_COLUMN")
|
||||
Dim oConvertedValue = ClassFormat.GetConvertedValue(oColValuesfromSource(index - 1), oColumnType)
|
||||
oRowData.Add(oConvertedValue)
|
||||
Next
|
||||
|
||||
oDataSource.Rows.Add(oRowData.ToArray())
|
||||
|
||||
'Select Case oColValuesfromSource.Length
|
||||
' Case 1
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0)})
|
||||
' Case 2
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1)})
|
||||
' Case 3
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2)})
|
||||
' Case 4
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3)})
|
||||
' Case 5
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4)})
|
||||
' Case 6
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4), oColValuesfromSource(5)})
|
||||
' Case 7
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4), oColValuesfromSource(5), oColValuesfromSource(6)})
|
||||
' Case 8
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4), oColValuesfromSource(5), oColValuesfromSource(6), oColValuesfromSource(7)})
|
||||
'End Select
|
||||
|
||||
|
||||
ElseIf oValueType = "System.Data.DataTable" Then
|
||||
Dim oMyDatatable As DataTable = oValueFromSource
|
||||
LOGGER.Debug($"IDB Fill Grid [{oControl.Name}] with Datatable - Rows: " & oMyDatatable.Rows.Count)
|
||||
@@ -3473,28 +3433,39 @@ Public Class frmValidator
|
||||
LOGGER.Debug($"IDB ROW Vector {oRow.Item(0).ToString}...")
|
||||
oColValuesfromSource = Split(oRow.Item(0).ToString, PMDelimiter)
|
||||
'If USER_USERNAME.ToLower = "'marscheiber" Then MsgBox($"IDB ROW Vector {oRow.Item(0).ToString}...")
|
||||
|
||||
If oColValuesfromSource.Length > 8 Then
|
||||
LOGGER.Warn("Fill Grid with DatatableSplit Error - Max 8 columns can be configured!")
|
||||
End If
|
||||
Select Case oColValuesfromSource.Length
|
||||
Case 1
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0)})
|
||||
Case 2
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1)})
|
||||
Case 3
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2)})
|
||||
Case 4
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3)})
|
||||
Case 5
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4)})
|
||||
Case 6
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4), oColValuesfromSource(5)})
|
||||
Case 7
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4), oColValuesfromSource(5), oColValuesfromSource(6)})
|
||||
Case 8
|
||||
oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4), oColValuesfromSource(5), oColValuesfromSource(6), oColValuesfromSource(7)})
|
||||
|
||||
End Select
|
||||
Dim oRowData As New List(Of Object)
|
||||
|
||||
For index = 1 To oColValuesfromSource.Length
|
||||
Dim oColumnType = oDTColumnsPerDevExGrid.Rows.Item(index - 1).Item("TYPE_COLUMN")
|
||||
Dim oConvertedValue = ClassFormat.GetConvertedValue(oColValuesfromSource(index - 1), oColumnType)
|
||||
oRowData.Add(oConvertedValue)
|
||||
Next
|
||||
|
||||
oDataSource.Rows.Add(oRowData.ToArray())
|
||||
|
||||
'Select Case oColValuesfromSource.Length
|
||||
' Case 1
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0)})
|
||||
' Case 2
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1)})
|
||||
' Case 3
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2)})
|
||||
' Case 4
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3)})
|
||||
' Case 5
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4)})
|
||||
' Case 6
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4), oColValuesfromSource(5)})
|
||||
' Case 7
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4), oColValuesfromSource(5), oColValuesfromSource(6)})
|
||||
' Case 8
|
||||
' oDataSource.Rows.Add(New String() {oColValuesfromSource(0), oColValuesfromSource(1), oColValuesfromSource(2), oColValuesfromSource(3), oColValuesfromSource(4), oColValuesfromSource(5), oColValuesfromSource(6), oColValuesfromSource(7)})
|
||||
'End Select
|
||||
|
||||
Next
|
||||
End If
|
||||
@@ -5424,9 +5395,12 @@ Public Class frmValidator
|
||||
|
||||
Dim oValueList As New List(Of String)
|
||||
|
||||
For Each item In oRow.ItemArray
|
||||
For Each item As Object In oRow.ItemArray
|
||||
item = NotNull(item, String.Empty)
|
||||
If TypeOf item IsNot String Then item.ToString()
|
||||
' Convert to string using InvariantCulture, so converting back from string does not screw up values
|
||||
If TypeOf item IsNot String Then
|
||||
item = String.Format(CultureInfo.InvariantCulture, "{0}", item)
|
||||
End If
|
||||
oValueList.Add(item)
|
||||
Next
|
||||
|
||||
|
||||
Reference in New Issue
Block a user