Modules/GUIs.ZooFlow/Search/frmFlowSearch1.vb

143 lines
6.9 KiB
VB.net

Imports DevExpress.XtraEditors
Imports DigitalData.GUIs.ZooFlow.ClassConstants
Public Class frmFlowSearch1
Private TOGGLE_Change As Boolean = False
Private LIMITATION_DATE As Boolean = False
Private SEARCH_FACT_DATE_ATTRIBUTE = "ADDED_WHEN"
Private SEARCH_FACT_DATE As String = "MONTH(OBJ.ADDED_WHEN) <> 13"
Private Sub ToggleSwitchToday_Toggled(sender As Object, e As EventArgs) Handles ToggleSwitchToday.Toggled, ToggleSwitchYesterday.Toggled, ToggleSwitchYear.Toggled, ToggleSwitchYear_Last.Toggled,
ToggleSwitchMonth_Last.Toggled, ToggleSwitchMonth.Toggled
If TOGGLE_Change = True Then
Exit Sub
End If
Dim oToggle As ToggleSwitch = TryCast(sender, ToggleSwitch)
If oToggle.IsOn Then
TOGGLE_Change = True
Dim oWHENDATE As String
Select Case oToggle.Name
Case "ToggleSwitchYear"
ToggleSwitchToday.IsOn = False
ToggleSwitchYesterday.IsOn = False
ToggleSwitchTomorrow.IsOn = False
ToggleSwitchLastWeek.IsOn = False
ToggleSwitchYear_Last.IsOn = False
ToggleSwitchMonth.IsOn = False
ToggleSwitchMonth_Last.IsOn = False
oWHENDATE = GET_DATE_LIMITATION("YEAR(@ATTRIBUTE) = YEAR(GETDATE())")
Case "ToggleSwitchLastYear"
ToggleSwitchToday.IsOn = False
ToggleSwitchYesterday.IsOn = False
ToggleSwitchTomorrow.IsOn = False
ToggleSwitchLastWeek.IsOn = False
ToggleSwitchYear.IsOn = False
ToggleSwitchMonth.IsOn = False
ToggleSwitchMonth_Last.IsOn = False
oWHENDATE = GET_DATE_LIMITATION("YEAR(@ATTRIBUTE) = (YEAR(GETDATE()) -1)")
Case "ToggleSwitchMonth"
ToggleSwitchToday.IsOn = False
ToggleSwitchYesterday.IsOn = False
ToggleSwitchTomorrow.IsOn = False
ToggleSwitchLastWeek.IsOn = False
ToggleSwitchYear.IsOn = False
ToggleSwitchYear_Last.IsOn = False
ToggleSwitchMonth_Last.IsOn = False
oWHENDATE = GET_DATE_LIMITATION("MONTH(@ATTRIBUTE) = MONTH(GETDATE())")
Case "ToggleSwitchMonth_Last"
ToggleSwitchToday.IsOn = False
ToggleSwitchYesterday.IsOn = False
ToggleSwitchTomorrow.IsOn = False
ToggleSwitchLastWeek.IsOn = False
ToggleSwitchYear.IsOn = False
ToggleSwitchYear_Last.IsOn = False
ToggleSwitchMonth.IsOn = False
Dim currentDate As DateTime = DateTime.Now
If currentDate.Month = 1 Then
oWHENDATE = GET_DATE_LIMITATION("MONTH(@ATTRIBUTE) = 12 " & vbNewLine & "AND YEAR(@ATTRIBUTE) = (YEAR(GETDATE()) -1)")
Else
oWHENDATE = GET_DATE_LIMITATION("MONTH(@ATTRIBUTE) = (MONTH(GETDATE()) -1)")
End If
Case "ToggleSwitchToday"
ToggleSwitchYesterday.IsOn = False
ToggleSwitchTomorrow.IsOn = False
ToggleSwitchLastWeek.IsOn = False
ToggleSwitchYear.IsOn = False
ToggleSwitchYear_Last.IsOn = False
ToggleSwitchMonth.IsOn = False
ToggleSwitchMonth_Last.IsOn = False
oWHENDATE = GET_DATE_LIMITATION("convert(DATE,@ATTRIBUTE) = convert(DATE,GETDATE())")
Case "ToggleSwitchYesterday"
ToggleSwitchToday.IsOn = False
ToggleSwitchTomorrow.IsOn = False
ToggleSwitchLastWeek.IsOn = False
ToggleSwitchYear.IsOn = False
ToggleSwitchYear_Last.IsOn = False
ToggleSwitchMonth.IsOn = False
ToggleSwitchMonth_Last.IsOn = False
oWHENDATE = GET_DATE_LIMITATION("convert(DATE,@ATTRIBUTE) = convert(DATE,GETDATE()-1)")
End Select
SEARCH_FACT_DATE = oWHENDATE
TOGGLE_Change = False
LIMITATION_DATE = True
Else
If ToggleSwitchToday.IsOn = False And ToggleSwitchYesterday.IsOn = False And ToggleSwitchYear.IsOn = False And ToggleSwitchYear_Last.IsOn = False And ToggleSwitchMonth_Last.IsOn = False And ToggleSwitchMonth.IsOn = False Then
LIMITATION_DATE = False
End If
End If
End Sub
Private Function GET_DATE_LIMITATION(pInput As String) As String
Try
If SEARCH_FACT_DATE_ATTRIBUTE = "ADDED_WHEN" Then
Return pInput.Replace("@ATTRIBUTE", "OBJ.ADDED_WHEN")
Else
Dim oSTR = $"GRPDATE.[{SEARCH_FACT_DATE_ATTRIBUTE}]"
Return pInput.Replace("@ATTRIBUTE", oSTR)
End If
Catch ex As Exception
Return pInput
LOGGER.Error(ex)
End Try
End Function
Private Sub cmbLimitationDateAttr_SelectedValueChanged(sender As Object, e As EventArgs) Handles cmbLimitationDateAttr.SelectedValueChanged
If cmbLimitationDateAttr.SelectedIndex <> -1 Then
Try
Dim oEditValue As String = cmbLimitationDateAttr.SelectedItem.ToString
If oEditValue = IDB_ADDED_WHEN_String_German Or oEditValue = IDB_ADDED_WHEN_String_Englisch Then
SEARCH_FACT_DATE_ATTRIBUTE = "ADDED_WHEN"
Else
SEARCH_FACT_DATE_ATTRIBUTE = oEditValue
SEARCH_FACT_DATE = $"MONTH(GRPDATE.[{SEARCH_FACT_DATE_ATTRIBUTE}]) <> 13"
End If
'SearchContent()
Catch ex As Exception
LOGGER.Error(ex)
End Try
End If
End Sub
Private Sub frmFlowSearch1_Load(sender As Object, e As EventArgs) Handles Me.Load
If My.Application.User.Language = "de-DE" Then
cmbLimitationDateAttr.Items.Add(IDB_ADDED_WHEN_String_German)
Else
cmbLimitationDateAttr.Items.Add(IDB_ADDED_WHEN_String_Englisch)
End If
Dim oDT As DataTable = My.DatabaseIDB.GetDatatable($"SELECT * FROM VWIDB_BE_ATTRIBUTE WHERE TYPE_ID IN (5,6) AND LANG_ID = {My.Application.User.LanguageId}")
For Each oRow As DataRow In oDT.Rows
cmbLimitationDateAttr.Items.Add(oRow.Item("ATTR_TITLE"))
Next
'Dim editor As BarEditItem = BarEditItemDate
' editor = TryCast(BarEditItemDate, ComboBoxEdit)
If My.Application.User.Language = "de-DE" Then
cmbLimitationDateAttr.SelectedIndex = 0
' BarEditItemDate.EditValue = "Erstellt Wann"
Else
cmbLimitationDateAttr.SelectedIndex = 1
' BarEditItemDate.EditValue = "Added when"
End If
End Sub
End Class