From 13dca138c24957144e106a803662fe0f3f2f8321 Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Fri, 30 Dec 2022 15:58:41 +0100 Subject: [PATCH] DIenstplan: Excelausausgabe (Woche) --- UID/Dienstplan/frmDienstplanVariabel.vb | 328 ++++++++---------------- UID/My Project/Resources.Designer.vb | 2 +- UID/My Project/Resources.resx | 2 +- UID/cSqlDb.vb | 7 +- 4 files changed, 117 insertions(+), 222 deletions(-) diff --git a/UID/Dienstplan/frmDienstplanVariabel.vb b/UID/Dienstplan/frmDienstplanVariabel.vb index d784c96..d134d5d 100644 --- a/UID/Dienstplan/frmDienstplanVariabel.vb +++ b/UID/Dienstplan/frmDienstplanVariabel.vb @@ -1,4 +1,5 @@ Imports System.Globalization +Imports System.Security.Authentication.ExtendedProtection Imports Microsoft.Office.Interop Public Class frmDienstplanVariabel @@ -398,7 +399,7 @@ Public Class frmDienstplanVariabel Dim SCHICHT As New cDienstplanSchicht(r("dedet_id")) Dim u As New usrCntlDienstWoche(SCHICHT, SETTINGS) - If True Then 'SCHICHT.dedet_Splitschicht = False Then 'Splitschichten nicht im als DGV anzeigen + If True Then 'SCHICHT.dedet_Splitschicht = False Then 'Splitschichten nicht im DGV anzeigen u.Height = (FlowLayoutPanel.Height - 5) * (SCHICHT.dedet_ProzentGrafik / 100) FlowLayoutPanel.Controls.Add(u) 'MsgBox(SCHICHT.dedet_info) @@ -1529,6 +1530,8 @@ Public Class frmDienstplanVariabel Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click + Dim cc = New ColorConverter + Dim DPmitSplitschichten As Boolean = False Dim txt As String = Button4.Text Button4.Text = txt & " (0 %)" @@ -1543,220 +1546,95 @@ Public Class frmDienstplanVariabel ' FirstDayOfWeek.Monday, FirstWeekOfYear.FirstFourDays) - - If Not My.Computer.FileSystem.DirectoryExists(Environment.GetFolderPath(Environment.SpecialFolder.Personal) & "\VERAG\tmp\") Then My.Computer.FileSystem.CreateDirectory(Environment.GetFolderPath(Environment.SpecialFolder.Personal) & "\VERAG\tmp\") End If Dim strFileName As String = Environment.GetFolderPath(Environment.SpecialFolder.Personal) & "\VERAG\tmp\tmp.xlsx" Try + If DPcontainsSplitschichten() Then + If vbYes = MsgBox("Dieser Dienstplan enthält Splitschichten." & vbCrLf & "DP mit Splitschichten ausgeben?", vbYesNo) Then + DPmitSplitschichten = True + End If + End If + + With exclApp + .Visible = False + Datei = .Workbooks.Open(AppDomain.CurrentDomain.BaseDirectory & "Resources\Dienstplan Variabel.xlsx") + + Blatt = Datei.Worksheets("DIENSTPLAN") + + Dim d As Date = CalendarWeek(aktWoche, aktJahr) + Blatt.Range("B2").Value = "MONTAG, " & d.ToString("dd.MMM") : d = d.AddDays(1) + Blatt.Range("D2").Value = "DIENSTAG, " & d.ToString("dd.MMM") : d = d.AddDays(1) + Blatt.Range("F2").Value = "MITTWOCH, " & d.ToString("dd.MMM") : d = d.AddDays(1) + Blatt.Range("H2").Value = "DONNERSTAG, " & d.ToString("dd.MMM") : d = d.AddDays(1) + Blatt.Range("J2").Value = "FREITAG, " & d.ToString("dd.MMM") : d = d.AddDays(1) + Blatt.Range("L2").Value = "SAMSTAG, " & d.ToString("dd.MMM") : d = d.AddDays(1) + Blatt.Range("N2").Value = "SO, " & d.ToString("dd.MMM") + + If SCHICHT.contains("ROT") Then + Blatt.Range("A3").Font.Color = Color.Red + Blatt.Range("H1").Font.Color = Color.Red + Blatt.Range("H1").Value = "ROT" + Else + Blatt.Range("A3").Font.Color = Color.Blue + Blatt.Range("H1").Font.Color = Color.Blue + Blatt.Range("H1").Value = "BLAU" + End If + Blatt.Range("A2").Value = "KW " & aktWoche + + Button4.Text = txt & " (10 %)" - With exclApp - - .Visible = False - Datei = .Workbooks.Open(AppDomain.CurrentDomain.BaseDirectory & "Resources\Dienstplan Variabel.xlsx") - - Blatt = Datei.Worksheets("DIENSTPLAN") - - Dim d As Date = CalendarWeek(aktWoche, aktJahr) - Blatt.Range("B2").Value = "MONTAG, " & d.ToString("dd.MMM") : d = d.AddDays(1) - Blatt.Range("D2").Value = "DIENSTAG, " & d.ToString("dd.MMM") : d = d.AddDays(1) - Blatt.Range("F2").Value = "MITTWOCH, " & d.ToString("dd.MMM") : d = d.AddDays(1) - Blatt.Range("H2").Value = "DONNERSTAG, " & d.ToString("dd.MMM") : d = d.AddDays(1) - Blatt.Range("J2").Value = "FREITAG, " & d.ToString("dd.MMM") : d = d.AddDays(1) - Blatt.Range("L2").Value = "SAMSTAG, " & d.ToString("dd.MMM") : d = d.AddDays(1) - Blatt.Range("N2").Value = "SO, " & d.ToString("dd.MMM") - - If SCHICHT.contains("ROT") Then - Blatt.Range("A3").Font.Color = Color.Red - Blatt.Range("H1").Font.Color = Color.Red - Blatt.Range("H1").Value = "ROT" - Else - Blatt.Range("A3").Font.Color = Color.Blue - Blatt.Range("H1").Font.Color = Color.Blue - Blatt.Range("H1").Value = "BLAU" - End If - Blatt.Range("A2").Value = "KW " & aktWoche - - Button4.Text = txt & " (10 %)" + Dim pos As Integer = 0 + Dim zeilenheader = 1 - Dim pos As Integer = 0 - Dim zeilenheader = 1 - - 'BORDER - pos = 14 - For Each s In BEN_SCHICHTEN - If s.SCHICHT.dedet_Hauptsplitschicht = True Then - Blatt.Range("A" & pos).Value = s.SCHICHT.dedet_bezeichnungExcel - ' Blatt.Range("A" & pos).Style= = s.SCHICHT.dedet_bezeichnungExcel - Blatt.Range("A" & pos + 1).Value = s.SCHICHT.dedet_bezeichnungExcel2 - Blatt.Range("A" & pos + 2).Value = s.SCHICHT.dedet_bezeichnungExcel3 - pos += s.SCHICHT.dedet_ZeilenExcel + zeilenheader - End If - - Try - ' MsgBox("A14:N" & pos - 1) - Blatt.Range("A14:N" & pos - 1).BorderAround(Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous, Microsoft.Office.Interop.Excel.XlBorderWeight.xlMedium, Microsoft.Office.Interop.Excel.XlColorIndex.xlColorIndexAutomatic, Microsoft.Office.Interop.Excel.XlColorIndex.xlColorIndexAutomatic) - Catch ex As Exception - - End Try - Next - - 'Zeilenheader - pos = 14 - For Each s In BEN_SCHICHTEN - For Each z In s.SCHICHT.ZEITEN - Select Case z.dsz_woTag.ToUpper - Case "MO" : Blatt.Range("B" & pos).Value = " " & z.dsz_von & " - " & z.dsz_bis & " Uhr" - Case "DI" : Blatt.Range("D" & pos).Value = " " & z.dsz_von & " - " & z.dsz_bis & " Uhr" - Case "MI" : Blatt.Range("F" & pos).Value = " " & z.dsz_von & " - " & z.dsz_bis & " Uhr" - Case "DO" : Blatt.Range("H" & pos).Value = " " & z.dsz_von & " - " & z.dsz_bis & " Uhr" - Case "FR" : Blatt.Range("J" & pos).Value = " " & z.dsz_von & " - " & z.dsz_bis & " Uhr" - Case "SA" : Blatt.Range("L" & pos).Value = " " & z.dsz_von & " - " & z.dsz_bis & " Uhr" - Case "SO" : Blatt.Range("N" & pos).Value = " " & z.dsz_von & " - " & z.dsz_bis & " Uhr" - End Select - Next - Blatt.Range("B" & pos & ":N" & pos).Interior.Color = Color.FromArgb(197, 217, 241) - pos += s.SCHICHT.dedet_ZeilenExcel + zeilenheader - Next - - 'MONTAG - pos = 15 - For Each s In BEN_SCHICHTEN - If s.SCHICHT.dedet_Hauptsplitschicht = True Then - Dim z = s.SCHICHT.dedet_ZeilenExcel - Dim Tag(z * 2 - 1) As String - - For i = 0 To z - 1 : Tag(i) = "B" & i + pos : Next - For i = 0 To z - 1 : Tag(i + z) = "C" & i + pos : Next - - Blatt = fill(s.dgv_Mo, Tag, Blatt, "MO", s.SCHICHT) - pos += z + zeilenheader - End If - - Next - - Dim Zeile_ZA As Integer = 45 - Dim Zeile_URL As Integer = 47 - Dim Zeile_SO As Integer = 53 - Dim Zeile_KS As Integer = 55 - - Dim ZAMo(4) As String - For i = 0 To 1 : ZAMo(i) = "B" & i + Zeile_ZA : Next - For i = 0 To 1 : ZAMo(i + 2) = "C" & i + Zeile_ZA : Next - - Dim UrlMo(8) As String - For i = 0 To 3 : UrlMo(i) = "B" & i + Zeile_URL : Next - For i = 0 To 3 : UrlMo(i + 4) = "C" & i + Zeile_URL : Next - - Dim SOMo(4) As String - For i = 0 To 1 : SOMo(i) = "B" & i + Zeile_SO : Next - For i = 0 To 1 : SOMo(i + 2) = "C" & i + Zeile_SO : Next - - Dim KSMo(6) As String - For i = 0 To 2 : KSMo(i) = "B" & i + Zeile_KS : Next - For i = 0 To 2 : KSMo(i + 3) = "C" & i + Zeile_KS : Next - - - Blatt = fill(dgvZA_Mo, ZAMo, Blatt) - Blatt = fill(dgvUrl_Mo, UrlMo, Blatt) - Blatt = fill(dgvDR_Mo, SOMo, Blatt) - Blatt = fill(dgvKS_Mo, KSMo, Blatt) - - Button4.Text = txt & " (25 %)" - - - - - - Button4.Text = txt & " (100 %)" - - .Visible = True - .DisplayAlerts = Word.WdAlertLevel.wdAlertsNone - Try : Datei.SaveAs(strFileName) : Catch : End Try - - End With - - - - Else - - - With exclApp - .Visible = False - Datei = .Workbooks.Open(AppDomain.CurrentDomain.BaseDirectory & "Resources\Dienstplan Variabel.xlsx") - - Blatt = Datei.Worksheets("DIENSTPLAN") - - Dim d As Date = CalendarWeek(aktWoche, aktJahr) - Blatt.Range("B2").Value = "MONTAG, " & d.ToString("dd.MMM") : d = d.AddDays(1) - Blatt.Range("D2").Value = "DIENSTAG, " & d.ToString("dd.MMM") : d = d.AddDays(1) - Blatt.Range("F2").Value = "MITTWOCH, " & d.ToString("dd.MMM") : d = d.AddDays(1) - Blatt.Range("H2").Value = "DONNERSTAG, " & d.ToString("dd.MMM") : d = d.AddDays(1) - Blatt.Range("J2").Value = "FREITAG, " & d.ToString("dd.MMM") : d = d.AddDays(1) - Blatt.Range("L2").Value = "SAMSTAG, " & d.ToString("dd.MMM") : d = d.AddDays(1) - Blatt.Range("N2").Value = "SO, " & d.ToString("dd.MMM") - - If SCHICHT.contains("ROT") Then - Blatt.Range("A3").Font.Color = Color.Red - Blatt.Range("H1").Font.Color = Color.Red - Blatt.Range("H1").Value = "ROT" - Else - Blatt.Range("A3").Font.Color = Color.Blue - Blatt.Range("H1").Font.Color = Color.Blue - Blatt.Range("H1").Value = "BLAU" - End If - Blatt.Range("A2").Value = "KW " & aktWoche - - Button4.Text = txt & " (10 %)" - - - Dim pos As Integer = 0 - Dim zeilenheader = 1 - - - 'BORDER - pos = 14 - For Each s In BEN_SCHICHTEN + 'BORDER + pos = 14 + For Each s In BEN_SCHICHTEN + If s.SCHICHT.dedet_Splitschicht = DPmitSplitschichten Or s.SCHICHT.dedet_Splitschicht = False Then Blatt.Range("A" & pos).Value = s.SCHICHT.dedet_bezeichnungExcel ' Blatt.Range("A" & pos).Style= = s.SCHICHT.dedet_bezeichnungExcel Blatt.Range("A" & pos + 1).Value = s.SCHICHT.dedet_bezeichnungExcel2 Blatt.Range("A" & pos + 2).Value = s.SCHICHT.dedet_bezeichnungExcel3 pos += s.SCHICHT.dedet_ZeilenExcel + zeilenheader - Try - ' MsgBox("A14:N" & pos - 1) - Blatt.Range("A14:N" & pos - 1).BorderAround(Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous, Microsoft.Office.Interop.Excel.XlBorderWeight.xlMedium, Microsoft.Office.Interop.Excel.XlColorIndex.xlColorIndexAutomatic, Microsoft.Office.Interop.Excel.XlColorIndex.xlColorIndexAutomatic) - Catch ex As Exception + End If - End Try - Next + Try + ' MsgBox("A14:N" & pos - 1) + Blatt.Range("A14:N" & pos - 1).BorderAround(Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous, Microsoft.Office.Interop.Excel.XlBorderWeight.xlMedium, Microsoft.Office.Interop.Excel.XlColorIndex.xlColorIndexAutomatic, Microsoft.Office.Interop.Excel.XlColorIndex.xlColorIndexAutomatic) + Catch ex As Exception - 'Zeilenheader - pos = 14 - For Each s In BEN_SCHICHTEN + End Try + Next + + 'Zeilenheader + pos = 14 + For Each s In BEN_SCHICHTEN + If s.SCHICHT.dedet_Splitschicht = DPmitSplitschichten Or s.SCHICHT.dedet_Splitschicht = False Then For Each z In s.SCHICHT.ZEITEN Select Case z.dsz_woTag.ToUpper - Case "MO" : Blatt.Range("B" & pos).Value = " " & z.dsz_von & " - " & z.dsz_bis & " Uhr" - Case "DI" : Blatt.Range("D" & pos).Value = " " & z.dsz_von & " - " & z.dsz_bis & " Uhr" - Case "MI" : Blatt.Range("F" & pos).Value = " " & z.dsz_von & " - " & z.dsz_bis & " Uhr" - Case "DO" : Blatt.Range("H" & pos).Value = " " & z.dsz_von & " - " & z.dsz_bis & " Uhr" - Case "FR" : Blatt.Range("J" & pos).Value = " " & z.dsz_von & " - " & z.dsz_bis & " Uhr" - Case "SA" : Blatt.Range("L" & pos).Value = " " & z.dsz_von & " - " & z.dsz_bis & " Uhr" - Case "SO" : Blatt.Range("N" & pos).Value = " " & z.dsz_von & " - " & z.dsz_bis & " Uhr" + Case "MO" : Blatt.Range("B" & pos).Value = " " & IIf(z.dsz_von <> "" AndAlso z.dsz_bis <> "", z.dsz_von & " - " & z.dsz_bis & " Uhr", "") + Case "DI" : Blatt.Range("D" & pos).Value = " " & IIf(z.dsz_von <> "" AndAlso z.dsz_bis <> "", z.dsz_von & " - " & z.dsz_bis & " Uhr", "") + Case "MI" : Blatt.Range("F" & pos).Value = " " & IIf(z.dsz_von <> "" AndAlso z.dsz_bis <> "", z.dsz_von & " - " & z.dsz_bis & " Uhr", "") + Case "DO" : Blatt.Range("H" & pos).Value = " " & IIf(z.dsz_von <> "" AndAlso z.dsz_bis <> "", z.dsz_von & " - " & z.dsz_bis & " Uhr", "") + Case "FR" : Blatt.Range("J" & pos).Value = " " & IIf(z.dsz_von <> "" AndAlso z.dsz_bis <> "", z.dsz_von & " - " & z.dsz_bis & " Uhr", "") + Case "SA" : Blatt.Range("L" & pos).Value = " " & IIf(z.dsz_von <> "" AndAlso z.dsz_bis <> "", z.dsz_von & " - " & z.dsz_bis & " Uhr", "") + Case "SO" : Blatt.Range("N" & pos).Value = " " & IIf(z.dsz_von <> "" AndAlso z.dsz_bis <> "", z.dsz_von & " - " & z.dsz_bis & " Uhr", "") End Select Next - Blatt.Range("B" & pos & ":N" & pos).Interior.Color = Color.FromArgb(197, 217, 241) - pos += s.SCHICHT.dedet_ZeilenExcel + zeilenheader - Next + End If + Blatt.Range("B" & pos & ":N" & pos).Interior.Color = Color.FromArgb(197, 217, 241) + pos += s.SCHICHT.dedet_ZeilenExcel + zeilenheader + Next - - 'MONTAG - pos = 15 + 'MONTAG + pos = 15 For Each s In BEN_SCHICHTEN + If s.SCHICHT.dedet_Splitschicht = DPmitSplitschichten Or s.SCHICHT.dedet_Splitschicht = False Then Dim z = s.SCHICHT.dedet_ZeilenExcel Dim Tag(z * 2 - 1) As String @@ -1764,8 +1642,13 @@ Public Class frmDienstplanVariabel For i = 0 To z - 1 : Tag(i + z) = "C" & i + pos : Next Blatt = fill(s.dgv_Mo, Tag, Blatt, "MO", s.SCHICHT) + If (s.SCHICHT.dedet_ExcelMonatFarbe IsNot Nothing AndAlso s.SCHICHT.dedet_ExcelMonatFarbe.Substring(0, 1) = "#") Then + For i = 0 To z - 1 : Blatt.Range("B" & i + pos & ":N" & i + pos).Interior.Color = ColorTranslator.ToOle(cc.ConvertFromString(s.SCHICHT.dedet_ExcelMonatFarbe.ToString())) : Next + End If + pos += z + zeilenheader - Next + End If + Next Dim Zeile_ZA As Integer = 45 Dim Zeile_URL As Integer = 47 @@ -1798,7 +1681,8 @@ Public Class frmDienstplanVariabel 'DIENSTAG pos = 15 - For Each s In BEN_SCHICHTEN + For Each s In BEN_SCHICHTEN + If s.SCHICHT.dedet_Splitschicht = DPmitSplitschichten Or s.SCHICHT.dedet_Splitschicht = False Then Dim z = s.SCHICHT.dedet_ZeilenExcel Dim Tag(z * 2 - 1) As String @@ -1807,9 +1691,10 @@ Public Class frmDienstplanVariabel Blatt = fill(s.dgv_Di, Tag, Blatt, "DI", s.SCHICHT) pos += z + zeilenheader - Next + End If + Next - Dim ZADi(4) As String + Dim ZADi(4) As String For i = 0 To 1 : ZADi(i) = "D" & i + Zeile_ZA : Next For i = 0 To 1 : ZADi(i + 2) = "E" & i + Zeile_ZA : Next @@ -1838,16 +1723,19 @@ Public Class frmDienstplanVariabel 'MITTWOCH pos = 15 - For Each s In BEN_SCHICHTEN + For Each s In BEN_SCHICHTEN + If s.SCHICHT.dedet_Splitschicht = DPmitSplitschichten Or s.SCHICHT.dedet_Splitschicht = False Then Dim z = s.SCHICHT.dedet_ZeilenExcel Dim Tag(z * 2 - 1) As String For i = 0 To z - 1 : Tag(i) = "F" & i + pos : Next For i = 0 To z - 1 : Tag(i + z) = "G" & i + pos : Next Blatt = fill(s.dgv_Mi, Tag, Blatt, "MI", s.SCHICHT) pos += z + zeilenheader - Next + End If - Dim ZAMi(4) As String + Next + + Dim ZAMi(4) As String For i = 0 To 1 : ZAMi(i) = "F" & i + Zeile_ZA : Next For i = 0 To 1 : ZAMi(i + 2) = "G" & i + Zeile_ZA : Next @@ -1876,16 +1764,18 @@ Public Class frmDienstplanVariabel 'DONNERSTAG pos = 15 - For Each s In BEN_SCHICHTEN + For Each s In BEN_SCHICHTEN + If s.SCHICHT.dedet_Splitschicht = DPmitSplitschichten Or s.SCHICHT.dedet_Splitschicht = False Then Dim z = s.SCHICHT.dedet_ZeilenExcel Dim Tag(z * 2 - 1) As String For i = 0 To z - 1 : Tag(i) = "H" & i + pos : Next For i = 0 To z - 1 : Tag(i + z) = "I" & i + pos : Next Blatt = fill(s.dgv_Do, Tag, Blatt, "DO", s.SCHICHT) pos += z + zeilenheader - Next + End If + Next - Dim ZADo(4) As String + Dim ZADo(4) As String For i = 0 To 1 : ZADo(i) = "H" & i + Zeile_ZA : Next For i = 0 To 1 : ZADo(i + 2) = "I" & i + Zeile_ZA : Next @@ -1914,16 +1804,18 @@ Public Class frmDienstplanVariabel 'FREITAG pos = 15 - For Each s In BEN_SCHICHTEN + For Each s In BEN_SCHICHTEN + If s.SCHICHT.dedet_Splitschicht = DPmitSplitschichten Or s.SCHICHT.dedet_Splitschicht = False Then Dim z = s.SCHICHT.dedet_ZeilenExcel Dim Tag(z * 2 - 1) As String For i = 0 To z - 1 : Tag(i) = "J" & i + pos : Next For i = 0 To z - 1 : Tag(i + z) = "K" & i + pos : Next Blatt = fill(s.dgv_Fr, Tag, Blatt, "FR", s.SCHICHT) pos += z + zeilenheader - Next + End If + Next - Dim ZAFr(4) As String + Dim ZAFr(4) As String For i = 0 To 1 : ZAFr(i) = "J" & i + Zeile_ZA : Next For i = 0 To 1 : ZAFr(i + 2) = "K" & i + Zeile_ZA : Next @@ -1952,16 +1844,18 @@ Public Class frmDienstplanVariabel 'SAMSTAG pos = 15 - For Each s In BEN_SCHICHTEN + For Each s In BEN_SCHICHTEN + If s.SCHICHT.dedet_Splitschicht = DPmitSplitschichten Or s.SCHICHT.dedet_Splitschicht = False Then Dim z = s.SCHICHT.dedet_ZeilenExcel Dim Tag(z * 2 - 1) As String For i = 0 To z - 1 : Tag(i) = "L" & i + pos : Next For i = 0 To z - 1 : Tag(i + z) = "M" & i + pos : Next Blatt = fill(s.dgv_Sa, Tag, Blatt, "SA", s.SCHICHT) pos += z + zeilenheader - Next + End If + Next - Dim ZASa(4) As String + Dim ZASa(4) As String For i = 0 To 1 : ZASa(i) = "L" & i + Zeile_ZA : Next For i = 0 To 1 : ZASa(i + 2) = "M" & i + Zeile_ZA : Next @@ -1990,15 +1884,17 @@ Public Class frmDienstplanVariabel 'SONNTAG pos = 15 - For Each s In BEN_SCHICHTEN + For Each s In BEN_SCHICHTEN + If s.SCHICHT.dedet_Splitschicht = DPmitSplitschichten Or s.SCHICHT.dedet_Splitschicht = False Then Dim z = s.SCHICHT.dedet_ZeilenExcel Dim Tag(z) As String For i = 0 To z - 1 : Tag(i) = "N" & i + pos : Next Blatt = fill(s.dgv_So, Tag, Blatt, "SO") pos += z + zeilenheader - Next + End If + Next - Dim ZASo(2) As String + Dim ZASo(2) As String For i = 0 To 1 : ZASo(i) = "N" & i + Zeile_ZA : Next Dim UrlSo(8) As String @@ -2023,11 +1919,10 @@ Public Class frmDienstplanVariabel .Visible = True .DisplayAlerts = Word.WdAlertLevel.wdAlertsNone - Try : Datei.SaveAs(strFileName) : Catch : End Try + Try : Datei.SaveAs(strFileName) : Catch : End Try + End With - End With - End If Catch ex As Exception MsgBox("ERRDP 7: " & ex.Message & ex.StackTrace) @@ -2484,14 +2379,13 @@ Public Class frmDienstplanVariabel SQLDienst.updateDienstEintragArtChange(r.Cells(0).Value, datum.ToShortDateString, abt, von, bis, pause) If r.Cells("dstetr_hauptsplitschicht").Value Then - If SQLDienst.getCountEntrys(r.Cells("dstma_id").Value, datum, datum, True) AndAlso - (abt = "URL" Or abt = "DR" Or abt = "FREI" Or abt = "QS" Or abt = "KS" Or abt = "ZA") Then + If SQLDienst.getCountEntrys(r.Cells("dstma_id").Value, datum, datum, True) AndAlso (abt = "URL" Or abt = "DR" Or abt = "FREI" Or abt = "QS" Or abt = "KS" Or abt = "ZA") Then deleteSplitschichten(r.Cells("dstma_id").Value, datum, r.Cells(1).Value) End If End If - If abt.Contains("ZOLL") Or abt = "QS" And r.Cells("dstma_arbvh").Value = "TZ" Then + If abt.Contains("ZOLL") Or abt = "QS" And r.Cells("dstma_arbvh").Value = "TZ" Then checkMaTageIfTeilzeit(r.Cells("dstma_id").Value) End If @@ -3012,9 +2906,7 @@ Public Class frmDienstplanVariabel Private Function DPcontainsSplitschichten() As Boolean For Each s In BEN_SCHICHTEN If s.SCHICHT.dedet_Splitschicht Then Return True - Next - Return False End Function diff --git a/UID/My Project/Resources.Designer.vb b/UID/My Project/Resources.Designer.vb index 1567a89..4dde149 100644 --- a/UID/My Project/Resources.Designer.vb +++ b/UID/My Project/Resources.Designer.vb @@ -655,7 +655,7 @@ Namespace My.Resources End Property ''' - ''' Sucht eine lokalisierte Zeichenfolge, die 2.0.8 ähnelt. + ''' Sucht eine lokalisierte Zeichenfolge, die 1.2.0.9 ähnelt. ''' Friend ReadOnly Property Version() As String Get diff --git a/UID/My Project/Resources.resx b/UID/My Project/Resources.resx index f258df5..818db31 100644 --- a/UID/My Project/Resources.resx +++ b/UID/My Project/Resources.resx @@ -188,7 +188,7 @@ Data Source=SQLGUIDE01.verag.ost.dmn;Initial Catalog=ADMIN;Integrated Security=false;User ID=AppUser;Password=yp/THDd?xM+pZ$; - 2.0.8 + 1.2.0.9 ..\Resources\del.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a diff --git a/UID/cSqlDb.vb b/UID/cSqlDb.vb index 673a947..e51d4c5 100644 --- a/UID/cSqlDb.vb +++ b/UID/cSqlDb.vb @@ -4149,8 +4149,11 @@ Public Class cDienstplan Dim sqlWhere As String = "" If onlySplitschichten Then - sqlWhere &= "AND dstetr_splitschicht = 1 AND dstetr_art = '" - sqlWhere &= art & "'" + sqlWhere &= "AND dstetr_splitschicht = 1" + End If + + If art <> "" Then + sqlWhere &= "And dstetr_art = '" & art & "'" End If Try Dim stunden As Integer