From cf6e1fd0cbe87c5c762b5caaf427c79924b027da Mon Sep 17 00:00:00 2001 From: Andreas Luxbauer Date: Thu, 26 Jan 2023 11:32:06 +0100 Subject: [PATCH] =?UTF-8?q?SDL=20Abholung=20Mail=20erg=C3=A4nzt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SDL/My Project/AssemblyInfo.vb | 4 +- SDL/kunden/Vorauskasse/frmVorauskasse.vb | 64 +++++++++++++++----- SDL/mdm/SDLAbholung/frmSDLAbholungEintrag.vb | 2 +- SDL/mdm/SDLAbholung/usrCntlSDLAbholung.vb | 41 ++++++++++--- 4 files changed, 86 insertions(+), 25 deletions(-) diff --git a/SDL/My Project/AssemblyInfo.vb b/SDL/My Project/AssemblyInfo.vb index 1228f136..e0b6d609 100644 --- a/SDL/My Project/AssemblyInfo.vb +++ b/SDL/My Project/AssemblyInfo.vb @@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices ' übernehmen, indem Sie "*" eingeben: ' - - + + diff --git a/SDL/kunden/Vorauskasse/frmVorauskasse.vb b/SDL/kunden/Vorauskasse/frmVorauskasse.vb index 281611a6..3829951f 100644 --- a/SDL/kunden/Vorauskasse/frmVorauskasse.vb +++ b/SDL/kunden/Vorauskasse/frmVorauskasse.vb @@ -213,7 +213,7 @@ Public Class frmVorauskasse End If 'sqlstr &= " SELECT " & TopMax & " [vk_id],[vk_FilialeNr],[vk_AbfertigungsNr],[vk_Datum],[vk_LKW],[vk_KdNr],[vk_Firma],[vk_QS_Sachbearbeiter],[vk_QS_Bemerkung],vk_Betrag,[vk_GeldEingetroffen],[vk_BH_Sachbearbeiter],[vk_BH_Bemerkung],[vk_BH_DatumGeldeingang],vk_storno,vk_Freigegeben " & LKWAnkunft & " FROM tblVorauskassen WHERE 1=1 " - sqlstr &= " SELECT " & TopMax & " [vk_id],[vk_FilialeNr],[vk_AbfertigungsNr],[vk_Datum],[vk_LKW],[vk_KdNr],[vk_Firma],[vk_QS_Sachbearbeiter],[vk_QS_Bemerkung],vk_Betrag,[vk_GeldEingetroffen],[vk_BH_Sachbearbeiter],[vk_BH_Bemerkung],[vk_BH_DatumGeldeingang],vk_storno,vk_Freigegeben FROM tblVorauskassen " & LKWAnkunft & " " + sqlstr &= " SELECT " & TopMax & " [vk_id],[vk_FilialeNr],[vk_AbfertigungsNr],[vk_Datum],[vk_LKW],[vk_KdNr],[vk_Firma],[vk_QS_Sachbearbeiter],vk_QS_SachbearbeiterId,[vk_QS_Bemerkung],vk_Betrag,[vk_GeldEingetroffen],[vk_BH_Sachbearbeiter],[vk_BH_Bemerkung],[vk_BH_DatumGeldeingang],vk_storno,vk_Freigegeben FROM tblVorauskassen " & LKWAnkunft & " " ' MsgBox(sqlstr & getVorauskasseWhere() & " ORDER BY vk_Datum desc ") With MyDatagridview1 @@ -296,6 +296,7 @@ Public Class frmVorauskasse .MultiSelect = False .Columns("vk_id").Visible = False + .Columns("vk_QS_SachbearbeiterId").Visible = False .Columns("vk_FilialeNr").Width = 45 .Columns("vk_FilialeNr").HeaderText = "Filiale" .Columns("vk_FilialeNr").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter @@ -378,7 +379,7 @@ Public Class frmVorauskasse Dim VK As New VERAG_PROG_ALLGEMEIN.cVorauskasse(MyDatagridview1.SelectedRows(0).Cells("vk_id").Value) VK.SET_GELDEINGANG(True, txtBemerkung.Text) Dim VermerkIDNew = -1 - cVorauskasseOptions.insertVermerk(MyDatagridview1.SelectedRows(0).Cells("vk_FilialeNr").Value, MyDatagridview1.SelectedRows(0).Cells("vk_AbfertigungsNr").Value, 14,,, VermerkIDNew,,, MyDatagridview1.SelectedRows(0).Cells("vk_id").Value) + cVorauskasseOptions.insertVermerk(MyDatagridview1.SelectedRows(0).Cells("vk_FilialeNr").Value, MyDatagridview1.SelectedRows(0).Cells("vk_AbfertigungsNr").Value, 14,,, VermerkIDNew,,, MyDatagridview1.SelectedRows(0).Cells("vk_id").Value, MyDatagridview1.SelectedRows(0).Cells("vk_QS_SachbearbeiterId").Value) If VK.vk_VermerkId IsNot Nothing AndAlso VermerkIDNew > 0 Then Dim cVermerkeDAL As New VERAG_PROG_ALLGEMEIN.cVermerkeDAL @@ -577,7 +578,7 @@ End Class Public Class cVorauskasseOptions - Shared Sub insertVermerk(FilialenNr, AbfertigungsNr, VermerkCodeId, Optional DatumTmp = Nothing, Optional Freigegeben = False, Optional ByRef VermerkId = -1, Optional tblSnd_SendungID = -1, Optional vk_Betrag = Nothing, Optional VorauskasseId = Nothing) + Shared Sub insertVermerk(FilialenNr, AbfertigungsNr, VermerkCodeId, Optional DatumTmp = Nothing, Optional Freigegeben = False, Optional ByRef VermerkId = -1, Optional tblSnd_SendungID = -1, Optional vk_Betrag = Nothing, Optional VorauskasseId = Nothing, Optional vk_QS_SachbearbeiterId = Nothing) Try If vk_Betrag Is Nothing Then vk_Betrag = 0 @@ -613,10 +614,12 @@ Public Class cVorauskasseOptions myVermerk.VorauskasseId = VorauskasseId myVermerk.Mitarbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME & " (AUTO)" myVermerk.MitarbeiterId = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID + Dim betragTXT = If(CDbl(vk_Betrag) > 0, " (" & CDbl(vk_Betrag).ToString("C2") & ")", "") + Dim betragTXT2 = If(CDbl(vk_Betrag) > 0, ": " & CDbl(vk_Betrag).ToString("C2") & "", "") Select Case VermerkCodeId - Case 13 : myVermerk.Hinweis_Vermerk = "Vorauskasse angefordert" & If(CDbl(vk_Betrag) > 0, " (" & CDbl(vk_Betrag).ToString("C2") & ")", "") - Case 14 : myVermerk.Hinweis_Vermerk = "Vorauskasse erhalten" : insertBenachrichtigung(myVermerk.Hinweis_Vermerk, myVermerk.AvisoID, myVermerk.SendungID) - Case 59 : myVermerk.Hinweis_Vermerk = "Vorauskasse freigegeben" : insertBenachrichtigung(myVermerk.Hinweis_Vermerk, myVermerk.AvisoID, myVermerk.SendungID) + Case 13 : myVermerk.Hinweis_Vermerk = "Vorauskasse angefordert" & betragTXT + Case 14 : myVermerk.Hinweis_Vermerk = "Vorauskasse erhalten" : insertBenachrichtigung(myVermerk.Hinweis_Vermerk & betragTXT2, myVermerk.AvisoID, myVermerk.SendungID, vk_QS_SachbearbeiterId) + Case 59 : myVermerk.Hinweis_Vermerk = "Vorauskasse freigegeben" : insertBenachrichtigung(myVermerk.Hinweis_Vermerk & betragTXT2, myVermerk.AvisoID, myVermerk.SendungID, vk_QS_SachbearbeiterId) Case Else : Exit Sub End Select If VermerkCodeId IsNot Nothing Then myVermerk.VermerkCodeId = VermerkCodeId @@ -631,7 +634,7 @@ Public Class cVorauskasseOptions Shared Sub delTop1Vermerk(FilialenNr, AbfertigungsNr, VermerkCodeId) Try Dim veragSQL As New VERAG_PROG_ALLGEMEIN.SQL - Dim dt As DataTable = veragSQL.loadDgvBySql("SELECT TOP 1 [tblSnd_SendungID] FROM [tblSendungen] where AbfertigungsNr='" & AbfertigungsNr & "' and FilialenNr='" & FilialenNr & "'", "AVISO") + Dim dt As DataTable = veragSQL.loadDgvBySql("Select TOP 1 [tblSnd_SendungID] FROM [tblSendungen] where AbfertigungsNr='" & AbfertigungsNr & "' and FilialenNr='" & FilialenNr & "'", "AVISO") If dt.Rows.Count = 0 Then Exit Sub If Not IsNumeric(dt.Rows(0)("tblSnd_SendungID")) Then Exit Sub @@ -654,18 +657,51 @@ Public Class cVorauskasseOptions MsgBox(ex.Message & ex.StackTrace) End Try End Sub - Shared Sub insertBenachrichtigung(VermerkTxt, AvisoId, SendungID) + Shared Sub insertBenachrichtigung(VermerkTxt, AvisoId, SendungID, vk_QS_SachbearbeiterId) Try Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL - Dim sendToID = SQL.DLookup("LetzterMitarbeiterId", "tblSendungen", "tblSnd_SendungID='" & SendungID & "'", "AVISO") + Dim sendToID = -1 Dim art = "B" - If sendToID < 0 OrElse (Not VERAG_PROG_ALLGEMEIN.cSession.IS_ONLINE(sendToID)) Then - sendToID = SQL.DLookup("tblSnd_TeamId", "tblSendungen", "tblSnd_SendungID='" & SendungID & "'", "AVISO") - art = "T" + + 'Wenn Benutzer der Vorauskasse nicht online, dann Benutzer der Sendung... + If vk_QS_SachbearbeiterId IsNot Nothing Then + sendToID = vk_QS_SachbearbeiterId + If sendToID < 0 OrElse (Not VERAG_PROG_ALLGEMEIN.cSession.IS_ONLINE(sendToID)) Then + sendToID = SQL.DLookup("LetzterMitarbeiterId", "Aviso", "AvisoId='" & AvisoId & "'", "AVISO") + art = "B" + End If End If - '6 = VK OK - VERAG_PROG_ALLGEMEIN.cAvisoBenachrichtigungen.INSERT_BENACHRICHTIGUNG(AvisoId, SendungID, 6, art, sendToID, "von '" & VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME & "'", 0, , VermerkTxt) + 'Wenn Benutzer der Sendung nicht online, dann Benutzer der Sendung .. + If sendToID < 0 OrElse (Not VERAG_PROG_ALLGEMEIN.cSession.IS_ONLINE(sendToID)) Then + sendToID = SQL.DLookup("LetzterMitarbeiterId", "Aviso", "AvisoId='" & AvisoId & "'", "AVISO") + art = "B" + End If + + 'Wenn Benutzer des LKWs nicht online, Team... + Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA ' --> Bezieht sich auf BU MA + Case "IMEX" ' Bie IMEX kommen die MA durhc verschobene Dienstzeiten oft später + Case Else + If sendToID < 0 OrElse (Not VERAG_PROG_ALLGEMEIN.cSession.IS_ONLINE(sendToID)) Then + sendToID = SQL.DLookup("tblSnd_TeamId", "tblSendungen", "tblSnd_SendungID='" & SendungID & "'", "AVISO") + art = "T" + End If + End Select + + 'Wenn gefunden + If sendToID >= 0 Then + + Dim status = SQL.DLookup("Status", "Aviso", "AvisoID='" & AvisoId & "'", "AVISO") + + Select Case status + 'Case VERAG_PROG_ALLGEMEIN.cGlobal.Status_Ankunft, VERAG_PROG_ALLGEMEIN.cGlobal.Status_Vorbereitet, VERAG_PROG_ALLGEMEIN.cGlobal.Status_Vorgeschrieben,,VERAG_PROG_ALLGEMEIN.cGlobal.erfasst Nue + Case VERAG_PROG_ALLGEMEIN.cGlobal.Status_NichtEingetroffen, VERAG_PROG_ALLGEMEIN.cGlobal.Status_Freigegeben + 'Nicht + Case Else + '6 = VK OK + VERAG_PROG_ALLGEMEIN.cAvisoBenachrichtigungen.INSERT_BENACHRICHTIGUNG(AvisoId, SendungID, 6, art, sendToID, "Eingang Vorauskasse ('" & VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME & "')", 0, , VermerkTxt) + End Select + End If Catch ex As Exception MsgBox(ex.Message & ex.StackTrace) diff --git a/SDL/mdm/SDLAbholung/frmSDLAbholungEintrag.vb b/SDL/mdm/SDLAbholung/frmSDLAbholungEintrag.vb index e00c5352..4cba3337 100644 --- a/SDL/mdm/SDLAbholung/frmSDLAbholungEintrag.vb +++ b/SDL/mdm/SDLAbholung/frmSDLAbholungEintrag.vb @@ -566,7 +566,7 @@ Public Class frmSDLAbholungEintrag ' Mail.To = If(KdFirma.KdData_ADRESSEN IsNot Nothing, KdFirma.KdData_ADRESSEN.E_Mail, "") Select Case KdFirma.KdNr.ToString.Substring(0, 1) Case "1" : Mail.To = "maut.tr@verag.ag" - Case "2" : Mail.To = "ma@verag.ag" : Mail.CC = "maut.ro@verag.ag" + Case "2" : Mail.To = "ma@verag.ag" : Mail.CC = "maut.ro@verag.ag;ft@verag.ag" Case "3" : Mail.To = "z.batinic@verag.ag" Case "4" : Mail.To = "z.batinic@verag.ag" Case Else diff --git a/SDL/mdm/SDLAbholung/usrCntlSDLAbholung.vb b/SDL/mdm/SDLAbholung/usrCntlSDLAbholung.vb index 09e16d8c..399da393 100644 --- a/SDL/mdm/SDLAbholung/usrCntlSDLAbholung.vb +++ b/SDL/mdm/SDLAbholung/usrCntlSDLAbholung.vb @@ -1,4 +1,6 @@ -Public Class usrCntlSDLAbholung +Imports GrapeCity.ActiveReports.ReportsCore.Tools + +Public Class usrCntlSDLAbholung Dim FahrerAbholAuftrag = False Dim MONAT As Date = CDate("01." & Now.Month & "." & Now.Year) '.AddMonths(-1) @@ -146,7 +148,7 @@ Dim sqlstr As String = "" - sqlstr &= " SELECT " & TopMax & " [sdlAb_Id],[sdlAb_Erfasst],[sdlAb_ErfassungSachbearbeiter],[sdlAb_ErfassungSachbearbeiterId],[sdlAb_Abgeholt],[sdlAb_AbholungKdNr],[sdlAb_AbholungFirma],[sdlAb_AbholungLKWKz],[sdlAb_AbholungFahrername],[sdlAb_AbholungFahrerSMS],[sdlAb_Abholung],[sdlAb_AbholungSachbearbeiter],[sdlAb_AbholungSachbearbeiterId],[sdlAb_Storniert],[sdlAb_AbholungVermerk],[sdlAb_FahrerAbholAuftrag] FROM [tblSDLAbholung] WHERE 1=1 " + sqlstr &= " SELECT " & TopMax & " [sdlAb_Id],[sdlAb_Erfasst],[sdlAb_ErfassungSachbearbeiter],[sdlAb_AbholungKdNr],[sdlAb_AbholungFirma],[sdlAb_AbholungVermerk],[sdlAb_AbholungLKWKz],[sdlAb_AbholungFahrername],[sdlAb_AbholungFahrerSMS],[sdlAb_Abholung],[sdlAb_AbholungSachbearbeiter],[sdlAb_AbholungSachbearbeiterId],[sdlAb_Storniert],[sdlAb_FahrerAbholAuftrag],[sdlAb_ErfassungSachbearbeiterId],[sdlAb_Abgeholt] FROM [tblSDLAbholung] WHERE 1=1 " With MyDatagridview1 ' .DataSource = myTable @@ -218,7 +220,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AuftrNr", txtAuftragsnr.Text.Replace("*", "%"))) list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PersonalnummerErf", cboSachbearbeiterErf._value)) - list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PersonalnummerAbh", cboSachbearbeiterAbh._value)) + list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PersonalnummerAbh", cboSachbearbeiterAbh._value)) list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("LKW", txtLKW.Text & "%".Replace("*", "%"))) list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Firma", "%" & txtFirma.Text & "%")) list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Fahrer", txtFahrer.Text & "%".Replace("*", "%"))) @@ -255,14 +257,14 @@ .Columns("sdlAb_ErfassungSachbearbeiterId").Visible = False .Columns("sdlAb_AbholungSachbearbeiterId").Visible = False - + '.Columns("sdlAb_ErfassungVermerk").MinimumWidth = 100 ' .Columns("sdlAb_ErfassungVermerk").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill '.Columns("sdlAb_ErfassungVermerk").HeaderText = "Vermerk" .Columns("sdlAb_AbholungLKWKz").Width = 110 .Columns("sdlAb_AbholungLKWKz").HeaderText = "LKW Abholung" - + .Columns("sdlAb_AbholungFahrername").Width = 150 .Columns("sdlAb_AbholungFahrername").HeaderText = "Fahrer Abholung" @@ -278,14 +280,16 @@ .Columns("sdlAb_Abholung").Width = 120 .Columns("sdlAb_Abholung").HeaderText = "Datum" - + .Columns("sdlAb_Abgeholt").Width = 50 .Columns("sdlAb_Abgeholt").HeaderText = "Abgeholt" .Columns("sdlAb_AbholungVermerk").MinimumWidth = 100 .Columns("sdlAb_AbholungVermerk").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill .Columns("sdlAb_AbholungVermerk").HeaderText = "Vermerk" - + .Columns("sdlAb_AbholungVermerk").DefaultCellStyle.ForeColor = Color.Red + .Columns("sdlAb_AbholungVermerk").DefaultCellStyle.Font = New Font(.Font.FontFamily, Font.Size, FontStyle.Bold) + .Columns("sdlAb_Storniert").HeaderText = "Storno" .Columns("sdlAb_Storniert").Width = 45 @@ -295,6 +299,8 @@ .Columns("sdlAb_FahrerAbholAuftrag").HeaderText = "ZB Fahrer" .Columns("sdlAb_FahrerAbholAuftrag").Width = 60 ' lblErgebnis.Text = "Ergebnise: " & .RowCount + + colorizeCells() End With End Sub @@ -549,6 +555,25 @@ ' cVorauskasseOptions.insertVermerk(MyDatagridview1.SelectedRows(0).Cells("vk_FilialeNr").Value, MyDatagridview1.SelectedRows(0).Cells("vk_AbfertigungsNr").Value, 14) End If End Sub + + + Private Sub MyDatagridview1_Layout(sender As Object, e As LayoutEventArgs) Handles MyDatagridview1.Layout + colorizeCells() + End Sub + + Sub colorizeCells() + Dim kdNrTmp = "-1" + Dim bgColor = Color.White + + For Each r As DataGridViewRow In MyDatagridview1.Rows + ' MsgBox(r.Cells("sdlAb_AbholungKdNr").Value & " - " & kdNrTmp) + If r.Cells("sdlAb_AbholungKdNr").Value <> kdNrTmp Then + kdNrTmp = r.Cells("sdlAb_AbholungKdNr").Value + bgColor = If(bgColor = Color.White, Color.LightGoldenrodYellow, Color.White) + End If + r.DefaultCellStyle.BackColor = bgColor + + Next + End Sub End Class - \ No newline at end of file