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) pnl.BackColor = VERAG_PROG_ALLGEMEIN.cAllgemein.cSPECIFIC.FIRMA_BgColor txtLKW_Nr.BackColor = VERAG_PROG_ALLGEMEIN.cAllgemein.cSPECIFIC.FIRMA_BgColor txtLKW_Nr.ForeColor = VERAG_PROG_ALLGEMEIN.cAllgemein.cSPECIFIC.FIRMA_ForeColor 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.USRKURZNAME <> "ADMIN" Then ' tbcntlVermerke.TabPages.Remove(tbAnhang) '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 Button18.Visible = False Select Case tbcntlVermerke.SelectedIndex Case 0, 1, 2 : Vermerke_anzeigen2(rowindex) Case 3 Button18.Visible = True Dim hSQL As String = " SELECT [anh_id],[anh_Name],[anh_docId],[anh_Art],[anh_Typ] FROM [tblAvisoAnhaenge] WHERE [anh_AvisoId]='" & AvisoID & "' AND isnull(anh_SendungsId,0) <=0 order by [anh_Reihenfolge],[anh_id]" gridVermerke.DataSource = VermerkeDAL.Anzeigen_Vermerke(hSQL) If gridVermerke.RowCount = 0 Then gridVermerke.Columns.Clear() : Exit Sub With gridVermerke .RowTemplate.MinimumHeight = 20 .AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells .Columns("anh_id").Visible = False 'VermerkID nicht anzeigen .Columns("anh_docId").Visible = False 'AvisoID nicht anzeigen .Columns("anh_Name").MinimumWidth = 150 .Columns("anh_Name").HeaderText = "Name" .Columns("anh_Name").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill .Columns("anh_Art").MinimumWidth = 50 .Columns("anh_Art").HeaderText = "Art" .Columns("anh_Art").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter .Columns("anh_Typ").Width = 60 .Columns("anh_Typ").HeaderText = "Typ" .Columns("anh_Art").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter End With End Select End Sub Private Sub Vermerke_anzeigen2(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 Select Case tbcntlVermerke.SelectedIndex Case 0, 1 Case 2 End Select '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() Case "55" myVermerk.Hinweis_Vermerk = CStr(gridVermerke.Rows(e.RowIndex).Cells("Hinweis_Vermerk").Value).Replace("angefordert", "erhalten") myVermerk.VermerkCodeId = 56 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 If gridVermerke.Columns("VermerkeOptions") Is Nothing Then Exit Sub 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 Case 55 If Not existCodeInGridVermerke(56, CStr(r.Cells("Hinweis_Vermerk").Value)) Then optionCell.Value = "Rg-Best. erhalten" optionCell.ToolTipText = "Klicken Sie hier, um den Vermerk 'Rg-Best. erhalten' einzutragen." End If End Select End If Next Catch ex As Exception MsgBox(ex.Message & ex.StackTrace) 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() 'If Not Application.OpenForms.Item("frmSendungsdetails") Is Nothing Then ' Application.OpenForms.Item("frmSendungsdetails").BringToFront() ' MsgBox("Sendugns-Fenster bereits geöffnet!") ' Exit Sub 'Else ' Dim frmSendungsdetails As New frmSendungsdetailsNEU(AvisoID, sendId) ' frmSendungsdetails.Show(Me) 'End If openSnd(sendId) 'Dim frmSendungsdetails As New frmSendungsdetailsNEU(AvisoID, sendId) 'frmSendungsdetails.ShowDialog() 'Me) 'initDgvSendungen() End Sub Private Sub gridVermerke_CellDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles gridVermerke.CellDoubleClick Try If tbcntlVermerke.SelectedTab Is tbAnhang Then If gridVermerke.SelectedRows.Count > 0 Then Process.Start(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(gridVermerke.SelectedRows(0).Cells("anh_docId").Value)) End If End If Catch ex As Exception MsgBox(ex.Message & ex.StackTrace) End Try End Sub Public Sub openSnd(sendId) For Each openForm In Application.OpenForms() If TypeOf (openForm) Is frmSendungsdetailsNEU Then MsgBox("Sendungsfenster bereits geöffnet!") CType(openForm, frmSendungsdetailsNEU).BringToFront() Exit Sub End If Next ' Dim frmGrayOut = VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.grayoutForm() Dim frmSendungsdetails As New frmSendungsdetailsNEU(AvisoID, sendId) frmSendungsdetails.Show() 'Dialog() ' 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() openSnd(sendId) '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 tbcntlVermerke.TabPages(3).Text = "Anhang (" & ADMIN.getValueTxtBySql("SELECT COUNT(*) FROM [tblAvisoAnhaenge] WHERE [anh_AvisoId]='" & AvisoID & "' AND isnull(anh_SendungsId,0) <=0 ", "AVISO") & ")" 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 Try 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 Catch ex As Exception MsgBox(ex.Message & ex.StackTrace) End Try 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 & 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 & ex.StackTrace) 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 Button9.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 beim Öffnen des Mail-Programmes. PDF wird geladen!") Process.Start(path) End Try End Select End If Panel4.Visible = False End Sub Private Sub Button18_Click(sender As Object, e As EventArgs) Handles Button18.Click Dim f As New frmSendungAnhangImport(AvisoID) f.Show(Me) End Sub Private Sub Button9_Click(sender As Object, e As EventArgs) Handles btnKasse_User.Click Dim path = SDL.FormularManagerNEU.DispSendungslisteoListe(AvisoID, False) If path <> "" Then Process.Start(path) End Sub End Class