You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

836 lines
36 KiB

Public Class frmDatumSelect
Inherits System.Windows.Forms.Form
#Region " Vom Windows Form Designer generierter Code "
Public Sub New()
MyBase.New()
' Dieser Aufruf ist für den Windows Form-Designer erforderlich.
InitializeComponent()
' Initialisierungen nach dem Aufruf InitializeComponent() hinzufügen
End Sub
' Die Form überschreibt den Löschvorgang der Basisklasse, um Komponenten zu bereinigen.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
' Für Windows Form-Designer erforderlich
Private components As System.ComponentModel.IContainer
'HINWEIS: Die folgende Prozedur ist für den Windows Form-Designer erforderlich
'Sie kann mit dem Windows Form-Designer modifiziert werden.
'Verwenden Sie nicht den Code-Editor zur Bearbeitung.
Friend WithEvents lbl As System.Windows.Forms.Label
Friend WithEvents cboAnzTageBis As C1.Win.C1List.C1Combo
Friend WithEvents cboAnzTageVon As C1.Win.C1List.C1Combo
Friend WithEvents cboDateRange As C1.Win.C1List.C1Combo
Friend WithEvents dpBis As System.Windows.Forms.DateTimePicker
Friend WithEvents dpVon As System.Windows.Forms.DateTimePicker
Friend WithEvents lblAuswahlVon As System.Windows.Forms.Label
Friend WithEvents lblAuswahlBis As System.Windows.Forms.Label
Friend WithEvents lblVonDatum As System.Windows.Forms.Label
Friend WithEvents lblBisDatum As System.Windows.Forms.Label
Friend WithEvents cmdCancel As System.Windows.Forms.Button
Friend WithEvents cmdOK As System.Windows.Forms.Button
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
Dim Style1 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmDatumSelect))
Dim Style2 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style3 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style4 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style5 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style6 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style7 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style8 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style9 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style10 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style11 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style12 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style13 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style14 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style15 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style16 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style17 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style18 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style19 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style20 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style21 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style22 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style23 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Dim Style24 As C1.Win.C1List.Style = New C1.Win.C1List.Style
Me.lbl = New System.Windows.Forms.Label
Me.cboAnzTageBis = New C1.Win.C1List.C1Combo
Me.cboAnzTageVon = New C1.Win.C1List.C1Combo
Me.cboDateRange = New C1.Win.C1List.C1Combo
Me.dpBis = New System.Windows.Forms.DateTimePicker
Me.dpVon = New System.Windows.Forms.DateTimePicker
Me.lblAuswahlVon = New System.Windows.Forms.Label
Me.lblAuswahlBis = New System.Windows.Forms.Label
Me.lblVonDatum = New System.Windows.Forms.Label
Me.lblBisDatum = New System.Windows.Forms.Label
Me.cmdCancel = New System.Windows.Forms.Button
Me.cmdOK = New System.Windows.Forms.Button
CType(Me.cboAnzTageBis, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.cboAnzTageVon, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.cboDateRange, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'lbl
'
Me.lbl.Location = New System.Drawing.Point(18, 11)
Me.lbl.Name = "lbl"
Me.lbl.Size = New System.Drawing.Size(80, 16)
Me.lbl.TabIndex = 80
Me.lbl.Text = "Datumbereich"
Me.lbl.TextAlign = System.Drawing.ContentAlignment.MiddleLeft
'
'cboAnzTageBis
'
Me.cboAnzTageBis.AddItemSeparator = Global.Microsoft.VisualBasic.ChrW(59)
Me.cboAnzTageBis.Caption = ""
Me.cboAnzTageBis.CaptionHeight = 17
Me.cboAnzTageBis.CaptionStyle = Style1
Me.cboAnzTageBis.CaptionVisible = False
Me.cboAnzTageBis.CharacterCasing = System.Windows.Forms.CharacterCasing.Normal
Me.cboAnzTageBis.ColumnCaptionHeight = 17
Me.cboAnzTageBis.ColumnFooterHeight = 17
Me.cboAnzTageBis.ColumnHeaders = False
Me.cboAnzTageBis.ContentHeight = 15
Me.cboAnzTageBis.Cursor = System.Windows.Forms.Cursors.IBeam
Me.cboAnzTageBis.DataMode = C1.Win.C1List.DataModeEnum.AddItem
Me.cboAnzTageBis.DeadAreaBackColor = System.Drawing.Color.Empty
Me.cboAnzTageBis.EditorBackColor = System.Drawing.SystemColors.Window
Me.cboAnzTageBis.EditorFont = New System.Drawing.Font("Microsoft Sans Serif", 8.25!)
Me.cboAnzTageBis.EditorForeColor = System.Drawing.SystemColors.WindowText
Me.cboAnzTageBis.EditorHeight = 15
Me.cboAnzTageBis.EvenRowStyle = Style2
Me.cboAnzTageBis.FooterStyle = Style3
Me.cboAnzTageBis.HeadingStyle = Style4
Me.cboAnzTageBis.HighLightRowStyle = Style5
Me.cboAnzTageBis.Images.Add(CType(resources.GetObject("cboAnzTageBis.Images"), System.Drawing.Image))
Me.cboAnzTageBis.ItemHeight = 15
Me.cboAnzTageBis.Location = New System.Drawing.Point(296, 32)
Me.cboAnzTageBis.MatchEntryTimeout = CType(100, Long)
Me.cboAnzTageBis.MaxDropDownItems = CType(5, Short)
Me.cboAnzTageBis.MaxLength = 32767
Me.cboAnzTageBis.MouseCursor = System.Windows.Forms.Cursors.Default
Me.cboAnzTageBis.Name = "cboAnzTageBis"
Me.cboAnzTageBis.OddRowStyle = Style6
Me.cboAnzTageBis.RowDivider.Color = System.Drawing.Color.DarkGray
Me.cboAnzTageBis.RowDivider.Style = C1.Win.C1List.LineStyleEnum.None
Me.cboAnzTageBis.RowSubDividerColor = System.Drawing.Color.DarkGray
Me.cboAnzTageBis.SelectedStyle = Style7
Me.cboAnzTageBis.Size = New System.Drawing.Size(98, 21)
Me.cboAnzTageBis.Style = Style8
Me.cboAnzTageBis.TabIndex = 5
Me.cboAnzTageBis.TabStop = False
Me.cboAnzTageBis.Text = "1"
Me.cboAnzTageBis.PropBag = resources.GetString("cboAnzTageBis.PropBag")
'
'cboAnzTageVon
'
Me.cboAnzTageVon.AddItemSeparator = Global.Microsoft.VisualBasic.ChrW(59)
Me.cboAnzTageVon.Caption = ""
Me.cboAnzTageVon.CaptionHeight = 17
Me.cboAnzTageVon.CaptionStyle = Style9
Me.cboAnzTageVon.CaptionVisible = False
Me.cboAnzTageVon.CharacterCasing = System.Windows.Forms.CharacterCasing.Normal
Me.cboAnzTageVon.ColumnCaptionHeight = 17
Me.cboAnzTageVon.ColumnFooterHeight = 17
Me.cboAnzTageVon.ColumnHeaders = False
Me.cboAnzTageVon.ContentHeight = 15
Me.cboAnzTageVon.Cursor = System.Windows.Forms.Cursors.IBeam
Me.cboAnzTageVon.DataMode = C1.Win.C1List.DataModeEnum.AddItem
Me.cboAnzTageVon.DeadAreaBackColor = System.Drawing.Color.Empty
Me.cboAnzTageVon.EditorBackColor = System.Drawing.SystemColors.Window
Me.cboAnzTageVon.EditorFont = New System.Drawing.Font("Microsoft Sans Serif", 8.25!)
Me.cboAnzTageVon.EditorForeColor = System.Drawing.SystemColors.WindowText
Me.cboAnzTageVon.EditorHeight = 15
Me.cboAnzTageVon.EvenRowStyle = Style10
Me.cboAnzTageVon.FooterStyle = Style11
Me.cboAnzTageVon.HeadingStyle = Style12
Me.cboAnzTageVon.HighLightRowStyle = Style13
Me.cboAnzTageVon.Images.Add(CType(resources.GetObject("cboAnzTageVon.Images"), System.Drawing.Image))
Me.cboAnzTageVon.ItemHeight = 15
Me.cboAnzTageVon.Location = New System.Drawing.Point(296, 8)
Me.cboAnzTageVon.MatchEntryTimeout = CType(100, Long)
Me.cboAnzTageVon.MaxDropDownItems = CType(5, Short)
Me.cboAnzTageVon.MaxLength = 32767
Me.cboAnzTageVon.MouseCursor = System.Windows.Forms.Cursors.Default
Me.cboAnzTageVon.Name = "cboAnzTageVon"
Me.cboAnzTageVon.OddRowStyle = Style14
Me.cboAnzTageVon.RowDivider.Color = System.Drawing.Color.DarkGray
Me.cboAnzTageVon.RowDivider.Style = C1.Win.C1List.LineStyleEnum.None
Me.cboAnzTageVon.RowSubDividerColor = System.Drawing.Color.DarkGray
Me.cboAnzTageVon.SelectedStyle = Style15
Me.cboAnzTageVon.Size = New System.Drawing.Size(98, 21)
Me.cboAnzTageVon.Style = Style16
Me.cboAnzTageVon.TabIndex = 4
Me.cboAnzTageVon.Text = "1"
Me.cboAnzTageVon.PropBag = resources.GetString("cboAnzTageVon.PropBag")
'
'cboDateRange
'
Me.cboDateRange.AddItemSeparator = Global.Microsoft.VisualBasic.ChrW(59)
Me.cboDateRange.AutoCompletion = True
Me.cboDateRange.AutoDropDown = True
Me.cboDateRange.Caption = ""
Me.cboDateRange.CaptionHeight = 17
Me.cboDateRange.CaptionStyle = Style17
Me.cboDateRange.CharacterCasing = System.Windows.Forms.CharacterCasing.Normal
Me.cboDateRange.ColumnCaptionHeight = 17
Me.cboDateRange.ColumnFooterHeight = 17
Me.cboDateRange.ColumnHeaders = False
Me.cboDateRange.ContentHeight = 15
Me.cboDateRange.Cursor = System.Windows.Forms.Cursors.IBeam
Me.cboDateRange.DataMode = C1.Win.C1List.DataModeEnum.AddItem
Me.cboDateRange.DeadAreaBackColor = System.Drawing.Color.Empty
Me.cboDateRange.EditorBackColor = System.Drawing.SystemColors.Window
Me.cboDateRange.EditorFont = New System.Drawing.Font("Microsoft Sans Serif", 8.25!)
Me.cboDateRange.EditorForeColor = System.Drawing.SystemColors.WindowText
Me.cboDateRange.EditorHeight = 15
Me.cboDateRange.EvenRowStyle = Style18
Me.cboDateRange.FooterStyle = Style19
Me.cboDateRange.HeadingStyle = Style20
Me.cboDateRange.HighLightRowStyle = Style21
Me.cboDateRange.Images.Add(CType(resources.GetObject("cboDateRange.Images"), System.Drawing.Image))
Me.cboDateRange.ItemHeight = 15
Me.cboDateRange.Location = New System.Drawing.Point(101, 8)
Me.cboDateRange.MatchEntryTimeout = CType(100, Long)
Me.cboDateRange.MaxDropDownItems = CType(5, Short)
Me.cboDateRange.MaxLength = 32767
Me.cboDateRange.MouseCursor = System.Windows.Forms.Cursors.Default
Me.cboDateRange.Name = "cboDateRange"
Me.cboDateRange.OddRowStyle = Style22
Me.cboDateRange.RowDivider.Color = System.Drawing.Color.DarkGray
Me.cboDateRange.RowDivider.Style = C1.Win.C1List.LineStyleEnum.None
Me.cboDateRange.RowSubDividerColor = System.Drawing.Color.DarkGray
Me.cboDateRange.SelectedStyle = Style23
Me.cboDateRange.Size = New System.Drawing.Size(167, 21)
Me.cboDateRange.Style = Style24
Me.cboDateRange.TabIndex = 1
Me.cboDateRange.Text = "Von_Bis"
Me.cboDateRange.PropBag = resources.GetString("cboDateRange.PropBag")
'
'dpBis
'
Me.dpBis.Format = System.Windows.Forms.DateTimePickerFormat.[Short]
Me.dpBis.Location = New System.Drawing.Point(101, 71)
Me.dpBis.Name = "dpBis"
Me.dpBis.Size = New System.Drawing.Size(168, 20)
Me.dpBis.TabIndex = 3
'
'dpVon
'
Me.dpVon.Format = System.Windows.Forms.DateTimePickerFormat.[Short]
Me.dpVon.Location = New System.Drawing.Point(101, 40)
Me.dpVon.Name = "dpVon"
Me.dpVon.Size = New System.Drawing.Size(168, 20)
Me.dpVon.TabIndex = 2
'
'lblAuswahlVon
'
Me.lblAuswahlVon.Location = New System.Drawing.Point(18, 39)
Me.lblAuswahlVon.Name = "lblAuswahlVon"
Me.lblAuswahlVon.Size = New System.Drawing.Size(60, 16)
Me.lblAuswahlVon.TabIndex = 75
Me.lblAuswahlVon.Text = "Datum von"
Me.lblAuswahlVon.TextAlign = System.Drawing.ContentAlignment.MiddleLeft
'
'lblAuswahlBis
'
Me.lblAuswahlBis.Location = New System.Drawing.Point(18, 72)
Me.lblAuswahlBis.Name = "lblAuswahlBis"
Me.lblAuswahlBis.Size = New System.Drawing.Size(63, 16)
Me.lblAuswahlBis.TabIndex = 74
Me.lblAuswahlBis.Text = "Datum bis"
Me.lblAuswahlBis.TextAlign = System.Drawing.ContentAlignment.MiddleLeft
'
'lblVonDatum
'
Me.lblVonDatum.Location = New System.Drawing.Point(273, 43)
Me.lblVonDatum.Name = "lblVonDatum"
Me.lblVonDatum.Size = New System.Drawing.Size(63, 16)
Me.lblVonDatum.TabIndex = 69
Me.lblVonDatum.Text = "01.01.2003"
Me.lblVonDatum.TextAlign = System.Drawing.ContentAlignment.MiddleLeft
'
'lblBisDatum
'
Me.lblBisDatum.Location = New System.Drawing.Point(274, 74)
Me.lblBisDatum.Name = "lblBisDatum"
Me.lblBisDatum.Size = New System.Drawing.Size(63, 16)
Me.lblBisDatum.TabIndex = 68
Me.lblBisDatum.Text = "31.12.2003"
Me.lblBisDatum.TextAlign = System.Drawing.ContentAlignment.MiddleLeft
'
'cmdCancel
'
Me.cmdCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel
Me.cmdCancel.Location = New System.Drawing.Point(101, 100)
Me.cmdCancel.Name = "cmdCancel"
Me.cmdCancel.Size = New System.Drawing.Size(67, 23)
Me.cmdCancel.TabIndex = 7
Me.cmdCancel.Text = "Abbrechen"
'
'cmdOK
'
Me.cmdOK.DialogResult = System.Windows.Forms.DialogResult.OK
Me.cmdOK.Location = New System.Drawing.Point(264, 100)
Me.cmdOK.Name = "cmdOK"
Me.cmdOK.Size = New System.Drawing.Size(67, 23)
Me.cmdOK.TabIndex = 6
Me.cmdOK.Text = "OK"
'
'frmDatumSelect
'
Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
Me.ClientSize = New System.Drawing.Size(410, 138)
Me.Controls.Add(Me.lbl)
Me.Controls.Add(Me.cboAnzTageVon)
Me.Controls.Add(Me.cboDateRange)
Me.Controls.Add(Me.dpBis)
Me.Controls.Add(Me.dpVon)
Me.Controls.Add(Me.lblAuswahlVon)
Me.Controls.Add(Me.lblAuswahlBis)
Me.Controls.Add(Me.lblVonDatum)
Me.Controls.Add(Me.lblBisDatum)
Me.Controls.Add(Me.cmdCancel)
Me.Controls.Add(Me.cmdOK)
Me.Controls.Add(Me.cboAnzTageBis)
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow
Me.Name = "frmDatumSelect"
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent
Me.Text = "Datum Selektion"
CType(Me.cboAnzTageBis, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.cboAnzTageVon, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.cboDateRange, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
End Sub
#End Region
#Region "Declarationen"
Private m_sdatenherkunft As String
Private m_sResult As String
Private m_dDatumVon As Date
Private m_dDatumBis As Date
Private m_iAnzahlTageVon As Integer
Private m_iAnzahlTageBis As Integer
Private m_iLastDayAktuellerMonat As Integer
Dim m_sDislpayResult As String
Dim m_sNavigationResult As String
Private m_iDatumberich As Enum_Datumbereich
Public Enum Enum_Datumbereich
Von_Bis = 0
Datum_Bis_Heute = 1
Tage_Bis_Heute = 2
Aktueller_Monat = 3
Aktueller_MonatVon_Bis = 4
End Enum
Public Enum Enum_Filltype
Monat = 0
Jahr = 1
Heute = 2
End Enum
#End Region
#Region "Property"
Property NavigationResult() As String
' Werte dienen für die Steuerung
Get
Return m_sResult
End Get
Set(ByVal Value As String)
m_sResult = Value
End Set
End Property
Property DislpayResult() As String
Get
m_sDislpayResult = Replace(m_sResult, "BETWEEN", "Zwischen")
m_sDislpayResult = Replace(m_sDislpayResult, "AND", "und")
Return m_sDislpayResult
End Get
Set(ByVal Value As String)
m_sDislpayResult = Value
End Set
End Property
Public Property Datumsbereich()
Get
Datumsbereich = m_iDatumberich
End Get
Set(ByVal Value)
m_iDatumberich = Value
End Set
End Property
Public Property datenherkunft()
Get
datenherkunft = m_sdatenherkunft
End Get
Set(ByVal Value)
Dim aDatenherkunft() As String
m_sdatenherkunft = Value
aDatenherkunft = Split(m_sdatenherkunft, ";")
m_iLastDayAktuellerMonat = getlastDayInMonth(Now())
If UBound(aDatenherkunft) > 0 Then
'Struktut des Array
'0= Datumbereichtyp 0
'1= Anzahl Tage oder Vondatum 1 oder 10.11.2003
'2= Text Datumbereich Datum_Bis_Heute
'3= Anzahl Tage oderBisDatum 10 oder 10.11.2003
m_iDatumberich = aDatenherkunft(0)
Select Case m_iDatumberich
Case Enum_Datumbereich.Von_Bis
m_dDatumVon = aDatenherkunft(1)
m_dDatumBis = aDatenherkunft(3)
Case Enum_Datumbereich.Datum_Bis_Heute
m_dDatumVon = aDatenherkunft(1)
m_dDatumBis = Format(Now(), "dd.MM.yyyy")
Case Enum_Datumbereich.Tage_Bis_Heute
m_iAnzahlTageVon = aDatenherkunft(1)
m_dDatumBis = Format(Now(), "dd.MM.yyyy")
Case Enum_Datumbereich.Aktueller_Monat
m_iAnzahlTageVon = aDatenherkunft(1)
m_iAnzahlTageBis = aDatenherkunft(3)
Case Enum_Datumbereich.Aktueller_MonatVon_Bis
m_iAnzahlTageVon = aDatenherkunft(1)
If aDatenherkunft(3) = "Letzter Tag" Then
m_iAnzahlTageBis = 31
End If
'm_iAnzahlTageBis = aDatenherkunft(3)
If m_iAnzahlTageBis > m_iLastDayAktuellerMonat Then
m_iAnzahlTageBis = m_iLastDayAktuellerMonat
End If
End Select
Else
m_dDatumVon = Format(Now(), "dd.MM.yyyy")
m_dDatumBis = Format(Now(), "dd.MM.yyyy")
End If
End Set
End Property
'Public Property Result()
' Get
' Result = m_sResult
' End Get
' Set(ByVal Value)
' m_sResult = Value
' End Set
'End Property
#End Region
#Region "Formularfunktionen"
Dim iCnt As Integer
Private Sub frmDatumSelect_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
m_iLastDayAktuellerMonat = getlastDayInMonth(Now())
cboAnzTageVon.Top = dpVon.Top
cboAnzTageVon.Left = dpVon.Left
cboAnzTageVon.ColumnHeaders = False
cboAnzTageBis.Top = dpBis.Top
cboAnzTageBis.Left = dpBis.Left
cboAnzTageBis.ColumnHeaders = False
cboDateRange.ColumnHeaders = False
With cboDateRange
.AddItem("Von Bis") 'Von Bis
.AddItem("Datum Bis Heute") 'vondatum bis Heute
.AddItem("Tage Bis Heute") 'Anzahl Tage bis Heute
.AddItem("Aktueller Monat") 'Aktueller Monat
.AddItem("Aktueller Monat Von Bis") 'Aktueller Monat
.SelectedIndex = m_iDatumberich
End With
ShowGroupBox(m_iDatumberich)
Select Case m_iDatumberich
Case Enum_Datumbereich.Von_Bis
Case Enum_Datumbereich.Datum_Bis_Heute
'dpVon.Text = m_dDatumVon
Case Enum_Datumbereich.Tage_Bis_Heute
cboAnzTageVon.SelectedIndex = m_iAnzahlTageVon
dpBis.Text = m_dDatumBis
Case Enum_Datumbereich.Aktueller_Monat
cboAnzTageVon.SelectedIndex = m_iAnzahlTageVon - 1
cboAnzTageBis.SelectedIndex = m_iAnzahlTageBis
Case Enum_Datumbereich.Aktueller_MonatVon_Bis
cboAnzTageVon.SelectedIndex = m_iAnzahlTageVon - 1
cboAnzTageBis.SelectedIndex = m_iAnzahlTageBis
End Select
GetDatumBis()
GetDatumVon()
'lblVonDatum.Text = dpVon.Text
'lblBisDatum.Text = dpBis.Text
cboDateRange.Splits(0).DisplayColumns(0).Width = cboDateRange.Width - 20
End Sub
Private Sub dpBis_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles dpBis.ValueChanged
lblBisDatum.Text = dpBis.Text
End Sub
Private Sub dpVon_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles dpVon.ValueChanged
lblVonDatum.Text = dpVon.Text
End Sub
Private Sub cboAnzTageVon_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboAnzTageVon.TextChanged
GetDatumVon()
End Sub
Private Sub cboAnzTageVon_Validating(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles cboAnzTageVon.Validating
If ValidateComboInput(cboAnzTageVon) = False Then 'Eingabe prüfen
MessageBox.Show(MyTxt.gettext(18), "Eingabe von Datum", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1)
'MessageBox.Show("Kein Text der Liste", "Eingabe", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1)
e.Cancel = True
End If
End Sub
Private Sub cboAnzTageVon_Validated(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboAnzTageVon.Validated
GetDatumVon()
End Sub
Private Sub cboAnzTageBis_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboAnzTageBis.TextChanged
GetDatumBis()
End Sub
Private Sub cboAnzTageBis_Validating(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles cboAnzTageBis.Validating
If ValidateComboInput(cboAnzTageBis) = False Then
MessageBox.Show(MyTxt.gettext(18), "Eingabe bis Datum", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)
' MessageBox.Show("Kein Text der Liste", "Eingabe", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1)
e.Cancel = True
End If
End Sub
Private Sub cboAnzTageBis_Validated(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboAnzTageBis.Validated
GetDatumBis()
End Sub
Private Sub cmdCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdCancel.Click
Me.Close()
End Sub
Private Sub cmdOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdOK.Click
'===============================================================================
'Desc : Befüllen der Property & Form schliessen
'Input :
'Kriterium : Selected Datumrange
'Updatewert :
'Output :
'Erstellt : koe 10.11.2003
'Geaendert :
'===============================================================================
m_iDatumberich = cboDateRange.SelectedIndex
Select Case cboDateRange.SelectedIndex
Case Enum_Datumbereich.Von_Bis
m_sdatenherkunft = m_iDatumberich & ";" & dpVon.Text & ";Von_Bis;" & dpBis.Text
Case Enum_Datumbereich.Datum_Bis_Heute
m_sdatenherkunft = m_iDatumberich & ";" & dpVon.Text & ";Datum_Bis_Heute;Heute"
Case Enum_Datumbereich.Tage_Bis_Heute
m_sdatenherkunft = m_iDatumberich & ";" & cboAnzTageVon.Text & ";Tage_Bis_Heute;Heute"
Case Enum_Datumbereich.Aktueller_Monat
m_sdatenherkunft = m_iDatumberich & ";1;AktuellerMonat;0" '0 = Letzer Tag
Case Enum_Datumbereich.Aktueller_MonatVon_Bis
m_sdatenherkunft = m_iDatumberich & ";" & cboAnzTageVon.Text & ";AktuellerMonat;" & cboAnzTageBis.Text
End Select
'm_sResult = "BETWEEN CONVERT(DATETIME, ' " & Format(CDate(lblVonDatum.Text), "yyyy.MM.dd") & "', 102) And CONVERT(DATETIME, ' " & Format(CDate(lblBisDatum.Text), "yyyy.MM.dd 23:59:59") & "', 102) "
m_sResult = "BETWEEN " & lblVonDatum.Text & " AND " & lblBisDatum.Text
'WHERE (mutiert_am BETWEEN CONVERT(DATETIME, '2004-03-01 00:00:00', 102) AND CONVERT(DATETIME, '2004-03-01 23:59:59', 102))
Me.Close()
End Sub
#End Region
#Region "Div Funktionen"
Private Sub fillCbo(ByRef cbo As C1.Win.C1List.C1Combo, ByVal Datum As Date, ByVal FillTyp As Enum_Filltype, ByVal inklLetzterTag As Boolean)
'===============================================================================
'Desc : Füllt das Combo für den aktuellen Filltyp
'Input : Combocontrol,Datum, Inkl. Letzter Tag
'Kriterium : Inkl. Letzter Tag = Bei einem Monat wird der letzte Tag des Monat gewählt
'Updatewert :
'Output :
'Erstellt : koe 10.11.2003
'Geaendert :
'===============================================================================
Dim iCnt As Integer 'Zaehler
With cbo
.ClearItems()
If inklLetzterTag = True Then
.AddItem("Letzter Tag")
End If
Select Case FillTyp
Case Enum_Filltype.Heute
'============ Heute
.AddItem("Heute")
.SelectedIndex = 0
Case Enum_Filltype.Jahr
'============ Jahr
Me.Cursor = Cursors.WaitCursor
For iCnt = 0 To 366
.AddItem(iCnt)
Next
.SelectedIndex = 0
Me.Cursor = Cursors.Default
Case Enum_Filltype.Monat
'============ Monat
For iCnt = 1 To m_iLastDayAktuellerMonat
.AddItem(CType(iCnt, String))
Next
Try
.SelectedIndex = 0
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Select
End With
End Sub
Private Function ValidateComboInput(ByRef cbo As C1.Win.C1List.C1Combo) As Boolean
Dim iFoundIndex As Integer
iFoundIndex = cbo.FindStringExact(cbo.Text, 0, 0)
If iFoundIndex > -1 Then
ValidateComboInput = True
Try
cbo.SelectedIndex = iFoundIndex
Catch ex As Exception
MsgBox(ex.Message)
End Try
Else
ValidateComboInput = False
End If
End Function
Private Function getlastDayInMonth(ByVal Datum As Date) As Integer
'===============================================================================
'Desc : Ermittelt den letzten Tag des Monats
'Input : Datum
'Kriterium :
'Updatewert :
'Output : Letzter Tag des Monats
'Erstellt : koe 10.11.2003
'Geaendert :
'===============================================================================
Dim iLastDayNextMonat As Integer
Dim iMonat As Integer
Dim dDate As Date
iMonat = DatePart(DateInterval.Month, Datum, FirstDayOfWeek.Monday)
dDate = DateSerial(DatePart(DateInterval.Year, Datum, FirstDayOfWeek.Monday), iMonat + 1, 1)
iLastDayNextMonat = DatePart(DateInterval.Day, DateAdd(DateInterval.Day, -1, dDate), FirstDayOfWeek.Monday)
getlastDayInMonth = iLastDayNextMonat
End Function
Private Sub ShowGroupBox(ByVal Auswahltyp As Enum_Datumbereich)
'===============================================================================
'Desc : Je nach Berichswal werden die entsprechenden Controls angezeigt
'Input : Auswahlty
'Kriterium :
'Updatewert :
'Output :
'Erstellt : koe 10.11.2003
'Geaendert :
'===============================================================================
Try
cboAnzTageVon.Visible = False
cboAnzTageBis.Visible = False
dpVon.Visible = False
dpBis.Visible = False
dpVon.Enabled = False
dpBis.Enabled = False
lblAuswahlBis.Visible = True
lblAuswahlVon.Visible = True
Select Case Auswahltyp
Case Enum_Datumbereich.Von_Bis
dpVon.Visible = True
dpBis.Visible = True
dpVon.Enabled = True
dpBis.Enabled = True
'lblVonDatum.Text = dpVon.Text
'lblBisDatum.Text = dpBis.Text
Case Enum_Datumbereich.Datum_Bis_Heute
fillCbo(cboAnzTageBis, Now(), Enum_Filltype.Heute, False)
dpVon.Visible = True
dpVon.Enabled = True
cboAnzTageBis.Visible = True
'lblVonDatum.Text = m_dDatumVon
'lblBisDatum.Text = m_dDatumBis
Case Enum_Datumbereich.Tage_Bis_Heute
fillCbo(cboAnzTageVon, Now(), Enum_Filltype.Jahr, False)
fillCbo(cboAnzTageBis, Now(), Enum_Filltype.Heute, False)
cboAnzTageVon.Visible = True
cboAnzTageBis.Visible = True
'lblVonDatum.Text = Format(DateSerial(DatePart(DateInterval.Year, Now()), DatePart(DateInterval.Month, Now()), DatePart(DateInterval.Day, DateAdd(DateInterval.Day, -cboAnzTageVon.Value, Now()))), "dd.MM.yyyy")
'lblBisDatum.Text = Format(Now(), "dd.MM.yyyy")
Case Enum_Datumbereich.Aktueller_Monat
'lblVonDatum.Text = DateSerial(DatePart(DateInterval.Year, Now()), DatePart(DateInterval.Month, Now()), 1)
'lblBisDatum.Text = DateSerial(DatePart(DateInterval.Year, Now()), DatePart(DateInterval.Month, Now()), getlastDayInMonth(Now()))
fillCbo(cboAnzTageVon, Now(), Enum_Filltype.Heute, False)
fillCbo(cboAnzTageBis, Now(), Enum_Filltype.Heute, False)
dpVon.Visible = True
dpBis.Visible = True
'lblAuswahlBis.Visible = False
'lblAuswahlVon.Visible = False
Case Enum_Datumbereich.Aktueller_MonatVon_Bis
fillCbo(cboAnzTageVon, Now(), Enum_Filltype.Monat, False)
fillCbo(cboAnzTageBis, Now(), Enum_Filltype.Monat, True)
cboAnzTageVon.Visible = True
cboAnzTageBis.Visible = True
End Select
If cboAnzTageVon.Visible = True Then
cboAnzTageVon.Splits(0).DisplayColumns(0).Width = cboAnzTageVon.Width - 20
End If
If cboAnzTageBis.Visible = True Then
cboAnzTageBis.Splits(0).DisplayColumns(0).Width = cboAnzTageBis.Width - 20
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Private Sub GetDatumVon()
Try
Select Case cboDateRange.SelectedIndex
Case Enum_Datumbereich.Von_Bis
lblVonDatum.Text = m_dDatumVon
Case Enum_Datumbereich.Datum_Bis_Heute
lblVonDatum.Text = m_dDatumVon
Case Enum_Datumbereich.Tage_Bis_Heute
If (Not IsNumeric(cboAnzTageVon.Text) And Len(cboAnzTageVon.Text) > 0) Or Len(cboAnzTageVon.Text) > 4 Then
MessageBox.Show(MyTxt.gettext(18), "Eingabe von Datum", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1)
Exit Sub
End If
If cboAnzTageVon.Text <> "" Then
m_dDatumVon = Format(DateAdd(DateInterval.Day, -CType(cboAnzTageVon.Text, Integer), Now()), "dd.MM.yyyy")
Else
m_dDatumVon = Format(DateAdd(DateInterval.Day, 0, Now()), "dd.MM.yyyy")
End If
lblVonDatum.Text = m_dDatumVon
Case Enum_Datumbereich.Aktueller_Monat
lblVonDatum.Text = Format(DateSerial(DatePart(DateInterval.Year, Now()), DatePart(DateInterval.Month, Now()), 1), "dd.MM.yyyy")
Case Enum_Datumbereich.Aktueller_MonatVon_Bis
If cboAnzTageVon.Text <> "" Then
m_dDatumVon = Format(DateSerial(DatePart(DateInterval.Year, Now()), DatePart(DateInterval.Month, Now()), cboAnzTageVon.Text), "dd.MM.yyyy")
Else
m_dDatumVon = Format(DateAdd(DateInterval.Day, 0, Now()), "dd.MM.yyyy")
End If
lblVonDatum.Text = m_dDatumVon
End Select
dpVon.Text = lblVonDatum.Text
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Private Sub GetDatumBis()
Select Case cboDateRange.SelectedIndex
Case Enum_Datumbereich.Von_Bis
lblBisDatum.Text = m_dDatumBis
Case Enum_Datumbereich.Datum_Bis_Heute
lblBisDatum.Text = m_dDatumBis
Case Enum_Datumbereich.Tage_Bis_Heute
m_dDatumBis = Format(DateAdd(DateInterval.Day, 0, Now()), "dd.MM.yyyy")
'If cboAnzTageBis.Text <> "" Then
' m_dDatumBis = Format(DateAdd(DateInterval.Day, -CType(cboAnzTageVon.Text, Integer), Now()), "dd.MM.yyyy")
'Else
' m_dDatumBis = Format(DateAdd(DateInterval.Day, 0, Now()), "dd.MM.yyyy")
'End If
lblBisDatum.Text = m_dDatumBis
Case Enum_Datumbereich.Aktueller_Monat
lblBisDatum.Text = Format(DateSerial(DatePart(DateInterval.Year, Now()), DatePart(DateInterval.Month, Now()), m_iLastDayAktuellerMonat), "dd.MM.yyyy")
Case Enum_Datumbereich.Aktueller_MonatVon_Bis
Select Case cboAnzTageBis.SelectedIndex
Case 0 'Letzter Tag Monat
lblBisDatum.Text = Format(DateSerial(DatePart(DateInterval.Year, Now()), DatePart(DateInterval.Month, Now()), m_iLastDayAktuellerMonat), "dd.MM.yyyy")
Case Else '0-31
lblBisDatum.Text = Format(DateSerial(DatePart(DateInterval.Year, Now()), DatePart(DateInterval.Month, Now()), cboAnzTageBis.SelectedIndex), "dd.MM.yyyy")
End Select
End Select
dpBis.Text = lblBisDatum.Text
End Sub
#End Region
#Region " Control Functionen "
Private Sub cboDateRange_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboDateRange.Enter
End Sub
Private Sub cboAnzTageBis_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboAnzTageBis.Enter
cboAnzTageBis.Columns(0).Caption = ""
End Sub
Private Sub cboAnzTageVon_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboAnzTageVon.Enter
cboAnzTageVon.Columns(0).Caption = ""
End Sub
#End Region
Private Sub cboDateRange_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboDateRange.TextChanged
ShowGroupBox(cboDateRange.SelectedIndex)
GetDatumVon()
GetDatumBis()
End Sub
End Class