Imports VERAG_PROG_ALLGEMEIN
Imports VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO
Imports System.IO
'Imports Gemeinsames.cDatenbank
Imports System.Drawing
Imports Microsoft.Office.Interop
Public Class usrcntlAktDetails
Dim VermerkeDAL As New cVermerkeDAL
Public aktiv As DateTime = Now
Dim sendAktiv = True
Private AvisoDAL As New cAvisoDAL
Private Standorte As New cStandorteDAL
Private locZeilen As Integer = -1
Private Anzahl As Integer
Private Grid_aktiv As Boolean = False
'Private Details_aktiv As Boolean = False
Private Zähler As Long = 0
Private hMerkZeit As Date
Private hMerkZeit_MeineAviso As Date
Dim FUNC As New AvisoStatusFunctions
Private Paketdienste_EXE As String
Private hAdresse As String
Private hCC As String
Private SucheStandort As String = ""
Private GridAnzeigen As Integer = 0
Private GridZeichnen As Integer = 0
Dim lkwbackcolor As Color = Color.FromArgb(220, 220, 220)
Dim lkwbackcolorSel As Color = Color.FromArgb(200, 200, 200)
Dim VermerkeAktuelleAvisoId As Integer = -1
Private infotxt As String = ""
Public opensendungsDetails As Boolean = False
Public AvisoID As Integer = -1
Dim loaded As Boolean = False
Dim FraechterKdNr = -1
Dim AvisiererKdNr = -1
Dim WithEvents timer As New Timer
Dim WithEvents timerAktUebernommen As New Timer
' Dim WithEvents reloadTimer As New Timer
' Dim WithEvents timerDetails As New Timer
Dim AVISO As cAviso = Nothing
Dim WithEvents timerSendRows As New Timer
Public Sub New()
InitializeComponent()
End Sub
Public Event Shown As EventHandler
Private wasShown As Boolean = False
Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs)
MyBase.OnPaint(e)
If Not wasShown Then
wasShown = True
RaiseEvent Shown(Me, EventArgs.Empty)
End If
End Sub
Dim ADMIN As New cADMIN
Sub New(AvisoID)
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
Me.AvisoID = AvisoID
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
End Sub
Public Sub reload(id)
loaded = False
pnlOptionen.Visible = False
pnlDetailsRechts.Enabled = False
pnlDetailsRechts.Cursor = Cursors.WaitCursor
AvisoID = id
Details_anzeigen()
pnlDetailsRechts.Enabled = True
pnlDetailsRechts.Cursor = Cursors.Default
loaded = True
Vermerke_anzeigen()
'___________
If VERAG_PROG_ALLGEMEIN.cAllgemein.ABTEILUNG <> "QS" Then
If VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG <> "" Then
cboGrenzstelle.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG
End If
End If
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "IMEX" : btnLkwBeleg.Visible = False
End Select
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG
Case "WAI"
lblFiskAT.Visible = False
txtSndFiskalAT.Visible = False
Case "NKD"
lblFiskde.Visible = False
txtSndFiskalDE.Visible = False
Case "SUB"
txtSndFremd.Visible = True
lblSndFremd.Visible = True
End Select
txtSendungen.Text = "1"
txtSndFiskalAT.Text = "0"
txtSndFiskalDE.Text = "0"
lblSendungsanzahl.Visible = False
'___________
If dgvSendungen.RowCount = 0 Then
pnlAlt.Visible = True
Else
pnlAlt.Visible = False
timer.Enabled = True
End If
End Sub
'Private Sub Me_shown(sender As Object, e As EventArgs) Handles Me.Shown
' MsgBox("shown")
' End Sub
Private Sub usrcntlAktDetails_Load(sender As Object, e As EventArgs) Handles Me.Load
timerAktUebernommen.Interval = 1500
timer.Interval = 100
reload(AvisoID)
If My.Computer.Screen.WorkingArea.Width < 1300 Or VERAG_PROG_ALLGEMEIN.cAllgemein.dpi > 96 Then
'' btnAnkunft.AutoSize = False
' btnErfasst.AutoSize = False
' btnVorbereitet.AutoSize = False
' btnVorgeschrieben.AutoSize = False
' btnFreigabe.AutoSize = False
btnAnkunft.Text = "ANKUNFT."
btnErfasst.Text = "ERFASST"
btnVorbereitet.Text = "VORB.QS"
btnVorgeschrieben.Text = "VORGESCHR."
btnFreigabe.Text = "FREIGABE"
btnAnkunft.Height = 29
btnErfasst.Height = 29
btnVorbereitet.Height = 29
btnVorgeschrieben.Height = 29
btnFreigabe.Height = 29
btnAnkunft.Width = 100
btnErfasst.Width = 100
btnVorbereitet.Width = 100
btnVorgeschrieben.Width = 100
btnFreigabe.Width = 100
'btnVorgeschrieben.Text = "VORGESCHR."
'btnVorgeschrieben.Text = "VORGESCHR."
End If
If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("STATUS_Vorgeschrieben", Me.FindForm) Then
lblTimeVorgeschreiben.Visible = False
btnVorgeschrieben.Visible = False
Else
lblTimeVorgeschreiben.Visible = True
btnVorgeschrieben.Visible = True
End If
If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("STATUS_VorbQS", Me.FindForm) Then
lblTimeVorbereitet.Visible = False
btnVorbereitet.Visible = False
Else
lblTimeVorbereitet.Visible = True
btnVorbereitet.Visible = True
End If
If VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG = "WAI" Then
Button8.Text = "Gest.Liste"
End If
End Sub
Sub setVisible(b As Control, v As Boolean) ' damit die Anzeige nicht flackert
If Not b.Visible = v Then
b.Visible = v
'b.Enabled = v
End If
End Sub
Private Sub Details_anzeigen()
aktiv = Now 'Damit nicht neu geladedt wird (frmHauptfenster -> timer.tick)
If AvisoID <= 0 Then Exit Sub
'Dim Aviso As New cAviso
AVISO = AvisoDAL.LesenAviso(AvisoID, "")
If AVISO Is Nothing Then Exit Sub
lblIMEX.Text = AVISO.ImEx
lblIMEX.Visible = (AVISO.ImEx <> "")
FraechterKdNr = IIf(IsNumeric(AVISO.Frächter_KdNr), AVISO.Frächter_KdNr, -1)
AvisiererKdNr = IIf(IsNumeric(AVISO.Auftraggeber_KdNr), AVISO.Auftraggeber_KdNr, -1)
txtFrächter.Cursor = IIf(FraechterKdNr > 0, Cursors.Hand, Cursors.Default)
txtAuftraggeber.Cursor = IIf(AvisiererKdNr > 0, Cursors.Hand, Cursors.Default)
txtFrächter.Text = AVISO.Frächter
txtAuftraggeber.Text = AVISO.Auftraggeber
txtAktMA.Text = AVISO.letzterMitarbeiter
txtLKWID.Text = AVISO.AvisoID
' cbxHandling.Checked = Aviso.Handling
cbxHandling.Visible = AVISO.Handling
' cbxSammelakt.Checked = Aviso.Sammelakt
' lblHinweis.Visible = (Aviso.AvisoTVHinweis <> "")
txtLKW_Nr.Text = AVISO.LKW_Nr
lblTimeErfasst.Text = formatdate(AVISO.Datum)
lblTimeAnkunft.Text = formatdate(AVISO.Ankunft)
lblTimeFreigabe.Text = formatdate(AVISO.Freigabe)
lblTimeVorbereitet.Text = formatdate(AVISO.Vorbereitet)
lblTimeVorgeschreiben.Text = formatdate(AVISO.Vorgeschrieben)
Vermerke_anzeigen()
initDgvSendungen()
dgvSendungen.ClearSelection()
'Button6.Focus()
' pnlDetailsRechts.Visible = True
' pnlDetailsRechts.Cursor = Cursors.Default
' pnlDetailsRechts.PerformLayout()
'pnlDetailsRechts.la
' pnlDetailsRechts.Width = SplitContainer1.Width
' pnlDetailsRechts.Height = SplitContainer1.Height
' btnLkwBeleg.Visible = False
btnAktAbschliessen.Visible = False
btnAktAbschliessen.BackColor = Color.DarkGreen
Select Case AVISO.Status
Case VERAG_PROG_ALLGEMEIN.cGlobal.Status_Ankunft
lblStatus.Text = "ANKUNFT" : pnlStatus.BackColor = btnAnkunft.BackColor
btnAktAbschliessen.Visible = False
Case VERAG_PROG_ALLGEMEIN.cGlobal.Status_Erfasst
lblStatus.Text = "ERFASST" : pnlStatus.BackColor = btnErfasst.BackColor
btnAktAbschliessen.Visible = True
btnAktAbschliessen.BackColor = Color.Gray
Case VERAG_PROG_ALLGEMEIN.cGlobal.Status_Vorbereitet
lblStatus.Text = "VORBEREITET - QS" : pnlStatus.BackColor = btnVorbereitet.BackColor
btnAktAbschliessen.Visible = True
btnAktAbschliessen.BackColor = Color.Gray
Case VERAG_PROG_ALLGEMEIN.cGlobal.Status_Vorgeschrieben
lblStatus.Text = "VORGESCHRIEBEN" : pnlStatus.BackColor = btnVorgeschrieben.BackColor
btnAktAbschliessen.Visible = True
btnAktAbschliessen.BackColor = Color.Gray
Case VERAG_PROG_ALLGEMEIN.cGlobal.Status_Freigegeben
lblStatus.Text = "FREIGABE" : pnlStatus.BackColor = btnFreigabe.BackColor
btnAktAbschliessen.Visible = True
' If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("AUTONACHERFASSUNG", Me.FindForm) Then
'btnLkwBeleg.Visible = True
' End If
'For Each s In sendun
'If alle spedbuchOK
'visible
Case VERAG_PROG_ALLGEMEIN.cGlobal.Status_NichtEingetroffen
lblStatus.Text = "NICHT EINGETR." : pnlStatus.BackColor = Color.Gray 'btnNichtEingetroffen.BackColor
End Select
If AVISO.Abgeschlossen Then
pnlAbgeschlossen.Visible = True
btnAktAbschliessen.Visible = False
' btnLkwBeleg.Visible = False
Else
pnlAbgeschlossen.Visible = False
' btnAktAbschliessen.Visible = True
End If
'Kann nur bei Freigabe angezeigt werden
'If AVISO.Status <> VERAG_PROG_ALLGEMEIN.cglobal.Status_Freigegeben Then
' btnAktAbschliessen.Visible = False
'End If
End Sub
Function formatdate(s) As String
If s IsNot Nothing AndAlso IsDate(s) AndAlso CDate(s) > LeerDatum Then
If CDate(s).ToShortDateString = Now.ToShortDateString Then
Return "heute, " & CDate(s).ToShortTimeString & ""
End If
Return "" & CDate(s).ToString("dd.MM.") & ", " & CDate(s).ToShortTimeString & ""
End If
Return ""
End Function
Private Sub gridVermerke_SpaltenFestlegen()
If gridVermerke.RowCount = 0 Then gridVermerke.Columns.Clear() : Exit Sub
With gridVermerke
' " SELECT TOP 1000 [VermerkID],[AvisoID], [SendungID],[VermerkeCode], [Datum],[MitarbeiterId],tblSendungen.tblSnd_PosUnterNr," &
' " isnull(VermerkeCodes.Bezeichnung,[Hinweis_Vermerk])as [Hinweis_Vermerk], tblSendungen.tblSnd_Auftraggeber ,[Mitarbeiter]" &
.RowTemplate.MinimumHeight = 20
.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells
.Columns("VermerkID").Visible = False 'VermerkID nicht anzeigen
.Columns("AvisoID").Visible = False 'AvisoID nicht anzeigen
.Columns("SendungID").Visible = False 'VermerkCode nicht anzeigen
.Columns("VermerkeCode").Visible = False 'VermerkeCode nicht anzeigen
.Columns("MitarbeiterId").Visible = False 'MitarbeiterId nicht anzeigen
.Columns("Hinweis_Vermerk").Visible = False 'Hinweis_Vermerk nicht anzeigen
.Columns("tblSnd_Empfaenger").Visible = False 'tblSnd_Empfaengernicht anzeigen
.Columns("Datum").Width = 125 '110
.Columns("Datum").HeaderText = "Datum"
.Columns("Datum").DefaultCellStyle.Format = "dd.MM. HH:mm (ddd)"
.Columns("Hinweis_Vermerk_Anzeige").MinimumWidth = 150
.Columns("Hinweis_Vermerk_Anzeige").HeaderText = "Hinweistext zu Vermerk"
.Columns("Hinweis_Vermerk_Anzeige").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("tblSnd_PosUnterNr").Width = 50
.Columns("tblSnd_PosUnterNr").HeaderText = "Send.Nr"
.Columns("tblSnd_PosUnterNr").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
.Columns("Mitarbeiter").MinimumWidth = 50
.Columns("Mitarbeiter").HeaderText = "Mitarbeiter"
.Columns("Hinweis_Vermerk_Anzeige").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
' .Columns.Add(New DataGridViewButtonColumn)
.Columns("VermerkeOptions").Width = 120
.Columns("VermerkeOptions").HeaderText = "Optionen"
.Columns("VermerkeOptions").ReadOnly = True
End With
End Sub
Sub dgvCellToCbo2(dgv As DataGridView, columnName As String, HeaderText As String, DataPropertyName As String, sqlstr As String, Optional conn_art As String = "SDL", Optional dropdownwidth As Integer = -1, Optional simpleStyle As Boolean = False)
Dim comboBoxColumn As New DataGridViewComboBoxColumn
Dim SQL As New SDL.SQL
Dim columnIndex = dgv.Columns(columnName).Index
With comboBoxColumn
.HeaderText = HeaderText
.DataPropertyName = DataPropertyName
.Name = columnName
.DataSource = SQL.loadDgvBySql(sqlstr, conn_art)
.ValueMember = .DataSource.Columns(0).ColumnName
.DisplayMember = .DataSource.Columns(1).ColumnName
.FlatStyle = FlatStyle.Flat
If simpleStyle Then .DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing
If dropdownwidth > 0 Then .DropDownWidth = dropdownwidth
End With
dgv.Columns.RemoveAt(columnIndex)
dgv.Columns.Insert(columnIndex, comboBoxColumn)
End Sub
Private Sub initDgvSendungen()
With dgvSendungen
.Columns.Clear()
.DataSource = AvisoDAL.loadDataTableBySQL(" SELECT /*rank() OVER (ORDER BY tblSnd_PosUnterNr) as */ tblSnd_PosUnterNr, [tblSnd_SendungID],[tblSnd_AvisoID],[tblSnd_Abfertigungsart_ID],[tblSnd_EmpfaengerKdNr],[tblSnd_Empfaenger],isnull(cast(FilialenNr as varchar (4)),'')+'/' + isnull(cast(AbfertigungsNr as varchar (8)),'') as AbfertigungsNr,(SELECT (CASE WHEN Count(*)>0 THEN cast(COUNT(*) as varchar(4)) ELSE '-' END) FROM Vermerke WHERE AvisoID=" & AvisoID & " AND SendungID=tblSnd_SendungID) as Vermerke, tblSnd_SpeditionsbuchEingetragen,tblSnd_Fremdspedition,tblSnd_FremdspeditionText,isnull(tblSnd_QS_MA,-1) as tblSnd_QS_MA" &
" FROM tblSendungen WHERE tblSnd_AvisoId=" & AvisoID & " ORDER BY tblSnd_PosUnterNr") 'LEFT JOIN tblQS_Abfertigungsarten ON [tblSnd_Abfertigungsart_ID]=QS_Abfertigungsart_ID
' If .RowCount = 0 Then .Columns.Clear() : Exit Sub
.RowTemplate.MinimumHeight = 20
.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells
.Columns("tblSnd_SendungID").Visible = False 'VermerkID nicht anzeigen
.Columns("tblSnd_AvisoID").Visible = False 'AvisoID nicht anzeigen
.Columns("tblSnd_EmpfaengerKdNr").Visible = False 'AvisoID nicht anzeigen
.Columns("tblSnd_Abfertigungsart_ID").Visible = False
.Columns("tblSnd_SpeditionsbuchEingetragen").Visible = False
.Columns("tblSnd_QS_MA").Visible = False
.Columns("tblSnd_Fremdspedition").Visible = False
.Columns("tblSnd_FremdspeditionText").Visible = False
.Columns("tblSnd_PosUnterNr").Width = 20
.Columns("tblSnd_PosUnterNr").HeaderText = "Nr."
.Columns("tblSnd_PosUnterNr").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
' .Columns("QS_Abfertigungsart_Bezeichnung").Width = 130
' .Columns("QS_Abfertigungsart_Bezeichnung").HeaderText = "Art"
.Columns("tblSnd_Empfaenger").MinimumWidth = 150
.Columns("tblSnd_Empfaenger").HeaderText = "Empfaenger"
.Columns("tblSnd_Empfaenger").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
' .Columns("Vermerke_Anzahl").Width = 60
' .Columns("Vermerke_Anzahl").HeaderText = "Vermerke"
' .Columns("Vermerke_Anzahl").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
.Columns("AbfertigungsNr").Width = 110
.Columns("AbfertigungsNr").HeaderText = "Pos-Nr."
.Columns("AbfertigungsNr").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft
.Columns("Vermerke").Width = 45
.Columns("Vermerke").HeaderText = "Verm."
Dim c As DataGridViewImageColumn
'tblSnd_Empfaenger()
c = New DataGridViewImageColumn
c.Name = "SendungBearbeiten"
c.Image = My.Resources.stift2 : c.ImageLayout = DataGridViewImageCellLayout.Zoom
c.Width = 25 : c.DefaultCellStyle.Padding = New Padding(2) : c.DefaultCellStyle.BackColor = Color.White
c.ToolTipText = "Sendungsdetails bearbeiten"
.Columns.Add(c)
c = New DataGridViewImageColumn
c.Name = "KundeAnzeigen"
c.Image = My.Resources.personInaktiv : c.ImageLayout = DataGridViewImageCellLayout.Zoom
c.Width = 25 : c.DefaultCellStyle.Padding = New Padding(2) : c.DefaultCellStyle.BackColor = Color.White
c.DefaultCellStyle.Tag = "Empfänger: Kundendaten anzeigen"
.Columns.Add(c)
c = New DataGridViewImageColumn
c.Name = "SpeditionsbuchEintragen"
c.Image = My.Resources.speditionsbuchInaktiv : c.ImageLayout = DataGridViewImageCellLayout.Zoom
c.Width = 25 : c.DefaultCellStyle.Padding = New Padding(2) : c.DefaultCellStyle.BackColor = Color.White
c.ToolTipText = "Speditionsbuch"
.Columns.Add(c)
c = New DataGridViewImageColumn
c.Name = "VermerkEintragen"
c.Image = My.Resources.vermerkBtn : c.ImageLayout = DataGridViewImageCellLayout.Zoom
c.Width = 25 : c.DefaultCellStyle.Padding = New Padding(2) : c.DefaultCellStyle.BackColor = Color.White
c.ToolTipText = "Vermerk eintragen"
.Columns.Add(c)
If VERAG_PROG_ALLGEMEIN.cAllgemein.ABTEILUNG = "QS" Then
c = New DataGridViewImageColumn
c.Name = "Abgeklaert"
c.Image = My.Resources.abgeklaertInaktiv : c.ImageLayout = DataGridViewImageCellLayout.Zoom
c.Width = 25 : c.DefaultCellStyle.Padding = New Padding(2) : c.DefaultCellStyle.BackColor = Color.White
c.ToolTipText = "Durch mich abgeklärt"
.Columns.Add(c)
End If
Dim t = New DataGridViewTextBoxColumn
t.Name = "Abfertigungsart"
t.HeaderText = "Abfertigungsart"
t.Width = 100 : t.DefaultCellStyle.Padding = New Padding(2) : t.DefaultCellStyle.BackColor = Color.White
't.ToolTipText = ""
.Columns.Insert(3, t)
timerSendRows.Interval = 100
timerSendRows.Enabled = True
End With
End Sub
Private Sub Vermerke_anzeigen(Optional rowindex As Integer = -1)
If Not loaded Then Exit Sub
aktiv = Now 'Damit nicht neu geladedt wird (frmHauptfenster -> timer.tick)
gridVermerke.Columns.Clear()
lblInfoAviso.Visible = False
infotxt = ""
' If setAkive_AuswahlID() = -1 Then Exit Sub
If AvisoID <= 0 Then Exit Sub
'Hier werden die passenden Vermerke zum Aviso angezeigt
Dim sendwhere = ""
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA <> "ATILLA" Then
If gridVermerke.Columns("tblSnd_PosUnterNr") IsNot Nothing Then gridVermerke.Columns("tblSnd_PosUnterNr").Visible = False
Select Case tbcntlVermerke.SelectedIndex
Case 0
dgvSendungen.ClearSelection()
Case 1
' If dgvSendungen.SelectedRows.Count > 0 Then
sendwhere = " AND VermerkArt='A' "
' End If
Case 2
If dgvSendungen.SelectedRows.Count > 0 Then
sendwhere = " AND VermerkArt='S' AND SendungID=" & dgvSendungen.SelectedRows(0).Cells("tblSnd_SendungID").Value
Else
sendwhere = " AND 1=0 " ' 1=0, damit keine Zeile angezeigt wird, wenn keine Sendung ausgewählt
End If
If gridVermerke.Columns("tblSnd_PosUnterNr") IsNot Nothing Then gridVermerke.Columns("tblSnd_PosUnterNr").Visible = True
End Select
End If
' Dim hSQL As String = "SELECT [VermerkID],[AvisoID],[Datum],[Mitarbeiter],[Hinweis_Vermerk],[VermerkeCode],[MitarbeiterId] FROM Vermerke WHERE AvisoID = " & AvisoID & " " & sendwhere & " ORDER BY Datum DESC"
Dim hSQL As String = " SELECT TOP 1000 [VermerkID],[AvisoID], [SendungID],[VermerkeCode], [Datum],[MitarbeiterId],tblSendungen.tblSnd_PosUnterNr," &
" CASE WHEN VermerkeCode IS NULL OR VermerkeCode IN (25,28,29,30,35,46,47) THEN Hinweis_Vermerk ELSE VermerkeCodes.Bezeichnung END as [Hinweis_Vermerk_Anzeige],[Hinweis_Vermerk], tblSendungen.tblSnd_Empfaenger ,[Mitarbeiter]" &
" FROM [Vermerke] LEFT JOIN VermerkeCodes ON [VermerkeCode]=VermerkeCodes.VermerkCodeId " &
" LEFT JOIN tblSendungen ON [SendungID]=tblSendungen.tblSnd_SendungID " &
" WHERE AvisoID = " & AvisoID & " " & sendwhere & " " &
" order by /*VermerkArt ASC,tblSnd_PosUnterNr,*/Datum DESC "
infotxt = AvisoDAL.getAvisoInfo(AvisoID)
If infotxt <> "" Then
lblInfoAviso.Visible = True
End If
gridVermerke.DataSource = VermerkeDAL.Anzeigen_Vermerke(hSQL)
If gridVermerke.Columns("VermerkeOptions") Is Nothing Then
Dim dgvlc As New DataGridViewLinkColumn
dgvlc.Name = "VermerkeOptions"
gridVermerke.Columns.Insert(gridVermerke.ColumnCount - 1, dgvlc)
End If
'Grid neu designen
'GridZeichnenBilanz()
gridVermerke_SpaltenFestlegen()
'If tbcntlVermerke.SelectedIndex = 2 And rowindex > 0 Then
If rowindex > 0 Then
dgvSendungen.ClearSelection()
dgvSendungen.Rows(rowindex).Selected = True
Else
gridVermerke.ClearSelection()
End If
timer.Enabled = True
End Sub
Private Sub gridVermerkeMouseClick(sender As Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles gridVermerke.CellContentClick
If gridVermerke.RowCount = 0 Then Exit Sub
If gridVermerke.Columns(e.ColumnIndex).Name = "VermerkeOptions" Then
Dim tmpIndex = -1
If (dgvSendungen.SelectedRows.Count > 0) Then
tmpIndex = dgvSendungen.SelectedRows(0).Index
End If
Dim VermerkeDAL As New cVermerkeDAL
Dim myVermerk As cVermerk = VermerkeDAL.LesenVermerk(gridVermerke.Rows(e.RowIndex).Cells("VermerkID").Value, "")
myVermerk.VermerkID = 0
'myVermerk.AvisoID = CInt(gridVermerke.Rows(e.RowIndex).Cells(1).Value)
myVermerk.Datum = Now
myVermerk.Mitarbeiter = VERAG_PROG_ALLGEMEIN.cGlobal.AktiverMitarbeiter.Mitarbeiter
myVermerk.MitarbeiterId = VERAG_PROG_ALLGEMEIN.cGlobal.AktiverMitarbeiter.MitarbeiterID
Dim init As Boolean = False
Select Case CStr(gridVermerke.Rows(e.RowIndex).Cells("VermerkeCode").Value)
Case "1"
myVermerk.Hinweis_Vermerk = CStr(gridVermerke.Rows(e.RowIndex).Cells("Hinweis_Vermerk").Value).Replace("angefordert", "erhalten")
myVermerk.VermerkCodeId = 2
VermerkeDAL.SpeichernVermerk(myVermerk)
init = True 'Vermerke_anzeigen(e.RowIndex)
' initDgvSendungen()
Case "3"
myVermerk.Hinweis_Vermerk = CStr(gridVermerke.Rows(e.RowIndex).Cells("Hinweis_Vermerk").Value).Replace("angefordert", "erhalten")
myVermerk.VermerkCodeId = 4
VermerkeDAL.SpeichernVermerk(myVermerk)
init = True 'Vermerke_anzeigen(e.RowIndex)': initDgvSendungen()
Case "5"
myVermerk.Hinweis_Vermerk = CStr(gridVermerke.Rows(e.RowIndex).Cells("Hinweis_Vermerk").Value).Replace("angefordert", "erhalten")
myVermerk.VermerkCodeId = 6
VermerkeDAL.SpeichernVermerk(myVermerk)
init = True 'Vermerke_anzeigen(e.RowIndex)': initDgvSendungen()
Case "7"
myVermerk.Hinweis_Vermerk = CStr(gridVermerke.Rows(e.RowIndex).Cells("Hinweis_Vermerk").Value).Replace("angefordert", "erhalten")
myVermerk.VermerkCodeId = 8
VermerkeDAL.SpeichernVermerk(myVermerk)
init = True 'Vermerke_anzeigen(e.RowIndex)': initDgvSendungen()
Case "9"
myVermerk.Hinweis_Vermerk = CStr(gridVermerke.Rows(e.RowIndex).Cells("Hinweis_Vermerk").Value).Replace("angefordert", "erhalten")
myVermerk.VermerkCodeId = 10
VermerkeDAL.SpeichernVermerk(myVermerk)
init = True 'Vermerke_anzeigen(e.RowIndex)': initDgvSendungen()
Case "11"
myVermerk.Hinweis_Vermerk = CStr(gridVermerke.Rows(e.RowIndex).Cells("Hinweis_Vermerk").Value).Replace("angefordert", "erhalten")
myVermerk.VermerkCodeId = 12
VermerkeDAL.SpeichernVermerk(myVermerk)
init = True 'Vermerke_anzeigen(e.RowIndex)': initDgvSendungen()
Case "13"
myVermerk.Hinweis_Vermerk = CStr(gridVermerke.Rows(e.RowIndex).Cells("Hinweis_Vermerk").Value).Replace("angefordert", "erhalten")
myVermerk.VermerkCodeId = 14
VermerkeDAL.SpeichernVermerk(myVermerk)
init = True 'Vermerke_anzeigen(e.RowIndex)': initDgvSendungen()
Case "17"
myVermerk.Hinweis_Vermerk = CStr(gridVermerke.Rows(e.RowIndex).Cells("Hinweis_Vermerk").Value).Replace("eingereicht", "fertig")
myVermerk.VermerkCodeId = 18
VermerkeDAL.SpeichernVermerk(myVermerk)
VermerkeDAL.UpdateLKW(myVermerk.AvisoID, False)
' avisoAktualisierenAktiveIdBehalten(myVermerk.AvisoID)
'Vermerke_aktualisieren()
init = True ' Vermerke_anzeigen(e.RowIndex)
Case "19"
myVermerk.Hinweis_Vermerk = CStr(gridVermerke.Rows(e.RowIndex).Cells("Hinweis_Vermerk").Value).Replace("eingereicht", "fertig")
myVermerk.VermerkCodeId = 20
VermerkeDAL.SpeichernVermerk(myVermerk)
init = True 'Vermerke_anzeigen(e.RowIndex)': initDgvSendungen()
Case "25"
myVermerk.Hinweis_Vermerk = CStr(gridVermerke.Rows(e.RowIndex).Cells("Hinweis_Vermerk").Value).Replace("angefordert", "erhalten")
myVermerk.VermerkCodeId = 30
VermerkeDAL.SpeichernVermerk(myVermerk)
init = True 'Vermerke_anzeigen(e.RowIndex)': initDgvSendungen()
Case "31"
myVermerk.Hinweis_Vermerk = CStr(gridVermerke.Rows(e.RowIndex).Cells("Hinweis_Vermerk").Value).Replace("in Vorbereitung", "Vorbereitung abgeschl.")
myVermerk.VermerkCodeId = 32
VermerkeDAL.SpeichernVermerk(myVermerk)
init = True 'Vermerke_anzeigen(e.RowIndex)': initDgvSendungen()
Case "33"
myVermerk.Hinweis_Vermerk = CStr(gridVermerke.Rows(e.RowIndex).Cells("Hinweis_Vermerk").Value).Replace("angefordert", "erhalten")
myVermerk.VermerkCodeId = 34
VermerkeDAL.SpeichernVermerk(myVermerk)
init = True 'Vermerke_anzeigen(e.RowIndex)': initDgvSendungen()
Case "36"
myVermerk.Hinweis_Vermerk = CStr(gridVermerke.Rows(e.RowIndex).Cells("Hinweis_Vermerk").Value).Replace("angefordert", "erhalten")
myVermerk.VermerkCodeId = 37
VermerkeDAL.SpeichernVermerk(myVermerk)
init = True 'Vermerke_anzeigen(e.RowIndex)': initDgvSendungen()
Case "53"
myVermerk.Hinweis_Vermerk = CStr(gridVermerke.Rows(e.RowIndex).Cells("Hinweis_Vermerk").Value).Replace("angefordert", "erhalten")
myVermerk.VermerkCodeId = 54
VermerkeDAL.SpeichernVermerk(myVermerk)
init = True 'Vermerke_anzeigen(e.RowIndex)': initDgvSendungen()
End Select
loaded = False
' Dim tmpIndex = -1
If init Then
' If (dgvSendungen.SelectedRows.Count > 0) Then
' tmpIndex = dgvSendungen.SelectedRows(0).Index
'End If
sendAktiv = False
initDgvSendungen()
sendAktiv = True
dgvSendungen.ClearSelection()
If tmpIndex > 0 And dgvSendungen.RowCount > tmpIndex Then
dgvSendungen.Rows(tmpIndex).Selected = True
End If
End If
loaded = True
Vermerke_anzeigen(tmpIndex)
End If
End Sub
Private Sub gridVermerke_Paint(sender As Object, e As PaintEventArgs) Handles gridVermerke.Paint
If dgvSendungen.RowCount = 0 Then Exit Sub
Try
For Each r As DataGridViewRow In gridVermerke.Rows
' If r.Cells("VermerkeOptions").GetType.Name = "DataGridViewLinkCell" Then
Dim optionCell As DataGridViewLinkCell = DirectCast(r.Cells("VermerkeOptions"), DataGridViewLinkCell)
If (r.Cells("VermerkeCode").Value) IsNot DBNull.Value Then
Select Case CInt(r.Cells("VermerkeCode").Value)
Case 1
If Not existCodeInGridVermerke(2, CStr(r.Cells("Hinweis_Vermerk").Value)) Then
optionCell.Value = "Auftrag erhalten"
optionCell.ToolTipText = "Klicken Sie hier, um den Vermerk 'Auftrag erhalten' einzutragen."
End If
Case 3
If Not existCodeInGridVermerke(4, CStr(r.Cells("Hinweis_Vermerk").Value)) Then
optionCell.Value = "Rechnung erhalten"
optionCell.ToolTipText = "Klicken Sie hier, um den Vermerk 'Rechnung erhalten' einzutragen."
End If
Case 5
If Not existCodeInGridVermerke(6, CStr(r.Cells("Hinweis_Vermerk").Value)) Then
optionCell.Value = "LS erhalten"
optionCell.ToolTipText = "Klicken Sie hier, um den Vermerk 'LS erhalten' einzutragen."
End If
Case 7
If Not existCodeInGridVermerke(8, CStr(r.Cells("Hinweis_Vermerk").Value)) Then
optionCell.Value = "ATR erhalten"
optionCell.ToolTipText = "Klicken Sie hier, um den Vermerk 'ATR erhalten' einzutragen."
End If
Case 9
If Not existCodeInGridVermerke(10, CStr(r.Cells("Hinweis_Vermerk").Value)) Then
optionCell.Value = "Vollmacht erhalten"
optionCell.ToolTipText = "Klicken Sie hier, um den Vermerk 'Vollmacht erhalten' einzutragen."
End If
Case 11
If Not existCodeInGridVermerke(12, CStr(r.Cells("Hinweis_Vermerk").Value)) Then
optionCell.Value = "CMR erhalten"
optionCell.ToolTipText = "Klicken Sie hier, um den Vermerk 'CMR erhalten' einzutragen."
End If
Case 13
If Not existCodeInGridVermerke(14, CStr(r.Cells("Hinweis_Vermerk").Value)) Then
optionCell.Value = "Vorauskasse erhalten"
optionCell.ToolTipText = "Klicken Sie hier, um den Vermerk 'Vorauskasse erhalten' einzutragen."
End If
Case 17
If Not existCodeInGridVermerke(18) Then
optionCell.Value = "DE-ZOLL fertig"
optionCell.ToolTipText = "Klicken Sie hier, um den Vermerk 'DE-ZOLL fertig' einzutragen."
End If
Case 19
If Not existCodeInGridVermerke(20) Then
optionCell.Value = "AT-ZOLL fertig"
optionCell.ToolTipText = "Klicken Sie hier, um den Vermerk 'AT-ZOLL fertig' einzutragen."
End If
Case 25
If Not existCodeInGridVermerke(30, CStr(r.Cells("Hinweis_Vermerk").Value)) Then
optionCell.Value = "Dokument erhalten"
optionCell.ToolTipText = "Klicken Sie hier, um den Vermerk 'Dokument erhalten' einzutragen."
End If
Case 31
If Not existCodeInGridVermerke(32, CStr(r.Cells("Hinweis_Vermerk").Value)) Then
optionCell.Value = "Vorbereitung abgeschlossen"
optionCell.ToolTipText = "Klicken Sie hier, um den Vermerk 'Vorbereitung abgeschlossen' einzutragen."
End If
Case 33
If Not existCodeInGridVermerke(34, CStr(r.Cells("Hinweis_Vermerk").Value)) Then
optionCell.Value = "ATA-Nr. erhalten"
optionCell.ToolTipText = "Klicken Sie hier, um den Vermerk 'ATA-Nr. erhalten' einzutragen."
End If
Case 36
If Not existCodeInGridVermerke(37, CStr(r.Cells("Hinweis_Vermerk").Value)) Then
optionCell.Value = "Kontaktdaten erhalten"
optionCell.ToolTipText = "Klicken Sie hier, um den Vermerk 'Kontaktdaten erhalten' einzutragen."
End If
Case 53
If Not existCodeInGridVermerke(54, CStr(r.Cells("Hinweis_Vermerk").Value)) Then
optionCell.Value = "Ü-Dok erhalten"
optionCell.ToolTipText = "Klicken Sie hier, um den Vermerk 'Ü-Dok erhalten' einzutragen."
End If
End Select
End If
Next
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Function existCodeInGridVermerke(code As Integer, Optional text As String = "") As Boolean
For Each r As DataGridViewRow In gridVermerke.Rows
If DirectCast(r.Cells("VermerkeCode"), DataGridViewTextBoxCell).Value.ToString = CStr(code) Then
Select Case code
Case 2, 4, 6, 8, 10, 12, 14, 30, 37, 34
If DirectCast(r.Cells("Hinweis_Vermerk"), DataGridViewTextBoxCell).Value.ToString.Replace("erhalten", "angefordert") = text Then
Return True
End If
Case 32
If DirectCast(r.Cells("Hinweis_Vermerk"), DataGridViewTextBoxCell).Value.ToString.Replace("Vorbereitung abgeschlossen", "in Vorbereitung") = text Then
Return True
End If
Case Else
Return True
End Select
End If
Next
Return False
End Function
Private Sub conMenu_Click(sender As Object, e As System.EventArgs) Handles conVermerkLöschen.Click
If gridVermerke.SelectedRows.Count = 0 Then Exit Sub
If vbNo = MsgBox("Wollen Sie den ausgewählten Vermerk löschen?", CType(MsgBoxStyle.YesNo + MsgBoxStyle.Exclamation, MsgBoxStyle), "Vermerk löschen") Then
Exit Sub
End If
If gridVermerke.SelectedRows(0).Cells("Hinweis_Vermerk").Value.ToString.EndsWith("wurde gelöscht.") Then 'Vermerk, dass Sendung gelöscht wurde.
Exit Sub
End If
Dim index As Integer = -1
If (dgvSendungen.SelectedRows.Count > 0) Then index = dgvSendungen.SelectedRows(0).Index
VermerkeDAL.LöschenVermerk(CInt(gridVermerke.SelectedRows(0).Cells("VermerkID").Value))
Vermerke_anzeigen(index)
Exit Sub
If sender Is conVermerkLöschen Then
If IsNothing(gridVermerke.CurrentRow) Then Exit Sub
' cGlobal.Aktive_ID = CInt(gridVermerke.Rows(gridVermerke.CurrentRow.Index).Cells("VermerkID").Value)
'If Not cGlobal.Admin Then
' 'Status erfasst darf auch von Mitarbeiter gelöscht werden - Mail von Siener vom 13.12.2013
' If gridAviso.Rows(gridAviso.CurrentRow.Index).Cells("Status").Value.ToString <> "0" Then
' MsgBox("Ein Aviso mit diesem Status kann nur vom Administrator gelöscht werden.", vbExclamation)
' Exit Sub
' End If
'End If
Dim antwort As MsgBoxResult = MsgBox("Wollen Sie den ausgewählten Vermerk löschen?", CType(MsgBoxStyle.YesNo + MsgBoxStyle.Exclamation, MsgBoxStyle),
"Vermerk löschen")
If antwort = vbNo Then
Exit Sub
End If
VermerkeDAL.LöschenVermerk(CInt(gridVermerke.Rows(gridVermerke.CurrentRow.Index).Cells("VermerkID").Value))
Vermerke_anzeigen()
initDgvSendungen()
End If
End Sub
Private Sub grid_CellMouseClick(sender As Object, e As System.Windows.Forms.DataGridViewCellMouseEventArgs) Handles gridVermerke.CellMouseClick
If e.RowIndex < 0 Then Exit Sub 'Es wurde außerhalb einer gültigen Datenzeile geklickt
'If gridVermerke.SelectedRows.Count = 0 Then Exit Sub 'Es wurde außerhalb einer gültigen Datenzeile geklickt
'gridMyAviso.ClearSelection() 'WARUM?
DirectCast(sender, DataGridView).Rows(e.RowIndex).Selected = True
If e.Button = Windows.Forms.MouseButtons.Right Then
If AVISO.Abgeschlossen Then Exit Sub
If sender Is gridVermerke Then
If gridVermerke.SelectedRows.Count = 0 Then Exit Sub 'Es wurde außerhalb einer gültigen Datenzeile geklickt
' AvisoID = CInt(gridVermerke.Rows(e.RowIndex).Cells("AvisoId").Value)
gridVermerke.CurrentCell = gridVermerke.Rows(e.RowIndex).Cells(e.ColumnIndex)
conMenuVermerke.Show(Windows.Forms.Cursor.Position)
End If
End If
End Sub
Private Sub btnErfasst_MouseHover(sender As Object, e As EventArgs)
Dim cF As Color = DirectCast(sender, Button).ForeColor
Dim cB As Color = DirectCast(sender, Button).BackColor
If cF = Color.Black Then cF = Color.Gray
DirectCast(sender, Button).ForeColor = cB
DirectCast(sender, Button).BackColor = cF
End Sub
Private Sub btnErfasst_MouseLeave(sender As Object, e As EventArgs)
Dim cF As Color = DirectCast(sender, Button).ForeColor
Dim cB As Color = DirectCast(sender, Button).BackColor
If cB = Color.Gray Then cB = Color.Black
DirectCast(sender, Button).ForeColor = cB
DirectCast(sender, Button).BackColor = cF
End Sub
Private Sub lblInfoAviso_Click(sender As Object, e As EventArgs) Handles lblInfoAviso.Click
showForm(infotxt, "Info")
End Sub
Sub showForm(t As String, Optional h As String = "")
Dim f As New Form
Dim p As New Panel
Dim rtb As New RichTextBox
f.StartPosition = FormStartPosition.CenterScreen
f.Width = 700
f.Height = 400
f.Text = h
f.Icon = My.Resources.Aviso
rtb.Dock = DockStyle.Fill
p.Dock = DockStyle.Fill
f.Controls.Add(p)
p.Controls.Add(rtb)
rtb.Text = t
f.ShowDialog()
End Sub
Private Sub SpeditionsbuchEintrag()
If dgvSendungen.SelectedRows.Count = 0 Then Exit Sub
Dim sndIdTmp = dgvSendungen.SelectedRows(0).Cells("tblSnd_SendungID").Value
Dim posnr As posNr = FUNC.SpeditionsbuchEintrag(AvisoID, sndIdTmp)
If posnr IsNot Nothing Then
Dim sndEntry As New VERAG_PROG_ALLGEMEIN.cSendungen(sndIdTmp)
sndEntry.FilialenNr = posnr.Filiale
sndEntry.AbfertigungsNr = posnr.Abfertigungsnummer
sndEntry.UnterNr = posnr.UnterNr
'sndEntry.tblSnd_SpeditionsbuchEingetragen = (posnr.Filiale > 0 And posnr.Abfertigungsnummer > 0 And posnr.UnterNr >= 0) ' Wenn Sped Eintrag gelöscht-> - 1, dann ist der Eintrag nicht mehr vorhanden
Dim vorhanden = ADMIN.getValueTxtBySql("SELECT COUNT(*) FROM [Speditionsbuch] WHERE [FilialenNr]='" & sndEntry.FilialenNr & "' AND AbfertigungsNr='" & sndEntry.AbfertigungsNr & "' AND UnterNr='" & sndEntry.UnterNr & "'", "FMZOLL")
sndEntry.tblSnd_SpeditionsbuchEingetragen = (vorhanden > 0)
sndEntry.SAVE()
reload(AvisoID)
End If
'Vermerke_anzeigen()
End Sub
' Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
Private Sub dgvSendungen_CellDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvSendungen.CellDoubleClick
Dim sendId = -1
If dgvSendungen.SelectedRows.Count > 0 Then
sendId = dgvSendungen.SelectedRows(0).Cells("tblSnd_SendungID").Value
End If
Dim frmGrayOut = VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.grayoutForm()
Dim frmSendungsdetails As New frmSendungsdetailsNEU(AvisoID, sendId)
frmSendungsdetails.ShowDialog(frmGrayOut)
frmGrayOut.Close()
initDgvSendungen()
End Sub
Public Sub openSnd(sendId)
Dim frmGrayOut = VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.grayoutForm()
Dim frmSendungsdetails As New frmSendungsdetailsNEU(AvisoID, sendId)
frmSendungsdetails.ShowDialog(frmGrayOut)
frmGrayOut.Close()
initDgvSendungen()
End Sub
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles lklAuswahlAufheben.Click
dgvSendungen.ClearSelection()
Vermerke_anzeigen()
End Sub
Private Sub Button8_Click(sender As Object, e As EventArgs)
Dim frmTV As New frmTv
frmTV.avisoID = AvisoID
frmTV.ShowDialog()
reload(AvisoID)
'MsgBox("laodButton8")
End Sub
Private Sub dgvSendungen_SelectionChanged(sender As Object, e As EventArgs) Handles dgvSendungen.SelectionChanged
If sendAktiv Then
If dgvSendungen.SelectedRows.Count > 0 Then
If tbcntlVermerke.SelectedIndex <> 2 Then tbcntlVermerke.SelectedIndex = 2
Else
If tbcntlVermerke.SelectedIndex <> 0 Then tbcntlVermerke.SelectedIndex = 0
End If
Vermerke_anzeigen()
End If
End Sub
Private Sub tbcntlVermerke_SelectedIndexChanged(sender As Object, e As EventArgs) Handles tbcntlVermerke.SelectedIndexChanged
If Not loaded Then Exit Sub
Vermerke_anzeigen()
End Sub
Private Sub lklAuswahlAufheben_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles lklAuswahlAufheben.LinkClicked
tbcntlVermerke.SelectedIndex = 0
End Sub
Private Sub btnVermerke_Click(sender As Object, e As EventArgs)
loaded = False
' If dgvSendungen.SelectedRows.Count <= 0 Then Exit Sub
Dim frmGrayOut = VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.grayoutForm()
Dim sv As New frmAddSendungsvermerkShort(AvisoID, -1) ', dgvSendungen.SelectedRows(0).Cells("tblSnd_SendungID").Value)
sv.Location = Me.PointToClient(System.Windows.Forms.Cursor.Position)
sv.ShowDialog(frmGrayOut)
frmGrayOut.Close()
initDgvSendungen() ' wg. Anzahl Vermerke
sv.Close()
loaded = True
Vermerke_anzeigen()
Exit Sub
' Dim p As Panel =
loaded = False
' frmHauptfenster.transparentpnl.BackColor = Color.FromArgb(0, 200, 200, 200)
' Panel1.BackColor = Color.FromArgb(25, Color.Red)
'frmHauptfenster.Controls.Add(p)
' frmHauptfenster.transparentpnl.BackColor = Color.FromArgb(25, Color.Red)
' frmHauptfenster.transparentpnl.Width = frmHauptfenster.Width
' frmHauptfenster.transparentpnl.Height = frmHauptfenster.Height
' frmHauptfenster.transparentpnl.Location = New Point(0, 0)
' frmHauptfenster.transparentpnl.Visible = True
If dgvSendungen.SelectedRows.Count = 0 Then Exit Sub
' frmGrayOut.Opacity = 0.5
' frmGrayOut.WindowState = FormWindowState.Maximized
Dim tmpIndex = dgvSendungen.SelectedRows(0).Index
Dim tmpscroll = dgvSendungen.FirstDisplayedScrollingRowIndex
'Dim frmGrayOut = VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.grayoutForm()
' Dim sv As New frmAddSendungsvermerk(AvisoID, dgvSendungen.SelectedRows(0).Cells("tblSnd_SendungID").Value)
sv.ShowDialog(frmGrayOut)
If tbcntlVermerke.SelectedIndex <> 2 Then tbcntlVermerke.SelectedIndex = 2
initDgvSendungen() ' wg. Anzahl Vermerke
sv.Close()
If dgvSendungen.RowCount > tmpIndex Then
dgvSendungen.ClearSelection()
dgvSendungen.Rows(tmpIndex).Selected = True
dgvSendungen.FirstDisplayedScrollingRowIndex = tmpscroll
End If
loaded = True
Vermerke_anzeigen()
End Sub
Private Sub btnAnkunft_Click(sender As Object, e As EventArgs) Handles btnAnkunft.Click
If FUNC.setAnkunft(AvisoID) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End If
End Sub
Private Sub btnErfasst_Click(sender As Object, e As EventArgs) Handles btnErfasst.Click
If FUNC.setErfasst(AvisoID) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End If
End Sub
Private Sub btnVorbereitet_Click(sender As Object, e As EventArgs) Handles btnVorbereitet.Click
If FUNC.setVorbereitet(AvisoID) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End If
End Sub
Private Sub btnVorgeschrieben_Click(sender As Object, e As EventArgs) Handles btnVorgeschrieben.Click
If FUNC.setVorgeschreiben(AvisoID) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End If
End Sub
Private Sub btnFreigabe_Click(sender As Object, e As EventArgs) Handles btnFreigabe.Click
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
End Sub
Private Sub btnNichtEingetroffen_Click(sender As Object, e As EventArgs)
If FUNC.setNichtEingeftroffen(AvisoID) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End If
End Sub
Private Sub dgvSendungen_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvSendungen.CellContentClick
Select Case dgvSendungen.Columns(e.ColumnIndex).Name
Case "SendungBearbeiten"
Me.Cursor = Cursors.WaitCursor
Dim sendId = -1
If dgvSendungen.SelectedRows.Count > 0 Then
sendId = dgvSendungen.Rows(e.RowIndex).Cells("tblSnd_SendungID").Value
End If
'Dim frmSendungsdetails As New frmSendungsdetails(AvisoID, sendId)
'frmSendungsdetails.ShowDialog(Me)
Dim frmGrayOut = VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.grayoutForm()
Dim frmSendungsdetails As New frmSendungsdetailsNEU(AvisoID, sendId)
frmSendungsdetails.ShowDialog(frmGrayOut)
frmGrayOut.Close()
initDgvSendungen()
Me.Cursor = Cursors.Default
Case "KundeAnzeigen"
Me.Cursor = Cursors.WaitCursor
If dgvSendungen.SelectedRows.Count > 0 Then
Dim kd = dgvSendungen.Rows(e.RowIndex).Cells("tblSnd_EmpfaengerKdNr").Value
If kd IsNot DBNull.Value AndAlso IsNumeric(kd) AndAlso kd > 0 Then FUNC.showKd(kd)
End If
Me.Cursor = Cursors.Default
Case "VermerkEintragen"
Me.Cursor = Cursors.WaitCursor
dgvSendungen_CellMouseClick(dgvSendungen, New DataGridViewCellMouseEventArgs(0, e.RowIndex, 0, 0, New MouseEventArgs(Windows.Forms.MouseButtons.Right, 1, 0, 0, 0)))
Me.Cursor = Cursors.Default
Case "SpeditionsbuchEintragen"
Me.Cursor = Cursors.WaitCursor
If Not dgvSendungen.Rows(e.RowIndex).Cells("tblSnd_Fremdspedition").Value Then
SpeditionsbuchEintrag()
End If
Me.Cursor = Cursors.Default
Case "Abgeklaert"
If VERAG_PROG_ALLGEMEIN.cAllgemein.ABTEILUNG = "QS" Then
Me.Cursor = Cursors.WaitCursor
' Dim SENDUNG_TMP = New VERAG_PROG_ALLGEMEIN.cSendungen(dgvSendungen.Rows(e.RowIndex).Cells("tblSnd_SendungID").Value)
If dgvSendungen.Rows(e.RowIndex).Cells("tblSnd_QS_Ma").Value <= 0 Then
' SENDUNG_TMP.tblSnd_QS_MA = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID
'MsgBox(VERAG_PROG_ALLGEMEIN.cAllgemein.USRID)
ADMIN.doSQL("UPDATE tblSendungen SET tblSnd_QS_MA='" & VERAG_PROG_ALLGEMEIN.cAllgemein.USRID & "' WHERE tblSnd_SendungID='" & dgvSendungen.Rows(e.RowIndex).Cells("tblSnd_SendungID").Value & "'", "AVISO")
Else
' SENDUNG_TMP.tblSnd_QS_MA = Nothing
ADMIN.doSQL("UPDATE tblSendungen SET tblSnd_QS_MA=null WHERE tblSnd_SendungID='" & dgvSendungen.Rows(e.RowIndex).Cells("tblSnd_SendungID").Value & "'", "AVISO")
End If
' SENDUNG_TMP.SAVE()
initDgvSendungen()
Me.Cursor = Cursors.Default
End If
End Select
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs)
reload(AvisoID)
' MsgBox("laodButton1")
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
pnlOptionen.Height = 100
pnlOptionen.Visible = Not pnlOptionen.Visible
If pnlOptionen.Visible Then pnlOptionen.Location = New Point(pnlOptionen.Location.X, Button2.Height + pnl.Height + FlowLayoutPanel.Height)
End Sub
Private Sub txtFrächter_TextChanged(sender As Object, e As EventArgs) Handles txtFrächter.Click
If FraechterKdNr > 0 Then
FUNC.showKd(FraechterKdNr)
End If
End Sub
Private Sub txtAuftraggeber_TextChanged(sender As Object, e As EventArgs) Handles txtAuftraggeber.Click
If AvisiererKdNr > 0 Then
FUNC.showKd(AvisiererKdNr)
End If
End Sub
Private Sub timerTick(sender As Object, e As EventArgs) Handles timer.Tick ' eine halbe sekunde verzögert, damit DGV geladen ist (shown geht nicht ewg. usrcntl)
If gridVermerke.RowCount = 0 Then gridVermerke.Columns.Clear() 'gridVermerke.Visible = False
If Not loaded Then Exit Sub
If dgvSendungen.DataSource Is Nothing Then Exit Sub
For Each r As DataGridViewRow In dgvSendungen.Rows
Try
If r.Cells("tblSnd_EmpfaengerKdNr").Value IsNot DBNull.Value AndAlso CInt(r.Cells("tblSnd_EmpfaengerKdNr").Value) > 0 Then
DirectCast(r.Cells("KundeAnzeigen"), DataGridViewImageCell).Value = My.Resources.person
End If
If CBool(r.Cells("tblSnd_SpeditionsbuchEingetragen").Value) Then
DirectCast(r.Cells("SpeditionsbuchEintragen"), DataGridViewImageCell).Value = My.Resources.speditionsbuchAktiv
End If
If VERAG_PROG_ALLGEMEIN.cAllgemein.ABTEILUNG = "QS" Then
If r.Cells("tblSnd_QS_MA").Value = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID Then
DirectCast(r.Cells("Abgeklaert"), DataGridViewImageCell).Value = My.Resources.abgeklaertAktiv
End If
End If
DirectCast(r.Cells("KundeAnzeigen"), DataGridViewImageCell).ToolTipText = "Kunde anzeigen"
DirectCast(r.Cells("SpeditionsbuchEintragen"), DataGridViewImageCell).ToolTipText = "Speditionsbuch eintragen"
DirectCast(r.Cells("VermerkEintragen"), DataGridViewImageCell).ToolTipText = "Vermerk eintragen"
DirectCast(r.Cells("SendungBearbeiten"), DataGridViewImageCell).ToolTipText = "Sendung bearbeiten"
Catch ex As Exception
MsgBox("Fehler bei der Initialisierung der Sendungen Optionen." & vbNewLine & vbNewLine & ex.Message)
End Try
Next
Try
tbcntlVermerke.TabPages(0).Text = "Alle (" & ADMIN.getValueTxtBySql("SELECT COUNT(*) FROM Vermerke WHERE [AvisoID]=" & AvisoID & "", "AVISO") & ")"
tbcntlVermerke.TabPages(1).Text = "Aktenvermerke (" & ADMIN.getValueTxtBySql("SELECT COUNT(*) FROM Vermerke WHERE [AvisoID]=" & AvisoID & " AND [VermerkArt]='A' ", "AVISO") & ")"
If dgvSendungen.SelectedRows.Count > 0 Then
tbcntlVermerke.TabPages(2).Text = "Sendungsvermerke (" & ADMIN.getValueTxtBySql("SELECT COUNT(*) FROM Vermerke WHERE [AvisoID]=" & AvisoID & " AND [VermerkArt]='S' AND [SendungID]='" & dgvSendungen.SelectedRows(0).Cells("tblSnd_SendungID").Value & "' ", "AVISO") & ")"
Else
tbcntlVermerke.TabPages(2).Text = "Sendungsvermerke"
End If
Catch ex As Exception
End Try
' btnFormulare.Left = pnlVermerkeTop.Width - btnFormulare.Width - 4
timer.Enabled = False
End Sub
' Private Sub reloadtimerTick(sender As Object, e As EventArgs) Handles reloadTimer.Tick
' dgvSendungen.ClearSelection()
' If tbcntlVermerke.SelectedIndex <> 0 Then tbcntlVermerke.SelectedIndex = 0
' reloadTimer.Enabled = False
'End Sub
Private Sub timerSendRows_Tick(sender As Object, e As EventArgs) Handles timerSendRows.Tick
For Each r As DataGridViewRow In dgvSendungen.Rows
If r.Cells("tblSnd_Fremdspedition").Value Then 'FREMDANMELDER
r.Cells("Abfertigungsart").Style.BackColor = Color.FromArgb(230, 230, 230)
r.Cells("tblSnd_PosUnterNr").Style.BackColor = Color.FromArgb(230, 230, 230)
' r.Cells("Abfertigungsart").Value = "FREMD"
r.Cells("Abfertigungsart").Value = r.Cells("tblSnd_FremdspeditionText").Value
Else 'Nomal
r.Cells("Abfertigungsart").Value = ADMIN.getValueTxtBySql("SELECT Abfertigungsbezeichnung FROM Abfertigungsarten WHERE [Abfertigungsart]='" & r.Cells("tblSnd_Abfertigungsart_ID").Value.ToString & "'", "FMZOLL")
If r.Cells("Abfertigungsart").Value.ToString.Length > 15 Then r.Cells("Abfertigungsart").Value = r.Cells("Abfertigungsart").Value.Substring(0, 15) & ".."
End If
Next
timerSendRows.Enabled = False
End Sub
Private Sub lblStatus_Click(sender As Object, e As EventArgs) Handles lblStatus.Click
End Sub
Private Sub dgvSendungen_CellMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles dgvSendungen.CellMouseClick
If e.Button = Windows.Forms.MouseButtons.Right Then
If AVISO.Abgeschlossen Then Exit Sub
loaded = False
' If dgvSendungen.SelectedRows.Count <= 0 Then Exit Sub
dgvSendungen.ClearSelection()
dgvSendungen.Rows(e.RowIndex).Selected = True
' frmGrayOut.Opacity = 0.5
' frmGrayOut.WindowState = FormWindowState.Maximized
Dim tmpIndex = dgvSendungen.SelectedRows(0).Index
Dim tmpscroll = dgvSendungen.FirstDisplayedScrollingRowIndex
Dim frmGrayOut = grayoutForm()
Dim sv As New frmAddSendungsvermerkShort(AvisoID, dgvSendungen.SelectedRows(0).Cells("tblSnd_SendungID").Value)
sv.Location = Me.PointToClient(System.Windows.Forms.Cursor.Position)
sv.ShowDialog(frmGrayOut)
frmGrayOut.Close()
If tbcntlVermerke.SelectedIndex <> 2 Then tbcntlVermerke.SelectedIndex = 2
initDgvSendungen() ' wg. Anzahl Vermerke
sv.Close()
If dgvSendungen.RowCount > tmpIndex Then
dgvSendungen.ClearSelection()
dgvSendungen.Rows(tmpIndex).Selected = True
dgvSendungen.FirstDisplayedScrollingRowIndex = tmpscroll
End If
loaded = True
Vermerke_anzeigen()
End If
End Sub
Private Sub lblHinweis_Click(sender As Object, e As EventArgs)
End Sub
' Dim w As New SDL.cGenWord
'Dim ds As New VERAG_PROG_ALLGEMEIN.cDATENSERVER
Private Sub Formulare(sender As Object, e As EventArgs) Handles DispolisteTRToolStripMenuItem.Click, DispolisteENToolStripMenuItem.Click
Me.Cursor = Cursors.WaitCursor
Dim odoc As Microsoft.Office.Interop.Word.Document = Nothing
Try
Dim d As New VERAG_PROG_ALLGEMEIN.cFormularManager
Dim path_src As String = ""
If sender Is DispolisteTRToolStripMenuItem Then path_src = VERAG_PROG_ALLGEMEIN.cFormularManager.open("DOKUMENTE", "VORLAGEN", "", "", "", "Dispoliste TR.doc", False)
If sender Is DispolisteENToolStripMenuItem Then path_src = VERAG_PROG_ALLGEMEIN.cFormularManager.open("DOKUMENTE", "VORLAGEN", "", "", "", "Dispoliste EN.docx", False)
' If path_src = "" Then Exit Sub
' Dim path As String = ds.openDataTMP(path_src, False)
' If path = "" Then Exit Sub
' Dim Aviso As New cAvisos
' Aviso = AvisoDAL.LesenAviso(AvisoID, "")
Dim oWord As New Microsoft.Office.Interop.Word.Application
' Dim odoc As Microsoft.Office.Interop.Word.Document
oWord.Visible = False 'Word sehen zum Test?
' MsgBox(pfadWord)
odoc = oWord.Documents.Open(path_src)
' odoc.SaveAs(tmpPath)
' odoc.Save()
'odoc = w.openWord(path, False)
odoc.FormFields("An").Range.Text = AVISO.Frächter
odoc.FormFields("zH").Range.Text = ""
odoc.FormFields("LKW").Range.Text = AVISO.LKW_Nr
odoc.FormFields("SB").Range.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME 'VERAG_PROG_ALLGEMEIN.cglobal.AktiverMitarbeiter.Mitarbeiter
odoc.Save()
odoc.Activate()
oWord.Visible = True
' odoc.Save()
' odoc.Activate()
Catch ex As Exception
MessageBox.Show(ex.ToString)
End Try
Me.Cursor = Cursors.Default
End Sub
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles btnAktAbschliessen.Click
If AVISO.Status <> VERAG_PROG_ALLGEMEIN.cGlobal.Status_Freigegeben Then
If vbYes <> MsgBox("Der LKW wurde noch nicht freigegeben, Sind Sie sicher?", vbYesNoCancel) Then Exit Sub
FUNC.setFreigabe(AvisoID, Me, True)
End If
If FUNC.setAbgeschlossen(AvisoID, True) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(AvisoID)
reload(AvisoID)
End If
End Sub
Private Sub btnKassenbuchEintrag_Click(sender As Object, e As EventArgs)
Dim PERSONAL As SDL.cPersonal = Nothing
Dim frmSecureLoginKassenbuch As New SDL.frmSecureLoginKassenbuch
If frmSecureLoginKassenbuch.ShowDialog(Me) = Windows.Forms.DialogResult.OK Then
PERSONAL = frmSecureLoginKassenbuch.PERSONAL
Dim frmBeleg As New SDL.frmBelegNeu(PERSONAL, Nothing, "E")
AddHandler frmBeleg.LOADED, Sub()
Dim AVISO As cAviso = AvisoDAL.LesenAviso(AvisoID, "")
'Dim BELEG As New EABeleg(PERSONAL.Mandant, PERSONAL.Niederlassung, PERSONAL.ID)
' Dim BELEG As EABeleg = frmBeleg.BELEG
'' BELEG.LKW_Kennzeichen = "AAAAAA"
frmBeleg.BELEG.LKW_Kennzeichen = AVISO.LKW_Nr
frmBeleg.BELEG.Frachtführer = AVISO.Frächter
frmBeleg.BELEG.Ordnungsbegriff = AVISO.Frächter 'Me.SENDUNG_LIST(Me.CURRENT_INDEX).tblSnd_Auftraggeber
frmBeleg.BELEG.FilialenNr = 4801
'frmBeleg.BELEG.AbfertigungsNr = Me.SENDUNG_LIST(Me.CURRENT_INDEX).AbfertigungsNr
' MsgBox(Me.SENDUNG_LIST(Me.CURRENT_INDEX).FilialenNr)
frmBeleg.init()
' Nach init:
If AVISO.Frächter_KdNr >= 0 Then
frmBeleg.kdFrachtf.KdNr = AVISO.Frächter_KdNr
End If
' If Me.SENDUNG_LIST(Me.CURRENT_INDEX).tblSnd_AuftraggeberKdNr > 0 Then
' frmBeleg.kdkunde.KdNr = Me.SENDUNG_LIST(Me.CURRENT_INDEX).tblSnd_AuftraggeberKdNr
' End If
End Sub
frmBeleg.ShowDialog(Me)
End If
End Sub
Private Sub btn_Click(sender As Object, e As EventArgs)
' Dim frmNacherfassung As New frmNacherfassungNEU
' frmNacherfassung.newEntry = True
' frmNacherfassung.FMZollPersID = VERAG_PROG_ALLGEMEIN.cglobal.AktiverMitarbeiter.mit_FMZollPersID
' frmNacherfassung.Show()
Try
Dim posNr As New posNr
If AvisoID < 0 Then MsgBox("Fehler: AvisoID kleiner 0.") : Exit Sub
Dim frmNacherfassung As New SDL.frmNacherfassungNEU
If posNr.Filiale <= 0 And VERAG_PROG_ALLGEMEIN.cGlobal.AktiverMitarbeiter.StandartFiliale > 0 Then 'Aus den Mitarbeiter-Stammdaten
posNr.Filiale = VERAG_PROG_ALLGEMEIN.cGlobal.AktiverMitarbeiter.StandartFiliale
End If
If posNr.Abfertigungsnummer < 0 Or posNr.Filiale < 0 Or posNr.UnterNr < 0 Then
Dim frmPosNr As New SDL.frmPosNr(posNr.Filiale, posNr.Abfertigungsnummer, posNr.UnterNr)
Dim frmGrayOut = VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.grayoutForm()
If Not frmPosNr.ShowDialog(frmGrayOut) = DialogResult.OK Then frmGrayOut.Close() : Exit Sub
frmGrayOut.Close()
' MsgBox("3")
posNr.Abfertigungsnummer = frmPosNr.txtAbfertigungsnummer.Text
posNr.Filiale = frmPosNr.cboFiliale._value
posNr.UnterNr = frmPosNr.txtUnterNr.Text
' Dim cADMIN As New cADMIN
' cADMIN.doSQL(" UPDATE tblSendungen SET FilialenNr='" & posNr.Filiale & "',AbfertigungsNr='" & srchAbfertigungsnummer & "', UnterNr='" & srchUnterNr & "' FROM tblSendungen WHERE tblSnd_SendungID=" & SendungID)
End If
' MsgBox("4")
frmNacherfassung.avisoLinkId = AvisoID
' frmNacherfassung.SendungID = SendungID
Dim SQL As New SQL
frmNacherfassung.srchAbfertigungsnummer = posNr.Abfertigungsnummer
frmNacherfassung.srchFiliale = posNr.Filiale
frmNacherfassung.srchUnterNr = posNr.UnterNr
' frmNacherfassung.FMZollPersID = VERAG_PROG_ALLGEMEIN.cglobal.AktiverMitarbeiter.mit_FMZollPersID
Dim qsMa_TMP = SQL.getValueTxtBySql("SELECT TOP 1 isnull([MitarbeiterId],-1) FROM [Aenderungen] WHERE Aenderung_Art = 'auf VORBEREITET gesetzt' AND [AvisoID]='" & AvisoID & "' ORDER BY Datum DESC", "AVISO")
Dim qsMa = SQL.getValueTxtBySql("SELECT TOP 1 isnull([mit_FMZollPersID],-1) FROM [tblMitarbeiter] WHERE [mit_id]='" & qsMa_TMP & "' ", "ADMIN")
frmNacherfassung.newEntry = (0 = CInt(SQL.getValueTxtBySql("SELECT Count(*) FROM Speditionsbuch WHERE FilialenNr='" & posNr.Filiale & "' AND AbfertigungsNr='" & posNr.Abfertigungsnummer & "' AND UnterNr='" & posNr.UnterNr & "' ", "FMZOLL")))
' frmNacherfassung.FMZollPersIDQS = IIf(IsNumeric(qsMa), qsMa, -1)
frmNacherfassung.ShowDialog()
posNr.Abfertigungsnummer = frmNacherfassung.txtAbfertigungsnummer.Text
posNr.Filiale = frmNacherfassung.cboFiliale._value
posNr.UnterNr = frmNacherfassung.txtUnterNr.Text
Catch ex As Exception
MsgBox(ex.Message)
MsgBox(ex.StackTrace)
End Try
End Sub
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
If FUNC.AktUebernehmen(AvisoID) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End If
End Sub
Public Sub showInfo(t As String, s As Double)
lblAktUebernommen.Text = t
lblAktUebernommen.Visible = True
lblAktUebernommen.BringToFront()
timer.Interval = CInt(s * 1000)
timerAktUebernommen.Enabled = True
End Sub
Private Sub timerAktUebernommen_Tick(sender As Object, e As EventArgs) Handles timerAktUebernommen.Tick
lblAktUebernommen.Visible = False
timerAktUebernommen.Enabled = False
End Sub
Private Sub Label2_Click(sender As Object, e As EventArgs) Handles Label2.Click
If vbYes = MsgBox("Möchten Sie den Akt wieder öffnen?", vbYesNoCancel) Then
If FUNC.setAbgeschlossen(AvisoID, False) Then
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(AvisoID)
reload(AvisoID)
End If
End If
End Sub
Private Sub btn_Click_1(sender As Object, e As EventArgs) Handles btn.Click
' Dim frmNacherfassung As New frmNacherfassungNEU
' frmNacherfassung.newEntry = True
' frmNacherfassung.FMZollPersID = VERAG_PROG_ALLGEMEIN.cglobal.AktiverMitarbeiter.mit_FMZollPersID
' frmNacherfassung.Show()
Try
Dim posNr As New posNr
If AvisoID < 0 Then MsgBox("Fehler: AvisoID kleiner 0.") : Exit Sub
Dim frmNacherfassung As New SDL.frmNacherfassungNEU
If posNr.Filiale <= 0 And VERAG_PROG_ALLGEMEIN.cGlobal.AktiverMitarbeiter.StandartFiliale > 0 Then 'Aus den Mitarbeiter-Stammdaten
posNr.Filiale = VERAG_PROG_ALLGEMEIN.cGlobal.AktiverMitarbeiter.StandartFiliale
End If
If posNr.Abfertigungsnummer < 0 Or posNr.Filiale < 0 Or posNr.UnterNr < 0 Then
Dim frmPosNr As New SDL.frmPosNr(posNr.Filiale, posNr.Abfertigungsnummer, posNr.UnterNr)
Dim frmGrayOut = VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.grayoutForm()
If Not frmPosNr.ShowDialog(frmGrayOut) = DialogResult.OK Then frmGrayOut.Close() : Exit Sub
frmGrayOut.Close()
' MsgBox("3")
posNr.Abfertigungsnummer = frmPosNr.txtAbfertigungsnummer.Text
posNr.Filiale = frmPosNr.cboFiliale._value
posNr.UnterNr = frmPosNr.txtUnterNr.Text
' Dim cADMIN As New cADMIN
' cADMIN.doSQL(" UPDATE tblSendungen SET FilialenNr='" & posNr.Filiale & "',AbfertigungsNr='" & srchAbfertigungsnummer & "', UnterNr='" & srchUnterNr & "' FROM tblSendungen WHERE tblSnd_SendungID=" & SendungID)
End If
' MsgBox("4")
frmNacherfassung.avisoLinkId = AvisoID
' frmNacherfassung.SendungID = SendungID
Dim SQL As New SQL
frmNacherfassung.srchAbfertigungsnummer = posNr.Abfertigungsnummer
frmNacherfassung.srchFiliale = posNr.Filiale
frmNacherfassung.srchUnterNr = posNr.UnterNr
' frmNacherfassung.FMZollPersID = VERAG_PROG_ALLGEMEIN.cglobal.AktiverMitarbeiter.mit_FMZollPersID
Dim qsMa_TMP = SQL.getValueTxtBySql("SELECT TOP 1 isnull([MitarbeiterId],-1) FROM [Aenderungen] WHERE Aenderung_Art = 'auf VORBEREITET gesetzt' AND [AvisoID]='" & AvisoID & "' ORDER BY Datum DESC", "AVISO")
Dim qsMa = SQL.getValueTxtBySql("SELECT TOP 1 isnull([mit_FMZollPersID],-1) FROM [tblMitarbeiter] WHERE [mit_id]='" & qsMa_TMP & "' ", "ADMIN")
frmNacherfassung.newEntry = (0 = CInt(SQL.getValueTxtBySql("SELECT Count(*) FROM Speditionsbuch WHERE FilialenNr='" & posNr.Filiale & "' AND AbfertigungsNr='" & posNr.Abfertigungsnummer & "' AND UnterNr='" & posNr.UnterNr & "' ", "FMZOLL")))
'frmNacherfassung.FMZollPersIDQS = IIf(IsNumeric(qsMa), qsMa, -1)
frmNacherfassung.ShowDialog()
posNr.Abfertigungsnummer = frmNacherfassung.txtAbfertigungsnummer.Text
posNr.Filiale = frmNacherfassung.cboFiliale._value
posNr.UnterNr = frmNacherfassung.txtUnterNr.Text
reload(AvisoID)
Catch ex As Exception
MsgBox(ex.Message)
MsgBox(ex.StackTrace)
End Try
End Sub
Private Sub Button3_Click_1(sender As Object, e As EventArgs) Handles Button3.Click
loaded = False
' If dgvSendungen.SelectedRows.Count <= 0 Then Exit Sub
Dim frmGrayOut = VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.grayoutForm()
Dim sv As New frmAddSendungsvermerkShort(AvisoID, -1) ', dgvSendungen.SelectedRows(0).Cells("tblSnd_SendungID").Value)
sv.Location = Me.PointToClient(System.Windows.Forms.Cursor.Position)
sv.ShowDialog(frmGrayOut)
frmGrayOut.Close()
initDgvSendungen() ' wg. Anzahl Vermerke
sv.Close()
loaded = True
Vermerke_anzeigen()
End Sub
Private Sub Button5_Click_1(sender As Object, e As EventArgs) Handles Button5.Click
AvisoDAL.insertSendungEmpty(AvisoID, 1, 0, DBNull.Value, 0, DBNull.Value, Nothing, Nothing) ' INSERT
reload(AvisoID)
End Sub
Private Sub btnFertig_Click(sender As Object, e As EventArgs)
End Sub
Private Sub btnFertig_Click_1(sender As Object, e As EventArgs) Handles btnFertig.Click
FUNC.LKWFertig(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End Sub
Private Sub btnÄndern_Click(sender As Object, e As EventArgs) Handles btnÄndern.Click
VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID = AvisoID 'zur Sicherheit
Dim frmGrayOut = VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.grayoutForm()
Dim f As New frmEintragAviso
f.ShowDialog(frmGrayOut)
frmGrayOut.Close()
reload(AvisoID)
pnlOptionen.Visible = False
End Sub
Private Sub btnLöschen_Click(sender As Object, e As EventArgs) Handles btnLöschen.Click
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("Avisodaten_verwalten", Me.FindForm) Then
If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ADMIN", Me.FindForm) Then
'Status erfasst darf auch von Mitarbeiter gelöscht werden - Mail von Siener vom 13.12.2013
If AVISO.Status <> "0" Then
MsgBox("Ein Akt mit diesem Status kann nur vom Administrator gelöscht werden.", vbExclamation)
Exit Sub
End If
End If
Dim antwort As MsgBoxResult = MsgBox("Wollen Sie den Akt für das Kennzeichen '" & AVISO.LKW_Nr & "' wirklich löschen?", CType(MsgBoxStyle.YesNo + MsgBoxStyle.Exclamation, MsgBoxStyle),
"Eintrag löschen")
If antwort = vbNo Then
Exit Sub
End If
pnlOptionen.Visible = False
'AvisoDAL.LöschenAviso(AvisoID)
If FUNC.setNichtEingeftroffen(AvisoID, True) Then
VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID = -1
frmHauptfenster.pnlDetailsRechts.Visible = False
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(-1)
End If
End If
End Sub
Private Sub Button8_Click_1(sender As Object, e As EventArgs) Handles btnTV.Click
Dim frmTV As New frmTv
frmTV.avisoID = VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID
frmTV.ShowDialog()
frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
frmHauptfenster.lblHinweiseVisible()
End Sub
Private Sub Button1_Click_1(sender As Object, e As EventArgs) Handles Button1.Click
'Die Sendungen eintragen:
If IsNumeric(txtSendungen.Text) And IsNumeric(txtSndFiskalAT.Text) And IsNumeric(txtSndFiskalDE.Text) And IsNumeric(txtSndFremd.Text) Then 'AndAlso txtSendungen.Text > 0 Then
Dim filiale_tmp As Integer = 0
Dim gesAnzSnd = initSndAnzahl()
Dim fremd = False
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "IMEX"
For cnt As Integer = 1 To gesAnzSnd
Dim abfnr_tmp As Object = DBNull.Value
filiale_tmp = 5501
Dim abfArt As Object = DBNull.Value
getFilialeAndAbfertNrIMEX(cnt, filiale_tmp, abfnr_tmp, fremd, abfArt)
Dim tblSnd_AuftraggeberKdNr As Object = Nothing
Dim tblSnd_Auftraggeber As Object = Nothing
If cbxPosNr.Checked Then abfnr_tmp = VERAG_PROG_ALLGEMEIN.cAllgemein.getMaxPosNrIncrement(filiale_tmp, Now.Year)
AvisoDAL.insertSendungEmpty(AvisoID, cnt, filiale_tmp, abfnr_tmp, 0, abfArt, tblSnd_AuftraggeberKdNr, tblSnd_Auftraggeber, fremd) ' INSERT
Next
Case Else
For cnt As Integer = 1 To gesAnzSnd
Dim abfnr_tmp As Object = DBNull.Value
getFilialeAndAbfertNr(cnt, filiale_tmp, abfnr_tmp, fremd) ' FilialeNr u AbfNr werden geladen
'IIf(filiale_tmp > 0, ADMIN.getMaxPosNrIncrement(filiale_tmp, Now.Year), 0)
'AvisoDAL.insertSendungEmpty(tmpId, cnt, filiale_tmp, abfnr_tmp, 0) ' INSERT
Dim tblSnd_AuftraggeberKdNr As Object = Nothing
Dim tblSnd_Auftraggeber As Object = Nothing
'If cbxAuftraggeberfurAlleSendungen.Checked Then
'If cboAuftraggeber.KdNr_value > 0 Then tblSnd_AuftraggeberKdNr = cboAuftraggeber.KdNr_value
' tblSnd_Auftraggeber = cboAuftraggeber.Text
' End If
Dim abfArt As Object = DBNull.Value
Select Case filiale_tmp
Case 4805 : abfArt = 26
' Case 4806 : abfArt = 9
Case 4811 : abfArt = 28
End Select
AvisoDAL.insertSendungEmpty(AvisoID, cnt, filiale_tmp, abfnr_tmp, 0, abfArt, tblSnd_AuftraggeberKdNr, tblSnd_Auftraggeber, fremd) ' INSERT
Next
End Select
reload(AvisoID)
Else
lblSendungsanzahl.Visible = True
End If
End Sub
Sub getFilialeAndAbfertNr(ByVal cnt, ByRef filialeNr, ByRef abfertigungsNr, ByRef fremd)
If cnt <= txtSendungen.Text Then
Select Case cboGrenzstelle.Text
Case "SUB" : filialeNr = 4803
Case "SBG" : filialeNr = 5003
Case "WAI" : filialeNr = 5103
Case "NKD" : filialeNr = 5303
Case "SFD" : filialeNr = 4839
End Select
ElseIf (cnt - txtSendungen.Text) <= txtSndFiskalAT.Text Then
filialeNr = 4805
ElseIf (cnt - txtSendungen.Text - txtSndFiskalAT.Text) <= txtSndFiskalDE.Text Then
filialeNr = 4811
ElseIf (cnt - txtSendungen.Text - txtSndFiskalAT.Text - txtSndFiskalDE.Text) <= txtSndFremd.Text Then
filialeNr = 0 : abfertigungsNr = DBNull.Value : fremd = True : Exit Sub
End If
If cbxPosNr.Checked Then abfertigungsNr = VERAG_PROG_ALLGEMEIN.cAllgemein.getMaxPosNrIncrement(filialeNr, Now.Year)
End Sub
Sub getFilialeAndAbfertNrIMEX(ByVal cnt, ByRef filialeNr, ByRef abfertigungsNr, ByRef fremd, ByRef abfart)
abfart = DBNull.Value
filialeNr = 5501
If cnt <= txtSendungen.Text Then
ElseIf (cnt - txtSendungen.Text) <= txtSndFiskalAT.Text Then
abfart = 26
ElseIf (cnt - txtSendungen.Text - txtSndFiskalAT.Text) <= txtSndFiskalDE.Text Then
abfart = 28
ElseIf (cnt - txtSendungen.Text - txtSndFiskalAT.Text - txtSndFiskalDE.Text) <= txtSndFremd.Text Then
abfertigungsNr = DBNull.Value : fremd = True : Exit Sub
End If
If cbxPosNr.Checked Then abfertigungsNr = VERAG_PROG_ALLGEMEIN.cAllgemein.getMaxPosNrIncrement(filialeNr, Now.Year)
End Sub
Function initSndAnzahl() As Integer
initSndAnzahl = 0
If IsNumeric(txtSendungen.Text) Then initSndAnzahl += txtSendungen.Text
If IsNumeric(txtSndFiskalAT.Text) Then initSndAnzahl += txtSndFiskalAT.Text
If IsNumeric(txtSndFiskalDE.Text) Then initSndAnzahl += txtSndFiskalDE.Text
If IsNumeric(txtSndFremd.Text) Then initSndAnzahl += txtSndFremd.Text
Label21.Text = initSndAnzahl
End Function
Private Sub txtSndFiskalDE_TextChanged(sender As Object, e As EventArgs) Handles txtSndFiskalDE.TextChanged, txtSendungen.TextChanged, txtSndFiskalAT.TextChanged
initSndAnzahl()
End Sub
Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
SDL.FormularManagerNEU.OPEN_FORM(SDL.FormularManagerArten.VerpflichtungserklärungFahrer, FraechterKdNr, {AvisoID}, True)
End Sub
Private Sub btnFormulare_Click(sender As Object, e As EventArgs) Handles btnFormulare.Click
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "IMEX" Then
Dim path = SDL.FormularManagerNEU.DispSendungslisteoListe(AvisoID, False)
If path <> "" Then Process.Start(path)
Else
Panel4.Visible = Not Panel4.Visible
End If
Exit Sub
' pnlFormulare.Visible = Not pnlFormulare.Visible
cntxtFormulare.Show(Windows.Forms.Cursor.Position)
' Dim ScreenPos As Point = Me.PointToScreen(New Point(0, 0))
'pnlFormulare.PointToClient = Windows.Forms.Cursor.Position
End Sub
Private Sub btnAutoNF_Click(sender As Object, e As EventArgs) Handles btnLkwBeleg.Click
'If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("AUTONACHERFASSUNG", Me.FindForm) Then
' Dim doAutoNacherf = (vbYes = MsgBox("Autonacherfassung durchführen?", vbYesNoCancel))
' If doAutoNacherf Then
' FUNC.AUTONACHERFASSUNG(Me, AvisoID)
' frmHauptfenster.avisoAktualisierenAktiveIdBehalten(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
' frmHauptfenster.Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
' End If
'End If
Dim PERSONAL As SDL.cPersonal = Nothing
Dim frmSecureLoginKassenbuch As New SDL.frmSecureLoginKassenbuch
If frmSecureLoginKassenbuch.ShowDialog(Me) = Windows.Forms.DialogResult.OK Then
PERSONAL = frmSecureLoginKassenbuch.PERSONAL
Dim frmBeleg As New SDL.frmBelegNeu(PERSONAL, Nothing, "E")
frmBeleg.AvisoID = AvisoID
' frmBeleg.SendungID = SENDUNG_LIST(CURRENT_INDEX).tblSnd_SendungID
AddHandler frmBeleg.LOADED, Sub()
Dim AVISO As cAviso = AvisoDAL.LesenAviso(AvisoID, "")
frmBeleg.BELEG.LKW_Kennzeichen = AVISO.LKW_Nr
frmBeleg.BELEG.Frachtführer = AVISO.Frächter
frmBeleg.BELEG.Ordnungsbegriff = AVISO.Frächter
' frmBeleg.BELEG.FilialenNr = Me.SENDUNG_LIST(Me.CURRENT_INDEX).FilialenNr
' frmBeleg.BELEG.AbfertigungsNr = Me.SENDUNG_LIST(Me.CURRENT_INDEX).AbfertigungsNr
frmBeleg.BELEG.LKW_Id = AVISO.AvisoID
frmBeleg.BELEG.LKW_Beleg = True
frmBeleg.init()
If AVISO.Frächter_KdNr > 0 Then
frmBeleg.kdFrachtf.KdNr = AVISO.Frächter_KdNr
frmBeleg.kdkunde.KdNr = AVISO.Frächter_KdNr
End If
' If sender Is Button13 Then frmBeleg.AddDusche(True)
End Sub
If frmBeleg.ShowDialog(Me) = Windows.Forms.DialogResult.OK Then
If frmBeleg.BELEG.gebucht Then
'initDataBinding()
End If
End If
End If
End Sub
Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
Dim f As New SDL.frmSendSMS(AVISO.FahrerHandy, "")
If AVISO IsNot Nothing Then
f.KundenNr = AVISO.Frächter_KdNr
f.Kunde = AVISO.Frächter
f.AvisoId = AVISO.AvisoID
End If
If f.ShowDialog(Me) = DialogResult.OK Then
If f.SMS IsNot Nothing Then
Dim FahrerHandy = If(f.SMS.sms_Vorwahl, "") & If(f.SMS.sms_Handynummer, "")
If FahrerHandy <> "" Then
SDL.cSMSOptions.insertVermerk(AvisoID, FahrerHandy, Now)
If If(AVISO.FahrerHandy, "") = "" Then
AVISO.FahrerHandy = FahrerHandy
AVISO.UPDATE_FahrerHandy(FahrerHandy)
End If
Vermerke_anzeigen()
End If
End If
End If
End Sub
Private Sub Button8_Click_2(sender As Object, e As EventArgs) Handles Button8.Click
SDL.FormularManagerNEU.OPEN_FORM(SDL.FormularManagerArten.SA_Gestellung, FraechterKdNr, {AvisoID})
End Sub
Private Sub btnKasse_LG_Click(sender As Object, e As EventArgs) Handles btnKasse_LG.Click
SDL.FormularManagerNEU.OPEN_FORM(SDL.FormularManagerArten.DispoListe, FraechterKdNr, {AvisoID})
Panel4.Visible = False
End Sub
Private Sub btnKasse_User_Click(sender As Object, e As EventArgs) Handles btnKasse_User.Click
Dim path = SDL.FormularManagerNEU.DispSendungslisteoListe(AvisoID, False)
If path <> "" Then
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "IMEX"
Process.Start(path)
Case Else
Try
Dim outl As New Outlook.Application
Dim Mail As Microsoft.Office.Interop.Outlook.MailItem
Mail = outl.CreateItem(0)
Mail.Subject = "Dispoliste LKW-Nr: " & AVISO.LKW_Nr
' Mail.HTMLBody = "Sehr geehrte Damen und Herren,
anbei erhalten Sie die Rechnung Nr. " & RECHNUNG.RechnungsNr & "."
Mail.Attachments.Add(path, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue, , "Dispoliste.pdf")
Mail.Display()
Catch ex As Exception
MsgBox("Fehler bim Öffnen des Mail-Programmes. PDF wird geladen!")
Process.Start(path)
End Try
End Select
End If
Panel4.Visible = False
End Sub
End Class