Files
AVISO/Aviso/frmAddSendungsvermerkShort.vb

308 lines
13 KiB
VB.net

Imports VERAG_PROG_ALLGEMEIN
Imports AVISO.AvisoStatusFunctions
Public Class frmAddSendungsvermerkShort
Dim AvisoDAL As New cAvisoDAL
Dim ADMIN As New cADMIN
Dim myAviso As New cAviso
Dim VermerkeDAL As New cVermerkeDAL
Dim aktChanged As Boolean = False
Dim Neuanlage As Boolean = False
Dim hStatus As Integer
Public SendungID As Integer = -1
Public AvisoID As Integer = -1
Dim txtSendung As New TextBox
Public Sub New()
InitializeComponent()
Icon = cMeineFunktionenAVISO.GetProgrammIcon
End Sub
Public Sub New(AvisoID, SendungID)
InitializeComponent()
Me.AvisoID = AvisoID
Me.SendungID = SendungID
Icon = cMeineFunktionenAVISO.GetProgrammIcon
End Sub
Private Sub frmEintragVermerk_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
'Escape händisch abfangen und auf Abbruch-Taste legen
If e.KeyCode = Keys.Escape Then
' btnAbbruch.PerformClick()
Me.Close()
End If
If e.KeyCode = Keys.Return Then
btnOK.PerformClick()
End If
End Sub
Dim listentoCheckChange As Boolean = True
Sub selectionChanged(sender As Object, e As EventArgs)
If listentoCheckChange Then
listentoCheckChange = False
For Each c In Me.Controls
If c.GetType.Name.ToString = "RadioButton" Then
' DirectCast(c, RadioButton).Checked = False
End If
Next
' DirectCast(sender, RadioButton).Checked = True
listentoCheckChange = True
End If
End Sub
Private Sub frmEintragVermerk_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
'cboDokumente.Items.Clear()
' cboDokumente.Items.Add(New MyListItem("nachgefordert", CStr(0)))
'cboDokumente.Items.Add(New MyListItem("erhalten", CStr(1)))
'cboDokumente.SelectedIndex = 0
Me.CenterToParent()
If My.Computer.Screen.WorkingArea.Height < Me.Height Then
Me.Height = My.Computer.Screen.WorkingArea.Height
End If
For Each c In Me.Controls
If c.GetType.Name.ToString = "RadioButton" Then
AddHandler DirectCast(c, RadioButton).CheckedChanged, AddressOf selectionChanged
End If
Next
myAviso = AvisoDAL.LesenAviso(AvisoID, "")
If SendungID > 0 Then
txtSendung.Text = ADMIN.getValueTxtBySql(" SELECT convert(varchar(2),[tblSnd_PosUnterNr]) +' - ' +isnull([tblSnd_Empfaenger],'') FROM tblSendungen WHERE [tblSnd_SendungID]=" & SendungID & "", "AVISO")
Else
txtSendung.Text = "KOMPLETT"
End If
hStatus = myAviso.Status
If hStatus = cGlobal.Status_Vorbereitet Or hStatus = cGlobal.Status_Vorgeschrieben Or hStatus = cGlobal.Status_Erfasst Then
optSendungInVorbereitung.Visible = True
If hStatus = cGlobal.Status_Vorgeschrieben Then
optSendungInVorbereitung.Visible = False
End If
Else
optSendungInVorbereitung.Visible = False
End If
'bereits vorhandene Vermerke laden
'txtInfo.Text = VermerkeDAL.Vermerke_einlesen(myAviso.AvisoID)
Me.Text = "AKT " & myAviso.LKW_Nr & ""
' optKeineAuswahl.Checked = True
' optDokumente.Focus()
End Sub
' Private Sub btnAbbruch_Click(sender As System.Object, e As System.EventArgs) Handles btnAbbruch.Click
' Me.Close()
' End Sub
Private Sub txtFeld_GotFocus(sender As Object, e As System.EventArgs) Handles txtFreierText.GotFocus, txtSpedition.GotFocus
CType(sender, TextBox).SelectAll()
End Sub
Private Sub btnOK_Click(sender As System.Object, e As System.EventArgs) Handles btnOK.Click
If txtDetail.Text <> "" Then
If txtDetail.Text.Length > 240 Then
showErr(lblErr240Zeichen)
txtDetail.Focus()
Exit Sub
End If
End If
'Plausibilität prüfen
If optFreierText.Checked Then
If txtFreierText.Text.Trim = "" Then
showErr(lblErrGrund)
txtFreierText.Focus()
Exit Sub
End If
insertSendungsVermerk(SendungID, myAviso.AvisoID, txtFreierText.Text.Trim, 47)
End If
If cbxAuftrag.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "Auftrag für Sendung '" & txtSendung.Text.Trim & "' fehlt - angefordert", 1)
If cbxRechnung.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "Rechnung für Sendung '" & txtSendung.Text.Trim & "' fehlt / mangelhaft - angefordert", 3)
If cbxLS.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "Lieferschein für Sendung '" & txtSendung.Text.Trim & "' fehlt - angefordert", 5)
If cbxATR.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "ATR für Sendung '" & txtSendung.Text.Trim & "' fehlt - angefordert", 7)
If cbxVollmacht.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "Vollmacht für Sendung '" & txtSendung.Text.Trim & "' fehlt - angefordert", 9)
If cbxCMR.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "CMR für Fiskal VZ bei Sendung '" & txtSendung.Text.Trim & "' angefordert", 11)
If optUeberwachungsdok.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "Ü-Dok bei Sendung '" & txtSendung.Text.Trim & "' angefordert", 53)
If cbxSonstDok.Checked Then
If txtSonstigesDokumentFehlt.Text.Trim = "" Then
showErr(lblErrDokument) : txtSonstigesDokumentFehlt.Focus() : Exit Sub
End If
insertSendungsVermerk(SendungID, myAviso.AvisoID, "Dokument '" & txtSonstigesDokumentFehlt.Text.Trim & "' fehlt - angefordert.", 25)
End If
If cbxNichtLeserlich.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "Dokument(e) nachgefordert, da nicht leserlich.", 42)
If optVorkasseAngefordert.Checked = True Then
insertSendungsVermerk(SendungID, myAviso.AvisoID, "Vorauskasse bei Sendung '" & txtSendung.Text.Trim & "' angefordert", 13)
End If
If optSpeditionWeitergeleitet.Checked = True Then
If txtSpedition.Text.Trim = "" Then
showErr(lblErrSpedition)
txtSpedition.Focus()
Exit Sub
End If
insertSendungsVermerk(SendungID, myAviso.AvisoID, "Fahrer muss die Sendung bei '" & txtSpedition.Text.Trim & "' abfertigen - weitergeleitet", 28)
End If
If optSendungInVorbereitung.Checked = True Then
insertSendungsVermerk(SendungID, myAviso.AvisoID, "Sendung '" & txtSendung.Text.Trim & "' in Vorbereitung.", 31)
VermerkeDAL.UpdateSendungVorbereitet(AvisoID, SendungID, VERAG_PROG_ALLGEMEIN.cGlobal.AktiverMitarbeiter.MitarbeiterID, True)
End If
If optKontaktdatenAngefordert.Checked = True Then
insertSendungsVermerk(SendungID, myAviso.AvisoID, "Kontaktdaten bei Sendung '" & txtSendung.Text.Trim & "' angefordert", 36)
End If
' If optSendungVorbereitet.Checked = True Then
'insertSendungsVermerk(SendungID,myAviso.AvisoID, "Sendung '" & txtSendung.Text.Trim & "' Vorbereitung abgeschlossen.", 32)
' VermerkeDAL.UpdateSendungVorbereitet(AvisoID, SendungID, VERAG_PROG_ALLGEMEIN.cglobal.AktiverMitarbeiter.MitarbeiterID, False)
'End If
If optATAangefordert.Checked = True Then
insertSendungsVermerk(SendungID, myAviso.AvisoID, "ATA-Nr. bei Sendung " & txtSendung.Text.Trim & " angefordert", 33)
' ElseIf optATAerhalten.Checked = True Then
' If txtSendung.Text.Trim = "" Then
'showErr(lblErrSendungProbleme)
' txtSendung.Focus()
' Exit Sub
' End If
'insertSendungsVermerk(SendungID,myAviso.AvisoID,"ATA-Nr. bei Sendung " & txtSendung.Text.Trim & " erhalten", 34)
End If
'If optFach.Checked = True Then
' If txtFach.Text.Trim = "" Then
' showErr(lblErrFach)
' txtFach.Focus()
' Exit Sub
' End If
' insertSendungsVermerk(SendungID,myAviso.AvisoID, "Akt liegt im Fach '" & txtFach.Text.Trim & "'", 35)
'End If
If txtDetail.Text <> "" Then
If txtDetail.Text.Length <= 80 Then
insertSendungsVermerk(SendungID, myAviso.AvisoID, txtDetail.Text, 46)
ElseIf txtDetail.Text.Length <= 160 Then
insertSendungsVermerk(SendungID, myAviso.AvisoID, txtDetail.Text.Substring(0, 80), 46)
insertSendungsVermerk(SendungID, myAviso.AvisoID, txtDetail.Text.Substring(80, 80), 46)
ElseIf txtDetail.Text.Length <= 240 Then
insertSendungsVermerk(SendungID, myAviso.AvisoID, txtDetail.Text.Substring(0, 80), 46)
insertSendungsVermerk(SendungID, myAviso.AvisoID, txtDetail.Text.Substring(80, 80), 46)
insertSendungsVermerk(SendungID, myAviso.AvisoID, txtDetail.Text.Substring(160, 80), 46)
End If
End If
'Jetzt wird Fenster geschlossen
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(myAviso.AvisoID)
Me.Close()
End Sub
Sub insertVermerk(Text As String, VermerkCodeId As Integer, Optional Beschreibung As String = "")
'Daten zuweisen und speichern
Dim myVermerk As New cVermerk
myVermerk.VermerkID = 0
myVermerk.AvisoID = myAviso.AvisoID
myVermerk.Datum = Now
myVermerk.Mitarbeiter = cGlobal.AktiverMitarbeiter.Mitarbeiter
myVermerk.MitarbeiterId = cGlobal.AktiverMitarbeiter.MitarbeiterID
myVermerk.Hinweis_Vermerk = Text
myVermerk.VermerkCodeId = VermerkCodeId
myVermerk.VermerkArt = "A"
VermerkeDAL.SpeichernVermerk(myVermerk)
If myVermerk.VermerkCodeId = 18 Then
VermerkeDAL.UpdateLKW(myVermerk.AvisoID, False)
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(myVermerk.AvisoID)
End If
End Sub
Sub showErr(l As Label)
lblErrDokument.Visible = False
' lblErrFach.Visible = False
lblErrGrund.Visible = False
' lblErrSendungProbleme.Visible = False
' lblErrSendungSpedition.Visible = False
'lblErrSendungVorbereitung.Visible = False
lblErrSpedition.Visible = False
l.Visible = True
End Sub
Private Sub txtFreierText_TextChanged(sender As Object, e As EventArgs) Handles txtFreierText.TextChanged
If txtFreierText.Text <> "" Then
optFreierText.Checked = True
End If
End Sub
' Private Sub cboDokumente_SelectedIndexChanged(sender As Object, e As EventArgs)
' cboDokumente.SelectedIndex = CInt(Not cboDokumente.SelectedIndex = 0) + 1
' cbxAuftrag.Focus()
' optDokumente.Checked = True
'End Sub
Private Sub cbxAuftrag_CheckedChanged(sender As Object, e As EventArgs) Handles cbxAuftrag.CheckedChanged, cbxRechnung.CheckedChanged, cbxLS.CheckedChanged,
cbxCMR.CheckedChanged, cbxATR.CheckedChanged, cbxVollmacht.CheckedChanged, cbxSonstDok.CheckedChanged, cbxNichtLeserlich.CheckedChanged
' optDokumente.Checked = True
End Sub
Private Sub SonstChanged(sender As Object, e As EventArgs) Handles txtSonstigesDokumentFehlt.TextChanged
' optDokumente.Checked = True
cbxSonstDok.Checked = (sender.text <> "")
End Sub
Private Sub txtSendungSpedition_TextChanged(sender As Object, e As EventArgs) Handles txtSendungSpedition.TextChanged, txtSpedition.TextChanged
optSpeditionWeitergeleitet.Checked = True
End Sub
' Private Sub txtFach_TextChanged(sender As Object, e As EventArgs)
' optFach.Checked = True
' End Sub
Private Sub txtDetail_TextChanged(sender As Object, e As EventArgs) Handles txtDetail.TextChanged
If txtDetail.Text.Length = 240 Then
showErr(lblErr240Zeichen)
End If
End Sub
Private Sub frmAddSendungsvermerk_Shown(sender As Object, e As EventArgs) Handles Me.Shown
Dim p = System.Windows.Forms.Cursor.Position
If (p.X + Me.Width) > My.Computer.Screen.WorkingArea.Width Then p.X = My.Computer.Screen.WorkingArea.Width - Me.Width
If (p.Y + Me.Height) > My.Computer.Screen.WorkingArea.Height Then p.Y = My.Computer.Screen.WorkingArea.Height - Me.Height
Me.Location = p '.Me.PointToClient(System.Windows.Forms.Cursor.Position)
txtSendung.SelectionLength = 0
cbxAuftrag.Focus()
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Me.Close()
End Sub
End Class