Imports System.Globalization Public Class usrCntlSDLLeistungenWOELFL Public KfzKennzeichen As String Public kdNr As String Public SDLNr As String Public History As String Dim kundenSQL As New kundenSQL Dim culture As CultureInfo = New CultureInfo("de-DE") Public addnew As Boolean = False 'Public WithEvents s As New cBinding 'fürs Binding Public SDL As VERAG_PROG_ALLGEMEIN.cSDL Public Event LKWChanged(kdNr, newKfz, SDLNr, History) Public Event CHANGED(kdNr, newKfz, SDLNr, History) Public PROG As New cProgramFunctions Private PartnerKdNrFromFMZOLL As cPartnerKdNRFMZoll Dim VAL As New cValidationSDLLeistungen Dim boud = False Sub New(kdNr, KfzKennzeichen, SDLNr, History) ' Dieser Aufruf ist für den Designer erforderlich. InitializeComponent() Me.kdNr = kdNr Me.KfzKennzeichen = KfzKennzeichen Me.SDLNr = SDLNr Me.History = History ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. End Sub Private Sub usrCntlSDLLeistungenCZ_Load(sender As Object, e As EventArgs) Handles Me.Load UsrCntlDetails.kdNr = kdNr UsrCntlDetails.SDLNr = SDLNr UsrCntlDetails.History = History UsrCntlDetails.lblLKWNr.Text = KfzKennzeichen AddHandler UsrCntlDetails.LKWChanged, Sub(newKfz) RaiseEvent LKWChanged(kdNr, newKfz, SDLNr, History) End Sub 'Scan-Elemente initialisieren: scanPIN.INIT(kdNr, KfzKennzeichen, "SDL_" & SDLNr, "HIST_" & History) scanSonstiges.INIT(kdNr, KfzKennzeichen, "SDL_" & SDLNr, "HIST_" & History) initDataBinding() boud = True If txtClientNr.Text = "" Then getPartnerKdNrFromFMZOLL() ' Lädt die Partner-KdNr txtClientNr.Text = PartnerKdNrFromFMZOLL.WölflKundenNr End If If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("MDM_Leistungen_bearbeiten", Me.FindForm) Then cProgramFunctions.setControlReadOnly(Me) End If End Sub Sub getPartnerKdNrFromFMZOLL() ' Lädt die Partner-KdNr PartnerKdNrFromFMZOLL = kundenSQL.getPartnerKdNrFromFMZOLL(kdNr) End Sub Function gueltigBisabgelaufen(o) As Boolean If CDate(o) > Now Then Return False End If Return True End Function Sub initDataBinding() Try SDL = New VERAG_PROG_ALLGEMEIN.cSDL(kdNr, KfzKennzeichen, SDLNr, History) PROG.initDTPE(txtLieferung) PROG.initDTPE(txtBestellung) txtLieferung._value = SDL.Lieferdatum txtBestellung._value = SDL.Bestelldatum cbxErsatzkarte._date = SDL.ErsatzkarteAm cbxVerloren._date = SDL.VerlorenAm cbxGestohlen._date = SDL.GestohlenAm cbxGesperrt._date = SDL.GesperrtAm cbxDefekt._date = SDL.DefektAm cbxGesperrt.Checked = SDL.Gesperrt cbxDefekt.Checked = SDL.Defekt cbxGestohlen.Checked = SDL.Gestohlen cbxVerloren.Checked = SDL.Verloren cbxArchiviert.Checked = SDL.Archiviert cbxErsatzkarte.Checked = SDL.Ersatzkarte txtVermerk.Text = SDL.Vermerk UsrCntlDetails.lblErfassung.Text = SDL.Erfassungsdatum UsrCntlDetails.lblAenderung.Text = SDL.Änderungsdatum UsrCntlDetails.lblSachbearb.Text = SDL.Sachbearbeiter txtPIN.Text = SDL.PIN PROG.initPIN(txtPIN) txtKartenschluesselNummer.Text = SDL.KartenSchlüsselNr Catch ex As Exception MsgBox(ex.Message) MsgBox(ex.StackTrace) End Try End Sub Public Sub newEntry() ' s.updateBinding() 's.newEntry(kdNr, KfzKennzeichen, SDLNr) 'NEUER EINTRAG! If txtBestellung.Text = "" Then txtBestellung.Text = Now.ToShortDateString End Sub Sub BindingTableColumnChanged() UsrCntlDetails.lblSachbearb.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME UsrCntlDetails.lblAenderung.Text = Now.ToString("dd.MM.yyyy HH:mm") ' If e.Column.ColumnName = "Sachbearbeiter" Or e.Column.ColumnName = "Änderungsdatum" Then Exit Sub If save() Then RaiseEvent CHANGED(kdNr, KfzKennzeichen, SDLNr, History) End Sub Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Dim valid As Boolean = VAL.checkValidDate(sender, True) End Sub Public Function save() As Boolean loadDataInClass() Return SDL.SAVE 'If checkSave() Then ' Return kundenSQL.doSQLByList(s.bindingSource) 'End If Return False End Function Sub loadDataInClass() SDL.Lieferdatum = PROG.isEmptyNull(txtLieferung._value) SDL.Bestelldatum = PROG.isEmptyNull(txtBestellung._value) SDL.Gesperrt = cbxGesperrt.Checked SDL.Defekt = cbxDefekt.Checked SDL.Gestohlen = cbxGestohlen.Checked SDL.Verloren = cbxVerloren.Checked SDL.Ersatzkarte = cbxErsatzkarte.Checked SDL.Vermerk = txtVermerk.Text SDL.Erfassungsdatum = UsrCntlDetails.lblErfassung.Text SDL.Änderungsdatum = UsrCntlDetails.lblAenderung.Text SDL.Sachbearbeiter = UsrCntlDetails.lblSachbearb.Text SDL.PIN = txtPIN.Text SDL.KartenSchlüsselNr = txtKartenschluesselNummer.Text SDL.ErsatzkarteAm = cbxErsatzkarte._date SDL.VerlorenAm = cbxVerloren._date SDL.GestohlenAm = cbxGestohlen._date SDL.GesperrtAm = cbxGesperrt._date SDL.DefektAm = cbxDefekt._date SDL.Archiviert = cbxArchiviert.Checked End Sub Public Sub reInit() For Each c In Me.Controls If c.GetType.Name = "TextBox" Then Dim tb As TextBox = DirectCast(c, TextBox) tb.Text = tb.Text ' MsgBox(tb.Name) End If Next End Sub Function checkSave() As Boolean ' ' If Not VAL.checkValidDate(txtBestellung, True) Then Return False 'cProgramFunctions.setInfo(Me.FindForm, "ERR", "Bestelldatum: Datumsformat nicht korrekt!", 3) : Return False ' If Not VAL.checkValidDate(txtLieferung, True) Then Return False 'cProgramFunctions.setInfo(Me.FindForm, "ERR", "Lieferdatum: Datumsformat nicht korrekt!", 3) : Return False ' If Not VAL.checkValidDate(txtGueltigkeit, True) Then Return False 'cProgramFunctions.setInfo(Me.FindForm, "ERR", "Gültigkeitsdatum: Datumsformat nicht korrekt!", 3) : Return False Return True End Function '?????????????????????????????????????????????????????????????????????????????????? ' DGV mit CRTL+S speichern Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As PreviewKeyDownEventArgs) Handles MyBase.PreviewKeyDown Exit Sub 'If dgvSDLLeistungen.Focused Or (Not dgvSDLLeistungen.EditingControl Is Nothing AndAlso dgvSDLLeistungen.EditingControl.Focused) Then ' wenn DGV fokusiert, oder in Bearbeitung If e.Modifiers = Keys.Control Then If e.KeyCode = Keys.S Then ' dgvSDLLeistungen.EndEdit() ' Falls noch in Bearbeitung save() ' Speichern End If End If End Sub Private Sub txtBestellung_TextChanged(sender As Object, e As EventArgs) Handles txtBestellung.PropertyChanged, txtLieferung.PropertyChanged, txtPIN.TextChanged, txtKartenschluesselNummer.TextChanged, txtVermerk.TextChanged, cbxErsatzkarte.CheckedChanged, cbxDefekt.CheckedChanged, cbxVerloren.CheckedChanged, cbxGestohlen.CheckedChanged, cbxGesperrt.CheckedChanged, cbxArchiviert.CheckedChanged If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("MDM_Leistungen_bearbeiten", Me.FindForm) Then Exit Sub If boud And Me.FindForm IsNot Nothing Then If sender Is txtLieferung Then If Not PROG.checkSDLNrPartnerKdNr(kdNr, SDLNr) Then MsgBox("Bitte geben Sie die Partner-Kundennummer im Kundenblatt oder im FM-ZOLL ein!") End If BindingTableColumnChanged() End If End Sub Function addTxtToVermerk(tmp, txt) As String If txtVermerk.Text <> "" Then tmp &= " / " tmp &= txt & ", am " & Now.ToShortDateString If tmp.Length > txtVermerk.MaxLength Then tmp = tmp.Substring(0, txtVermerk.MaxLength) Return tmp End Function End Class