Files
AVISO/Aviso/frmAddAktenvermerkShort.vb

362 lines
17 KiB
VB.net

Imports System.ComponentModel
Imports VERAG_PROG_ALLGEMEIN
Public Class frmAddAktenvermerkShort
Dim AvisoDAL As New cAvisoDAL
Dim myAviso As New cAviso
Dim VermerkeDAL As New cVermerkeDAL
Dim aktChanged As Boolean = False
Dim FUNC As New AvisoStatusFunctions
Dim Neuanlage As Boolean = False
Dim hStatus As Integer
Public AvisoID As Integer = -1
Public Sub New()
InitializeComponent()
Icon = cMeineFunktionenAVISO.GetProgrammIcon
End Sub
Public Sub New(AvisoID)
InitializeComponent()
Me.AvisoID = AvisoID
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
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
For Each c In Me.Controls
If c.GetType.Name.ToString = "RadioButton" Then
AddHandler DirectCast(c, RadioButton).CheckedChanged, AddressOf selectionChanged
End If
Next
optKeineAuswahl.Checked = True
'Daten zu Aviso werden geladen
myAviso = AvisoDAL.LesenAviso(AvisoID, "")
'Werte(zuweisen)
optKeineAuswahl.Checked = True
btnVorgeschrieben.Enabled = VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("STATUS_Vorgeschrieben", Me.FindForm)
btnVorbereitet.Enabled = VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("STATUS_VorbQS", Me.FindForm)
btnErfasst.Enabled = VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("STATUS_Erfasst", Me.FindForm)
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Dim de = SQL.getValueTxtBySql("SELECT COUNT(*) FROM [Vermerke] where avisoid=" & AvisoID & " and VermerkeCode=17", "AVISO") -
SQL.getValueTxtBySql("SELECT COUNT(*) FROM [Vermerke] where avisoid=" & AvisoID & " and VermerkeCode=18", "AVISO")
Dim dedigital = SQL.getValueTxtBySql("SELECT COUNT(*) FROM [Vermerke] where avisoid=" & AvisoID & " and VermerkeCode=82", "AVISO") -
SQL.getValueTxtBySql("SELECT COUNT(*) FROM [Vermerke] where avisoid=" & AvisoID & " and VermerkeCode=83", "AVISO")
Dim at = SQL.getValueTxtBySql("SELECT COUNT(*) FROM [Vermerke] where avisoid=" & AvisoID & " and VermerkeCode=19", "AVISO") -
SQL.getValueTxtBySql("SELECT COUNT(*) FROM [Vermerke] where avisoid=" & AvisoID & " and VermerkeCode=20", "AVISO")
If at > 0 Then
btnZollATEingereicht.BackColor = Color.Green
btnZollATEingereicht.ForeColor = Color.White
btnZollATEingereicht.Tag = "SWITCH"
btnZollATEingereicht.FlatAppearance.BorderColor = Color.Black
btnZollATEingereicht.Text = "Zoll AT " & vbNewLine & "fertig"
End If
If de > 0 Then
btnZollDEEingereicht.BackColor = Color.Green
btnZollDEEingereicht.ForeColor = Color.White
btnZollDEEingereicht.Tag = "SWITCH"
btnZollDEEingereicht.FlatAppearance.BorderColor = Color.Black
btnZollDEEingereicht.Text = "Zoll DE " & vbNewLine & "fertig"
End If
If dedigital > 0 Then
btnDEZollDIGITAL.BackColor = Color.Green
btnDEZollDIGITAL.ForeColor = Color.White
btnDEZollDIGITAL.Tag = "SWITCH"
btnDEZollDIGITAL.FlatAppearance.BorderColor = Color.Black
btnDEZollDIGITAL.Text = "Zoll DE " & vbNewLine & "fertig"
End If
btnLKWFertig.Text = If(myAviso.LKW_fertig, "LKW nicht fertig", "LKW fertig")
txtFreigabeInfo.Text = If(myAviso.Freigabe_Info, "")
cntxt.Items.Clear()
Dim dt = SQL.loadDgvBySql("SELECT [grz_Grenzstelle],grz_BezeichnungCBO FROM [AVISO].[dbo].[tblGrenzstelle] where grz_Cluster='" & VERAG_PROG_ALLGEMEIN.cAllgemein.CLUSTER & "'", "AVISO")
If dt IsNot Nothing Then
dt.Rows.Add({"???", "??? - andere"})
For Each r As DataRow In dt.Rows
Dim it As New ToolStripMenuItem
it.Text = r("grz_BezeichnungCBO").ToString
it.Tag = r("grz_Grenzstelle").ToString
cntxt.Items.Add(it)
AddHandler it.Click, Sub()
AvisoStatusFunctions.ummeldenAVISO(myAviso, it.Tag.ToString)
Me.Close()
End Sub
Next
End If
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 btnAktUebernehmen Then enabledTmp = True
If c Is btnLKWUmmelden Then enabledTmp = True
If c Is btnZollDEEingereicht Then enabledTmp = True
If c Is txtSonstiges Then enabledTmp = True
If c Is btnSonstiges Then enabledTmp = True
If c Is btnAnkunft Then enabledTmp = True
If c Is btnFreigabe Then enabledTmp = True
If c Is btnLKWFertig Then enabledTmp = True
If c Is btnLKWStandzeitWE Then enabledTmp = True
If c Is btnLKWStandzeitFeierteage Then enabledTmp = True
If c Is btnClose Then enabledTmp = True
c.Enabled = enabledTmp
Next
End If
End Sub
Private Sub btn_Click(sender As Object, e As EventArgs) Handles btnSpaetAvisiert.Click, btnLKWStandzeitWE.Click, btnLKWStandzeitFeierteage.Click, btnZollATEingereicht.Click,
btnZollDEEingereicht.Click, btnSBG.Click, btnNKD.Click, btnWAI.Click, btnSFD.Click, btnQS.Click, btnErfasst.Click, btnVorbereitet.Click, btnVorgeschrieben.Click, btnAnkunft.Click,
btnFreigabe.Click, btnNichtEingetroffen.Click, btnNichtAvisiert.Click, btnAktUebernehmen.Click, btnLKWFertig.Click, btnSonstiges.Click, btnDispoangefordert.Click, btnDEZollDIGITAL.Click, btnLKWumgemeldet.Click
If sender Is Nothing Then
MsgBox("Es wurde kein Vermerk ausgewählt. Der Datensatz kann nicht gespeichert werden.", vbInformation)
optKeineAuswahl.Focus()
Exit Sub
End If
Dim tmpSndId = -1
'Plausibilität prüfen
If sender Is btnNichtAvisiert Then
insertVermerk("Aviso nicht eingelangt", 15)
ElseIf sender Is btnSpaetAvisiert Then
insertVermerk("Aviso eingelangt kurz vor Eintreffen des LKWs - keine Vorbereitung möglich", 16)
ElseIf sender Is btnZollDEEingereicht Then
If sender.tag = "SWITCH" Then
insertVermerk("DE Zoll fertig", 18)
If myAviso.LKW_fertig Then VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.LKWFertig(myAviso.AvisoID) : frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
Else
insertVermerk("DE Zoll eingereicht", 17)
'If vbYes = MsgBox("Fahrer-Anweisung ""zum Zollamt gehen"" ausdrucken?", vbYesNo) Then
' Try
' Dim path = SDL.FormularManagerNEU.zumZOLL_AVISO(myAviso, "DE")
' If path <> "" Then VERAG_PROG_ALLGEMEIN.cFormularManager.PrintViaGS(path, (New System.Drawing.Printing.PrinterSettings).PrinterName)
' Catch ex As Exception : MsgBox(ex.Message & ex.StackTrace) : End Try
'End If
End If
ElseIf sender Is btnDEZollDIGITAL Then
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
If sender.tag = "SWITCH" Then
insertVermerk("DE Zoll (DIGITAL) fertig", 83)
If myAviso.LKW_fertig Then VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.LKWFertig(myAviso.AvisoID) : frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
SQL.doSQL("UPDATE AVISO SET ZOLLDigitalEingereicht=0, LKW_fertig=1 where avisoid=" & AvisoID, "AVISO")
AvisoStatusFunctions.printFinish(myAviso)
Else
insertVermerk("DE Zoll DIGITAL eingereicht", 82)
SQL.doSQL("UPDATE AVISO SET ZOLLDigitalEingereicht=1 where avisoid=" & AvisoID, "AVISO")
End If
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
ElseIf sender Is btnZollATEingereicht Then
If sender.tag = "SWITCH" Then
insertVermerk("AT Zoll fertig", 20)
If myAviso.LKW_fertig Then VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.LKWFertig(myAviso.AvisoID) : frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
Else
If VERAG_PROG_ALLGEMEIN.cAllgemein.PARAMS.GET_PARAMETER_VALUE_BOOL("AT_FISKAL_CHECKLISTE") Then
'Sendungen durchlaufen und die Fiskal - Checkliste bei AT Fiskal anzeigen (je SND)
Dim SENDUNG_LIST As New List(Of VERAG_PROG_ALLGEMEIN.cSendungen)
VERAG_PROG_ALLGEMEIN.cSendungen.LOAD_LIST(SENDUNG_LIST, 0, AvisoID) 'LÄDT alle SENDUNGSDATEN
If SENDUNG_LIST IsNot Nothing Then
For Each SND In SENDUNG_LIST
If SND.tblSnd_Abfertigungsart_ID = 26 Then
Dim f As New frmATZollEingereichtSetzen(myAviso, SND)
If f.ShowDialog() = DialogResult.OK Then
'Passt scho..
Else
Exit Sub ' --> YOU'RE OUT!
End If
End If
Next
End If
End If
insertVermerk("AT Zoll eingereicht", 19)
'If vbYes = MsgBox("Fahrer-Anweisung ""zum Zollamt gehen"" ausdrucken?", vbYesNo) Then
' Try
' Dim path = SDL.FormularManagerNEU.zumZOLL_AVISO(myAviso, "AT")
' If path <> "" Then VERAG_PROG_ALLGEMEIN.cFormularManager.PrintViaGS(path, (New System.Drawing.Printing.PrinterSettings).PrinterName)
' Catch ex As Exception : MsgBox(ex.Message & ex.StackTrace) : End Try
'End If
End If
ElseIf sender Is btnLKWStandzeitWE Then
insertVermerk("LKW Standzeit Wochenende", 21)
ElseIf sender Is btnLKWStandzeitFeierteage Then
insertVermerk("LKW Standzeit Feiertag(e)", 22)
ElseIf sender Is btnSBG Then
insertVermerk("Nach SBG weitergegeben", 38)
VermerkeDAL.UpdateGrenzstelle(myAviso.AvisoID, "SBG")
ElseIf sender Is btnWAI Then
insertVermerk("Nach WAI weitergegeben", 39)
VermerkeDAL.UpdateGrenzstelle(myAviso.AvisoID, "WAI")
ElseIf sender Is btnNKD Then
insertVermerk("Nach NKD weitergegeben", 40)
ElseIf sender Is btnLKWumgemeldet Then
insertVermerk("LKW umgemeldet", 94)
ElseIf sender Is btnSFD Then
insertVermerk("Nach Spielfeld (Lex) weitergegeben", 41)
ElseIf sender Is btnQS Then
insertVermerk("Akt wurde in die QS-Abteilung gegeben", 45)
ElseIf sender Is btnErfasst Then
If FUNC.setErfasst(AvisoID) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End If
ElseIf sender Is btnVorbereitet Then
If FUNC.setVorbereitet(AvisoID) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End If
ElseIf sender Is btnVorgeschrieben Then
If FUNC.setVorgeschreiben(AvisoID) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End If
ElseIf sender Is btnAnkunft Then
If FUNC.setAnkunft(AvisoID) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End If
ElseIf sender Is btnFreigabe Then
If FUNC.setFreigabe(AvisoID, Me) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End If
ElseIf sender Is btnNichtEingetroffen Then
If FUNC.setNichtEingeftroffen(AvisoID) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End If
ElseIf sender Is btnAktUebernehmen Then
If FUNC.AktUebernehmen(AvisoID) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End If
ElseIf sender Is btnLKWFertig Then
If VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.LKWFertig(AvisoID) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End If
ElseIf sender Is btnSonstiges Then
insertVermerk(txtSonstiges.Text, 46)
ElseIf sender Is btnDispoangefordert Then
insertVermerk("Dispoliste angefordert", 57)
End If
'Jetzt wird Fenster geschlossen
' frmMain.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
VermerkeDAL.SpeichernVermerk(myVermerk)
frmHauptfenster.Details_anzeigen(AvisoID)
End Sub
Private Sub Button1_Click_1(sender As Object, e As EventArgs) Handles btnClose.Click
Me.Close()
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs)
End Sub
Private Sub frmAddAktenvermerkShort_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)
End Sub
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
Dim frmInsertVermerkFach As New frmInsertVermerkFach(AvisoID)
frmInsertVermerkFach.ShowDialog()
frmHauptfenster.Details_anzeigen(AvisoID)
Me.Close()
End Sub
Private Sub frmAddAktenvermerkShort_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
Try
myAviso.UPDATE_FreigabeInfo(txtFreigabeInfo.Text)
Catch ex As Exception
End Try
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles btnLKWUmmelden.Click
cntxt.Show(Cursor.Position)
End Sub
End Class