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() If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("WARENORT", "AVISO") Then For Each c As Control In Me.Controls Dim enabledTmp = False If c Is btnCLose Then enabledTmp = True If c Is optFremd_SendungAvisiert Then enabledTmp = True If c Is optFremd_ATB Then enabledTmp = True If c Is optATAangefordert Then enabledTmp = True If c Is txtDetail Then enabledTmp = True If c Is btnOK Then enabledTmp = True c.Enabled = enabledTmp Next End If 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 insertVermerke() Then 'Jetzt wird Fenster geschlossen frmHauptfenster.avisoAktualisierenAktiveIdBehalten(myAviso.AvisoID) Me.Close() End If End Sub Function insertVermerke() As Boolean If txtDetail.Text <> "" Then If txtDetail.Text.Length > 240 Then showErr(lblErr240Zeichen) txtDetail.Focus() Return False End If End If 'Plausibilität prüfen If optFreierText.Checked Then If txtFreierText.Text.Trim = "" Then showErr(lblErrGrund) txtFreierText.Focus() Return False End If insertSendungsVermerk(SendungID, myAviso.AvisoID, txtFreierText.Text.Trim & " - offen", 101) 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 bei Sendung '" & txtSendung.Text.Trim & "' - angefordert", 11) If cbxPackliste.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "Packliste bei Sendung '" & txtSendung.Text.Trim & "' - angefordert", 90) If cbxRgBest.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "Rechnungsbestätigung bei Sendung '" & txtSendung.Text.Trim & "' - angefordert", 55) If optFrachtkostenAngefordert.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "Frachtkosten bei Sendung '" & txtSendung.Text.Trim & "' - angefordert", 74) If optAbsenderbestätigung.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "Absenderbestätigung bei Sendung '" & txtSendung.Text.Trim & "' - angefordert", 76) If optKundeNichtErreichbar.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "Kunde bei Sendung '" & txtSendung.Text.Trim & "' nicht erreichbar", 70) If optFahrerKeinATR.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "Fahrer ohne A.TR bei Sendung '" & txtSendung.Text.Trim & "'", 71) If optFremd_ATB.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "ATB von Fremdeinsteller erhalten bei Sendung '" & txtSendung.Text.Trim & "' ", 72) If optFremd_SendungAvisiert.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "Sendung '" & txtSendung.Text.Trim & "' an Fremdeinsteller avisiert", 73) ' If optSndUmmelden.Checked Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "Sendung '" & txtSendung.Text.Trim & "' umgemeldet", 94) 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() : Return False 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() Return False 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/ATC-Nr. bei Sendung " & txtSendung.Text.Trim & " - angefordert", 33) ' ElseIf optATAerhalten.Checked = True Then ' If txtSendung.Text.Trim = "" Then 'showErr(lblErrSendungProbleme) ' txtSendung.Focus() ' Return False ' End If 'insertSendungsVermerk(SendungID,myAviso.AvisoID,"ATA-Nr. bei Sendung " & txtSendung.Text.Trim & " erhalten", 34) End If 'If cbxDispoliste.Checked = True Then insertSendungsVermerk(SendungID, myAviso.AvisoID, "Dispoliste bei " & txtSendung.Text.Trim & " angefordert", 57) 'If optFach.Checked = True Then ' If txtFach.Text.Trim = "" Then ' showErr(lblErrFach) ' txtFach.Focus() ' Return False ' 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 Return True End Function 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, cbxPackliste.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 = 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.Cursor.Position) txtSendung.SelectionLength = 0 cbxAuftrag.Focus() End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles btnCLose.Click Me.Close() End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) If insertVermerke() Then VERAG_PROG_ALLGEMEIN.cAvisoBenachrichtigungen.INSERT_BENACHRICHTIGUNG(myAviso.AvisoID, SendungID, 1, "T", 13, , 1) insertSendungsVermerk(SendungID, myAviso.AvisoID, "In die Neukunden-Abteilung gegeben.", 46) frmHauptfenster.avisoAktualisierenAktiveIdBehalten(myAviso.AvisoID) Me.Close() End If End Sub End Class