316 lines
11 KiB
VB.net
316 lines
11 KiB
VB.net
|
|
Imports VERAG_PROG_ALLGEMEIN
|
|
|
|
Public Class frmReferenzenSicherheiten
|
|
'Dim REF As New VERAG_PROG_ALLGEMEIN.cAufschubKonten
|
|
Dim writepermission As Boolean
|
|
|
|
Sub New(writepermission As Boolean)
|
|
InitializeComponent()
|
|
Me.writepermission = writepermission
|
|
|
|
End Sub
|
|
|
|
Private Sub Warenorte_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
|
|
|
If Not writepermission Then
|
|
btnSave.Enabled = False
|
|
btnDelete.Enabled = False
|
|
btnAdd.Enabled = False
|
|
|
|
For Each c As Control In mainPanel.Controls
|
|
If TypeOf c Is MyTextBox Then
|
|
Dim mytxtb As MyTextBox = c
|
|
mytxtb.ReadOnly = True
|
|
ElseIf TypeOf c Is TextBox Then
|
|
Dim txtb As TextBox = c
|
|
txtb.ReadOnly = True
|
|
ElseIf TypeOf c Is CheckBox Then
|
|
Dim cbx As CheckBox = c
|
|
cbx.Enabled = False
|
|
ElseIf TypeOf c Is MyComboBox Then
|
|
Dim mycbx As MyComboBox = c
|
|
mycbx.Enabled = False
|
|
ElseIf TypeOf c Is GroupBox Then
|
|
Dim gb As GroupBox = c
|
|
gb.Enabled = False
|
|
End If
|
|
|
|
Next
|
|
End If
|
|
|
|
initDGVWarenort()
|
|
cbxFirma.fillWithSQL("SELECT [Firma_id],[Firma_Bez] FROM [tblFirma] ", False, "FMZOLL", True)
|
|
|
|
End Sub
|
|
|
|
|
|
Private Sub initDGVWarenort(Optional firma As Integer = 0)
|
|
|
|
lblWarning.Text = ""
|
|
|
|
Dim SQLString As String = "SELECT [brgakto_id],[brgakto_betrag],[brgakto_gs_standort],[brgakto_gs_zollsatz],[brgakto_gs_aktSaldo],[brgakto_gs_ustEnabled],[brgakto_gs_ust],[brgakto_gs_ATR],[brgakto_firmaID] FROM [tblBrgAufschubKonten] WHERE brgakto_gs_standort is not null"
|
|
Dim SQLWHere = ""
|
|
If firma <> 0 Then
|
|
SQLWHere = " AND brgakto_firmaID = " & firma
|
|
End If
|
|
|
|
|
|
dgvWarenorteNew.SET_SQL(SQLString & SQLWHere, "ADMIN", ,)
|
|
dgvWarenorteNew.LOAD()
|
|
|
|
|
|
If dgvWarenorteNew.Columns.Count < 1 Then Exit Sub
|
|
|
|
With dgvWarenorteNew
|
|
If .RowCount = 0 Then Me.Cursor = Cursors.Default : Exit Sub
|
|
.MultiSelect = False
|
|
.RowHeadersVisible = False
|
|
.ReadOnly = True
|
|
.SelectionMode = DataGridViewSelectionMode.FullRowSelect
|
|
.Columns("brgakto_id").Visible = False
|
|
.Columns("brgakto_gs_standort").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
|
.Columns("brgakto_gs_standort").HeaderText = "Standort"
|
|
.Columns("brgakto_betrag").Visible = False
|
|
.Columns("brgakto_gs_aktSaldo").Visible = False
|
|
.Columns("brgakto_gs_ustEnabled").Visible = False
|
|
.Columns("brgakto_gs_zollsatz").Visible = False
|
|
.Columns("brgakto_gs_ust").Visible = False
|
|
.Columns("brgakto_gs_ATR").Visible = False
|
|
.Columns("brgakto_firmaID").HeaderText = "Firma"
|
|
.Columns("brgakto_firmaID").Width = 150
|
|
End With
|
|
|
|
For Each row As DataGridViewRow In dgvWarenorteNew.Rows
|
|
|
|
|
|
If row.Cells("brgakto_firmaID").Value IsNot DBNull.Value AndAlso row.Cells("brgakto_firmaID").Value <> 0 Then
|
|
If CInt(row.Cells("brgakto_firmaID").Value) > 0 Then
|
|
|
|
Dim tmpFirma = New VERAG_PROG_ALLGEMEIN.cFirmen(row.Cells("brgakto_firmaID").Value)
|
|
'row.Cells("brgakto_firmaID").Value = tmpFirma.Firma_Bez.ToString
|
|
End If
|
|
End If
|
|
|
|
Next
|
|
|
|
|
|
initdgvDetails()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
End Sub
|
|
|
|
Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
|
|
|
|
If checkIfFirmaIsFilled(True) = False Then Exit Sub
|
|
|
|
Dim input = InputBox("Bitte geben Sie die Bezeichnung des neuen Referenz ein:", "Referenz anlegen")
|
|
If input <> "" Then
|
|
If checkNameIsValid(input) Then
|
|
Dim REF As New VERAG_PROG_ALLGEMEIN.cAufschubKonten(input, CInt(cbxFirma._value))
|
|
REF.brgakto_gs_ust = 0
|
|
REF.brgakto_betrag = 0
|
|
REF.brgakto_gs_ustEnabled = False
|
|
REF.brgakto_gs_zollsatz = 0
|
|
REF.brgakto_gs_ATR = False
|
|
|
|
If REF.SAVE() Then
|
|
initDGVWarenort(cbxFirma._value)
|
|
End If
|
|
|
|
Else
|
|
MsgBox("Es existiert bereits eine Referenz " & input & " für die Firma " & cbxFirma._value)
|
|
End If
|
|
|
|
Else
|
|
MsgBox("Keine Bezeichnung angegeben!")
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub initdgvDetails()
|
|
|
|
If dgvWarenorteNew.Rows.Count = 1 OrElse dgvWarenorteNew.SelectedRows.Count = 1 Then
|
|
|
|
Dim gsid As Integer = 0
|
|
|
|
If dgvWarenorteNew.Rows.Count = 1 Then
|
|
gsid = dgvWarenorteNew.Rows(0).Cells.Item("brgakto_id").Value
|
|
|
|
ElseIf dgvWarenorteNew.SelectedRows.Count = 1 Then
|
|
gsid = dgvWarenorteNew.SelectedRows(0).Cells.Item("brgakto_id").Value
|
|
End If
|
|
|
|
If gsid > 0 Then
|
|
|
|
Dim SQLStringREF As String = "SELECT [brgarefb_gsid],[brgarefb_refbetrag],[brgarefb_gueltig_ab],[brgarefb_gueltig_bis],[brgarefb_gs_aktiv] FROM [tblBrgAufschubReferenzberaege] WHERE brgarefb_gsid = " & gsid & " order by brgarefb_gueltig_ab, brgarefb_gueltig_bis"
|
|
|
|
MyDatagridview1.SET_SQL(SQLStringREF, "ADMIN", ,)
|
|
MyDatagridview1.LOAD()
|
|
|
|
With MyDatagridview1
|
|
If .RowCount = 0 Then Exit Sub
|
|
|
|
.ReadOnly = True
|
|
.SelectionMode = DataGridViewSelectionMode.FullRowSelect
|
|
.Columns("brgarefb_gsid").Visible = False
|
|
.Columns("brgarefb_refbetrag").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
|
.Columns("brgarefb_refbetrag").HeaderText = "Ref-Betrag"
|
|
.Columns("brgarefb_gs_aktiv").Visible = False
|
|
.Columns("brgarefb_gueltig_ab").HeaderText = "Gültig ab"
|
|
.Columns("brgarefb_gueltig_ab").Width = 75
|
|
.Columns("brgarefb_gueltig_bis").HeaderText = "Gültig bis"
|
|
.Columns("brgarefb_gueltig_bis").Width = 75
|
|
|
|
End With
|
|
|
|
End If
|
|
End If
|
|
|
|
End Sub
|
|
|
|
'Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles btnDelete.Click
|
|
' If dgvWarenorteNew.SelectedRows.Count > 0 Then
|
|
|
|
' Dim Warenort As New cWarenorte(dgvWarenorteNew.SelectedRows(0).Cells("wo_id").Value)
|
|
|
|
' If vbYes = MsgBox("Möchten Sie diesen Warenort " & Warenort.wo_warenort & " in " & Warenort.wo_firma & " wirklich löschen?", vbYesNo) Then
|
|
' Warenort.deleteWarenort(Warenort.wo_id)
|
|
' initDGVWarenort(cbxFirma._value)
|
|
' End If
|
|
|
|
' End If
|
|
|
|
'End Sub
|
|
|
|
Private Function checkNameIsValid(name As String) As Boolean
|
|
|
|
If dgvWarenorteNew.Rows.Count = 0 Then Return True
|
|
If checkIfFirmaIsFilled(False) = False Then Return False
|
|
|
|
|
|
For Each row As DataGridViewRow In dgvWarenorteNew.Rows
|
|
If Not IsDBNull(row.Cells("brgakto_gs_standort").Value) AndAlso Not IsDBNull(row.Cells("brgakto_firmaID").Value) Then
|
|
If row.Cells("brgakto_gs_standort").Value.ToLower = name.ToLower AndAlso row.Cells("brgakto_firmaID").Value = cbxFirma._value Then
|
|
Return False
|
|
End If
|
|
End If
|
|
|
|
Next
|
|
|
|
Return True
|
|
|
|
End Function
|
|
|
|
|
|
Private Sub dgvWarenorteNew_SelectionChanged(sender As Object, e As EventArgs) Handles dgvWarenorteNew.SelectionChanged
|
|
|
|
If dgvWarenorteNew.SelectedRows.Count < 1 Then
|
|
mainPanel.Enabled = False
|
|
Exit Sub
|
|
Else
|
|
mainPanel.Enabled = True
|
|
|
|
End If
|
|
|
|
Dim REF = New VERAG_PROG_ALLGEMEIN.cAufschubKonten(CInt(dgvWarenorteNew.SelectedRows(0).Cells("brgakto_id").Value))
|
|
|
|
txtStandort.Text = REF.brgakto_gs_standort
|
|
txtReferenzwert.Text = REF.getReferenzbetrag(Now())
|
|
cbxATR.Checked = REF.brgakto_gs_ATR
|
|
txtUst.Text = REF.brgakto_gs_ust
|
|
cbxUst.Checked = REF.brgakto_gs_ustEnabled
|
|
txtSaldo.Text = REF.brgakto_gs_aktSaldo
|
|
txtZollsatz.Text = REF.brgakto_gs_zollsatz
|
|
|
|
|
|
initdgvDetails()
|
|
|
|
|
|
End Sub
|
|
|
|
Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
|
|
|
|
checkIfFirmaIsFilled(False)
|
|
|
|
Dim REF_NEW As New VERAG_PROG_ALLGEMEIN.cAufschubKonten(CInt(dgvWarenorteNew.SelectedRows(0).Cells("brgakto_id").Value))
|
|
|
|
If checkFields() = False Then Exit Sub
|
|
|
|
REF_NEW.brgakto_gs_standort = txtStandort.Text
|
|
REF_NEW.brgakto_betrag = txtReferenzwert.Text
|
|
REF_NEW.brgakto_gs_ATR = cbxATR.Checked
|
|
REF_NEW.brgakto_gs_ustEnabled = cbxUst.Checked
|
|
REF_NEW.brgakto_gs_ust = txtUst.Text
|
|
REF_NEW.brgakto_gs_zollsatz = txtZollsatz.Text
|
|
REF_NEW.SAVE()
|
|
|
|
dgvWarenorteNew.GetOrder()
|
|
initDGVWarenort(IIf(cbxFirma._value = "", 0, cbxFirma._value))
|
|
dgvWarenorteNew.SetOrder()
|
|
|
|
|
|
|
|
|
|
|
|
End Sub
|
|
|
|
Private Sub cbxFirma_SelectedValueChanged(sender As Object, e As EventArgs) Handles cbxFirma.SelectedValueChanged
|
|
dgvWarenorteNew.GetOrder()
|
|
initDGVWarenort(IIf(cbxFirma._value = "", 0, cbxFirma._value))
|
|
dgvWarenorteNew.SetOrder()
|
|
|
|
|
|
End Sub
|
|
|
|
Private Function checkIfFirmaIsFilled(initialSave As Boolean, Optional setWarning As Boolean = True)
|
|
|
|
|
|
Dim firmaLeer As Boolean = String.IsNullOrEmpty(cbxFirma._value)
|
|
|
|
Dim gridFirmaLeer As Boolean =
|
|
dgvWarenorteNew.SelectedRows(0).Cells("brgakto_firmaID").Value Is DBNull.Value OrElse
|
|
dgvWarenorteNew.SelectedRows(0).Cells("brgakto_firmaID").Value Is Nothing OrElse
|
|
dgvWarenorteNew.SelectedRows(0).Cells("brgakto_firmaID").Value.ToString() = ""
|
|
|
|
If firmaLeer AndAlso (gridFirmaLeer OrElse initialSave) Then
|
|
|
|
lblWarning.Text = If(setWarning, "Bitte Firma auswählen!", "")
|
|
Return False
|
|
|
|
End If
|
|
|
|
lblWarning.Text = ""
|
|
Return True
|
|
End Function
|
|
|
|
Private Function checkFields() As Boolean
|
|
|
|
If txtStandort.TextLength > 50 Then
|
|
lblWarning.Text = "Standort darf max 50 Zeichen besitzen!"
|
|
Return False
|
|
ElseIf txtReferenzwert.TextLength > 50 Then
|
|
lblWarning.Text = "REF-Wert darf max 50 Zeichen besitzen!"
|
|
Return False
|
|
ElseIf txtZollsatz.TextLength > 60 Then
|
|
lblWarning.Text = "Zollsatz darf max 60 Zeichen besitzen!"
|
|
Return False
|
|
ElseIf txtUst.TextLength > 50 Then
|
|
lblWarning.Text = "Ust darf max 50 Zeichen besitzen!"
|
|
Return False
|
|
End If
|
|
|
|
lblWarning.Text = ""
|
|
Return True
|
|
|
|
|
|
End Function
|
|
|
|
End Class |