Files
SDL/SDL/mdm/SDLLeistungenDetails/usrCntlSDLLeistungenSI.vb
2020-06-23 08:29:29 +02:00

199 lines
7.6 KiB
VB.net

Imports System.Globalization
Public Class usrCntlSDLLeistungenSI
Public KfzKennzeichen As String
Public SDLNr As String
Public kdNr As String
Dim PROG As New cProgramFunctions
Dim kundenSQL As New kundenSQL
Public History As String
Dim culture As CultureInfo = New CultureInfo("de-DE")
Private PartnerKdNrFromFMZOLL As cPartnerKdNRFMZoll
Public addnew As Boolean = False
Dim VAL As New cValidationSDLLeistungen
Public Event LKWChanged(kdNr, newKfz, SDLNr, History)
Public Event CHANGED(kdNr, newKfz, SDLNr, History)
'Public WithEvents s As New cBinding 'fürs Binding
Public SDL As VERAG_PROG_ALLGEMEIN.cSDL
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:
'scanRetourschreiben.INIT(kdNr, KfzKennzeichen, "SDL_" & SDLNr, "HIST_" & History)
scanRetourniert.INIT(kdNr, KfzKennzeichen, "SDL_" & SDLNr, "HIST_" & History)
scanSonstiges.INIT(kdNr, KfzKennzeichen, "SDL_" & SDLNr, "HIST_" & History)
scanBestellPerPost.INIT(kdNr, KfzKennzeichen, "SDL_" & SDLNr, "HIST_" & History)
initDataBinding()
boud = True
' If txtMSEKdNr.Text = "" Then
'getPartnerKdNrFromFMZOLL() ' Lädt die Partner-KdNr
' txtMSEKdNr.Text = PartnerKdNrFromFMZOLL.MSEKundenNr
'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
cbxRetourniert._date = SDL.RetourniertAm
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
cbxRetourniert.Checked = SDL.Retourniert
txtVermerk.Text = SDL.Vermerk
UsrCntlDetails.lblErfassung.Text = SDL.Erfassungsdatum
UsrCntlDetails.lblAenderung.Text = SDL.Änderungsdatum
UsrCntlDetails.lblSachbearb.Text = SDL.Sachbearbeiter
txtOBUID.Text = SDL.OBUID
txtKartenNr.Text = SDL.KartenNr
txtSERIE.Text = SDL.SERIE_Nr
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.Retourniert = cbxRetourniert.Checked
SDL.Vermerk = txtVermerk.Text
SDL.Erfassungsdatum = UsrCntlDetails.lblErfassung.Text
SDL.Änderungsdatum = UsrCntlDetails.lblAenderung.Text
SDL.Sachbearbeiter = UsrCntlDetails.lblSachbearb.Text
SDL.OBUID = txtOBUID.Text
SDL.KartenNr = txtKartenNr.Text
SDL.SERIE_Nr = txtSERIE.Text
SDL.RetourniertAm = cbxRetourniert._date
SDL.VerlorenAm = cbxVerloren._date
SDL.GestohlenAm = cbxGestohlen._date
SDL.GesperrtAm = cbxGesperrt._date
SDL.DefektAm = cbxDefekt._date
SDL.Archiviert = cbxArchiviert.Checked
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 'ProgramFunctions.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
Private Sub txtBestellung_TextChanged(sender As Object, e As EventArgs) Handles txtBestellung.PropertyChanged, txtLieferung.PropertyChanged, txtKartenNr.TextChanged, txtSERIE.TextChanged, txtOBUID.TextChanged, txtVermerk.TextChanged, cbxRetourniert.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