Files
AVISO/Aviso/frmNCTSRouten.vb

325 lines
11 KiB
VB.net

Imports System.Security.Authentication.ExtendedProtection
Imports GrapeCity.ActiveReports.Document.Section
Imports VERAG_PROG_ALLGEMEIN
Public Class frmNCTSRouten
Dim routenId As Integer = -1
Private sql As New VERAG_PROG_ALLGEMEIN.SQL
Dim currentRoute As New VERAG_PROG_ALLGEMEIN.cNCTSRouten
Public FIRMA_TMP As String = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Private Sub frmNCTSRouten_Load(sender As Object, e As EventArgs) Handles MyBase.Load
init()
End Sub
Sub init()
initDGVRouten()
'Abgangszollstelle
cbxVon.Items.Clear()
cbxVon.fillWithSQL("SELECT [grz_Grenzstelle],[grz_BezeichnungCBO] FROM tblGrenzstelle where [grz_Firma]='" & FIRMA_TMP & "' OR grz_Cluster='" & VERAG_PROG_ALLGEMEIN.cAllgemein.CLUSTER & "' AND grz_Aktiv=1 order by grz_Reihenfolge, grz_Grenzstelle", False, "AVISO", True,)
cbxVon.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("???", "???"))
cbxVon.changeItem("")
sbxVon.initSearchBox(Me.FindForm, "[Code] ,[Code] as Nr,Description as Dienststelle,left(Code,2) as Land,[Description] +' (' +left(Code,2)+')' as display FROM [tbl_DY_ZollDE_C0141_Zollstellen]",
{" [Code]", "Description"},
" (StartDate is null OR StartDate< GETDATE()) AND (EndDate is null OR EndDate> GETDATE()) ",
" left(Code,2),[Description]", "Code", "display", "FMZOLL", , 400, 200, {"display", "Code"})
'Bestimmungszollstelle
cbxNach.Items.Clear()
cbxNach.fillWithSQL("SELECT [grz_Grenzstelle],[grz_BezeichnungCBO] FROM tblGrenzstelle where [grz_Firma]='" & FIRMA_TMP & "' OR grz_Cluster='" & VERAG_PROG_ALLGEMEIN.cAllgemein.CLUSTER & "' AND grz_Aktiv=1 order by grz_Reihenfolge, grz_Grenzstelle", False, "AVISO", True,)
cbxNach.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("???", "???"))
cbxNach.changeItem("")
sbxNach.initSearchBox(Me.FindForm, "[Code] ,[Code] as Nr,Description as Dienststelle,left(Code,2) as Land,[Description] +' (' +left(Code,2)+')' as display FROM [tbl_DY_ZollDE_C0141_Zollstellen]",
{" [Code]", "Description"},
" (StartDate is null OR StartDate< GETDATE()) AND (EndDate is null OR EndDate> GETDATE()) ",
" left(Code,2),[Description]", "Code", "display", "FMZOLL", , 400, 200, {"display", "Code"})
cbxRoutenart.Items.Clear()
cbxRoutenart.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
cbxRoutenart.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Landweg", "Landweg"))
cbxRoutenart.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Seeweg", "Seeweg"))
cbxRoutenart.changeItem("")
txtDauer.Text = ""
txtVon.Text = ""
txtNach.Text = ""
dgvNCTSRouten.ClearSelection()
DisableUserControl()
End Sub
Sub initDGVRouten()
dgvNCTSRouten.Enabled = True
With dgvNCTSRouten
.Columns.Clear()
.DataSource = sql.loadDgvBySql("SELECT [nctsr_id],[nctsr_von],[nctsr_nach],[nctsr_dauer_in_tagen],[nctsr_route], [nctsr_tansportmittel] FROM [VERAG].[dbo].[tblNTCSRouten]",
"VERAG")
' .RowTemplate.Height = 30
.Columns("nctsr_id").Visible = False
.Columns("nctsr_von").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("nctsr_von").HeaderText = "Von"
.Columns("nctsr_nach").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("nctsr_nach").HeaderText = "Nach"
.Columns("nctsr_dauer_in_tagen").Visible = True
.Columns("nctsr_dauer_in_tagen").Width = 50
.Columns("nctsr_dauer_in_tagen").HeaderText = "Dauer"
.Columns("nctsr_dauer_in_tagen").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
.Columns("nctsr_route").Visible = True
.Columns("nctsr_route").Width = 100
.Columns("nctsr_route").HeaderText = "Route"
.Columns("nctsr_route").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
.Columns("nctsr_tansportmittel").HeaderText = "Transportmittel"
.Columns("nctsr_tansportmittel").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft
End With
End Sub
Private Sub saveRoute(curRoute As cNCTSRouten)
curRoute.nctsr_von = IIf(sbxVon._value Is Nothing, cbxVon._value, sbxVon._value)
curRoute.nctsr_nach = IIf(sbxNach._value Is Nothing, cbxNach._value, sbxNach._value)
curRoute.nctsr_route = cbxRoutenart._value
curRoute.nctsr_dauer_in_tagen = CInt(txtDauer.Text)
If Not curRoute.SAVE() Then
Me.DialogResult = Windows.Forms.DialogResult.None
End If
dgvNCTSRouten.GetOrder()
initDGVRouten()
dgvNCTSRouten.SetOrder()
End Sub
Private Sub btnNeu_Click(sender As Object, e As EventArgs) Handles btnNeu.Click
dgvNCTSRouten.ClearSelection()
dgvNCTSRouten.Enabled = False
currentRoute = New VERAG_PROG_ALLGEMEIN.cNCTSRouten With {
.nctsr_von = "",
.nctsr_nach = "",
.nctsr_dauer_in_tagen = 0,
.nctsr_route = "",
.nctsr_tansportmittel = "LKW"
}
loadChangedDSToPanel(currentRoute)
EnableUserControl()
setSaveButton()
End Sub
Sub setSaveButton()
btnSave.Visible = True
btnOK.Visible = False
End Sub
Sub setOKButton()
btnSave.Visible = False
btnOK.Visible = True
End Sub
Private Sub loadChangedDSToPanel(curRoute As VERAG_PROG_ALLGEMEIN.cNCTSRouten)
txtVon.Text = curRoute.nctsr_von.ToString
txtNach.Text = curRoute.nctsr_nach.ToString
cbxRoutenart._value = curRoute.nctsr_route.ToString
txtDauer.Text = curRoute.nctsr_dauer_in_tagen.ToString
For Each c As Control In pnlNCTSRouten.Controls
If TypeOf (c) Is CheckBox Then
AddHandler CType(c, ComboBox).SelectedValueChanged, AddressOf SomethingChanged
ElseIf TypeOf (c) Is TextBox Then
AddHandler CType(c, TextBox).TextChanged, AddressOf SomethingChanged
End If
Next
End Sub
Private Sub checkDestination()
End Sub
Private Sub SomethingChanged(sender As Object, e As EventArgs)
setSaveButton()
End Sub
Private Sub btn_OK_Click(sender As Object, e As EventArgs) Handles btnOK.Click
Close()
End Sub
Private Sub btn_Cancel_Click(sender As Object, e As EventArgs) Handles btn_Cancel.Click
Close()
End Sub
Private Sub EnableUserControl()
For Each c As Control In pnlNCTSRouten.Controls
c.Enabled = True
Next
End Sub
Private Sub DisableUserControl()
For Each c As Control In pnlNCTSRouten.Controls
c.Enabled = False
Next
End Sub
Private Sub dgvNCTSRouten_SelectionChanged(sender As Object, e As EventArgs) Handles dgvNCTSRouten.SelectionChanged
If dgvNCTSRouten.SelectedRows.Count > 0 Then
EnableUserControl()
Dim rowindex = dgvNCTSRouten.SelectedRows(0).Index
currentRoute = New VERAG_PROG_ALLGEMEIN.cNCTSRouten(dgvNCTSRouten.SelectedRows(0).Cells("nctsr_id").Value)
'checkIfValueInComboboxAndAdd(currentRoute)
loadChangedDSToPanel(currentRoute)
If dgvNCTSRouten.Enabled = False Then Exit Sub
routenId = dgvNCTSRouten.SelectedRows(0).Cells("nctsr_id").Value
End If
End Sub
Private Sub sbxVon_PreviewKeyDown(sender As Object, e As PreviewKeyDownEventArgs) Handles sbxVon.PreviewKeyDown
If sender Is sbxVon Then sbxVon.FireReturn() : e.IsInputKey = True : Me.DialogResult = DialogResult.None
If sender Is sbxNach Then sbxNach.FireReturn() : e.IsInputKey = True : Me.DialogResult = DialogResult.None
End Sub
'Private Sub checkIfValueInComboboxAndAdd(curRoute As cNCTSRouten)
' Dim index As Integer
' Dim inList As Boolean
' inList = False
' For index = 0 To cbxNach.Items.Count - 1
' If curRoute.nctsr_nach.ToString = cbxNach.Items(index).ToString Then
' inList = True
' Exit For
' End If
' Next index
' If inList = False Then cbxNach.Items.Add(curRoute.nctsr_nach.ToString)
'End Sub
Public Function GetTxtDauer() As TextBox
Return txtDauer
End Function
Function checkUserInput(txtDauer As TextBox) As Boolean
Dim validInputs As Boolean = True
lblWarningBST.Visible = False
lblWarningAZS.Visible = False
lblWarningDauer.Visible = False
lblWarningRoute.Visible = False
If (cbxVon._value = "" Or cbxVon._value Is Nothing) Then
lblWarningAZS.Visible = True
validInputs = False
End If
If (cbxNach._value = "" Or cbxNach._value Is Nothing) Then
lblWarningBST.Visible = True
validInputs = False
End If
If (cbxVon._value = "???" AndAlso sbxVon._value Is Nothing) Then
lblWarningAZS.Visible = True
validInputs = False
End If
If (cbxNach._value = "???" AndAlso sbxNach._value Is Nothing) Then
lblWarningAZS.Visible = True
validInputs = False
End If
If (cbxNach._value = "" Or cbxNach._value Is Nothing) Then
lblWarningBST.Visible = True
validInputs = False
End If
If (Not IsNumeric(txtDauer.Text) Or txtDauer.Text = "") Then
lblWarningDauer.Visible = True
validInputs = False
End If
If cbxRoutenart._value = "" Or cbxRoutenart._value Is Nothing Then
lblWarningRoute.Visible = True
validInputs = False
End If
Return validInputs
End Function
Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
If checkUserInput(GetTxtDauer()) Then saveRoute(currentRoute)
End Sub
Private Sub cbxVon_SelectedValueChanged(sender As Object, e As EventArgs) Handles cbxVon.SelectedValueChanged
If cbxVon._value.ToString = "???" Then
setSearchboxVisible(sbxVon, True)
Else
txtVon.Text = cbxVon._value.ToString
setSearchboxVisible(sbxVon, False)
sbxVon.Clear()
End If
End Sub
Private Sub cbxNach_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbxNach.SelectedValueChanged
If cbxNach._value.ToString = "???" Then
setSearchboxVisible(sbxNach, True)
Else
txtVon.Text = cbxVon._value.ToString
setSearchboxVisible(sbxNach, False)
sbxNach.Clear()
End If
End Sub
Sub setSearchboxVisible(searchbox As VERAG_PROG_ALLGEMEIN.MySearchBox, visible As Boolean)
searchbox.Visible = visible
End Sub
End Class