This commit is contained in:
2020-06-04 22:20:10 +02:00
parent 6e3e35ac70
commit 3d67139c09
23 changed files with 26785 additions and 41 deletions

View File

@@ -81,6 +81,7 @@
<Reference Include="GrapeCity.ActiveReports.Chart.v12, Version=12.2.13986.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" />
<Reference Include="GrapeCity.ActiveReports.Diagnostics.v12, Version=12.2.13986.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" />
<Reference Include="GrapeCity.ActiveReports.Document.v12, Version=12.2.13986.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" />
<Reference Include="GrapeCity.ActiveReports.Export.Pdf.v12, Version=12.2.13986.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff, processorArchitecture=MSIL" />
<Reference Include="GrapeCity.ActiveReports.Extensibility.v12, Version=12.2.13986.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" />
<Reference Include="GrapeCity.ActiveReports.v12, Version=12.2.13986.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" />
<Reference Include="GrapeCity.ActiveReports.Viewer.Win.v12, Version=12.2.13986.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff, processorArchitecture=MSIL" />

View File

@@ -49,6 +49,8 @@ Partial Class usrCntlDienstplan
Me.tbImex = New System.Windows.Forms.TabPage()
Me.tbFrontOffice = New System.Windows.Forms.TabPage()
Me.tbAMBAR = New System.Windows.Forms.TabPage()
Me.Button5 = New System.Windows.Forms.Button()
Me.cbxAuswertungPDF = New System.Windows.Forms.CheckBox()
CType(Me.dgvMA, System.ComponentModel.ISupportInitialize).BeginInit()
Me.Panel1.SuspendLayout()
Me.Panel3.SuspendLayout()
@@ -140,6 +142,8 @@ Partial Class usrCntlDienstplan
'
'Panel3
'
Me.Panel3.Controls.Add(Me.cbxAuswertungPDF)
Me.Panel3.Controls.Add(Me.Button5)
Me.Panel3.Controls.Add(Me.cbxInaktiv)
Me.Panel3.Controls.Add(Me.numJahr)
Me.Panel3.Controls.Add(Me.cboMonat)
@@ -168,7 +172,7 @@ Partial Class usrCntlDienstplan
'
'numJahr
'
Me.numJahr.Location = New System.Drawing.Point(4, 482)
Me.numJahr.Location = New System.Drawing.Point(4, 515)
Me.numJahr.Maximum = New Decimal(New Integer() {2099, 0, 0, 0})
Me.numJahr.Minimum = New Decimal(New Integer() {2010, 0, 0, 0})
Me.numJahr.Name = "numJahr"
@@ -183,7 +187,7 @@ Partial Class usrCntlDienstplan
Me.cboMonat._allowFreiText = False
Me.cboMonat._value = ""
Me.cboMonat.FormattingEnabled = True
Me.cboMonat.Location = New System.Drawing.Point(4, 462)
Me.cboMonat.Location = New System.Drawing.Point(4, 495)
Me.cboMonat.Name = "cboMonat"
Me.cboMonat.Size = New System.Drawing.Size(114, 21)
Me.cboMonat.TabIndex = 10
@@ -198,7 +202,7 @@ Partial Class usrCntlDienstplan
Me.btnAuswertung.Name = "btnAuswertung"
Me.btnAuswertung.Size = New System.Drawing.Size(115, 43)
Me.btnAuswertung.TabIndex = 9
Me.btnAuswertung.Text = "Monatsauswert." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "MA"
Me.btnAuswertung.Text = "Monatsauswert." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "KW"
Me.btnAuswertung.TextAlign = System.Drawing.ContentAlignment.MiddleRight
Me.btnAuswertung.UseVisualStyleBackColor = True
Me.btnAuswertung.Visible = False
@@ -359,6 +363,34 @@ Partial Class usrCntlDienstplan
Me.tbAMBAR.Text = "AMBAR"
Me.tbAMBAR.UseVisualStyleBackColor = True
'
'Button5
'
Me.Button5.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.Button5.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer))
Me.Button5.Image = CType(resources.GetObject("Button5.Image"), System.Drawing.Image)
Me.Button5.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft
Me.Button5.Location = New System.Drawing.Point(3, 454)
Me.Button5.Name = "Button5"
Me.Button5.Size = New System.Drawing.Size(115, 35)
Me.Button5.TabIndex = 13
Me.Button5.Text = "Monatsauswert." & Global.Microsoft.VisualBasic.ChrW(13)
Me.Button5.TextAlign = System.Drawing.ContentAlignment.MiddleRight
Me.Button5.UseVisualStyleBackColor = True
Me.Button5.Visible = False
'
'cbxAuswertungPDF
'
Me.cbxAuswertungPDF.AutoSize = True
Me.cbxAuswertungPDF.Checked = True
Me.cbxAuswertungPDF.CheckState = System.Windows.Forms.CheckState.Checked
Me.cbxAuswertungPDF.Location = New System.Drawing.Point(6, 541)
Me.cbxAuswertungPDF.Name = "cbxAuswertungPDF"
Me.cbxAuswertungPDF.Size = New System.Drawing.Size(92, 17)
Me.cbxAuswertungPDF.TabIndex = 14
Me.cbxAuswertungPDF.Text = "PDF Ausgabe"
Me.cbxAuswertungPDF.UseVisualStyleBackColor = True
Me.cbxAuswertungPDF.Visible = False
'
'usrCntlDienstplan
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!)
@@ -404,4 +436,6 @@ Partial Class usrCntlDienstplan
Friend WithEvents cbxInaktiv As CheckBox
Friend WithEvents tbFrontOffice As TabPage
Friend WithEvents tbAMBAR As TabPage
Friend WithEvents Button5 As Button
Friend WithEvents cbxAuswertungPDF As CheckBox
End Class

View File

@@ -118,6 +118,14 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="Button5.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAAIdJREFUOE/V
kEEKgCAQRfVKeaaOEXSL6hbRNrC9dQ3PUd/IxagLGcZFA48PjjyYrzCd1vqWAC7TTog8wFiBTUUR7Igw
fK6ZIRVFsGsolKCtEFl7cmneGpBEuIGeyZoJJSBCpAcXE18Sindow4LJngklIELk8j1wmEpC8Q5PMDNx
mVCCPwiVeQBaqAV4Jfq5XQAAAABJRU5ErkJggg==
</value>
</data>
<data name="btnAuswertung.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAAIdJREFUOE/V

View File

@@ -25,6 +25,8 @@ Public Class usrCntlDienstplan
'tbcntr.Enabled = False
If VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME = "ADMIN" Then
btnAuswertung.Visible = True
Button5.Visible = True
cbxAuswertungPDF.Visible = True
End If
initNiederlassungen(True)
@@ -300,11 +302,19 @@ Public Class usrCntlDienstplan
If dgvMA.SelectedRows.Count = 0 Then
Exit Sub
End If
genMonatsauswertungMA(dgvMA.SelectedRows(0).Cells("dstma_id").Value)
Dim pdfPath = ""
If cbxAuswertungPDF.Checked Then
Dim fd As New FolderBrowserDialog
If fd.ShowDialog = DialogResult.OK Then
pdfPath = fd.SelectedPath
End If
End If
For Each r In dgvMA.SelectedRows
genMonatsauswertungMA(r.Cells("dstma_id").Value, True, cbxAuswertungPDF.Checked, pdfPath)
Next
End Sub
Sub genMonatsauswertungMA(dstMaID)
Sub genMonatsauswertungMA(dstMaID, groupKW, Optional pdfExport = False, Optional pdfPfad = "")
Dim displayFilter = False
Dim vonDat = CDate("01." & cboMonat._value & "." & numJahr.Value)
@@ -330,7 +340,7 @@ Public Class usrCntlDienstplan
Dim rpt As New rptDienstplanMaMonatsbericht
rpt.DataSource = dt
rpt.GroupHeader1.DataField = "KW"
If groupKW Then rpt.GroupHeader1.DataField = "KW"
rpt.txtMonat.Text = cboMonat.Text & " " & numJahr.Value
rpt.txtMAName.Text = MA.mit_vname & " " & MA.mit_nname
@@ -352,7 +362,10 @@ Public Class usrCntlDienstplan
Dim sumUeStd As Double = 0
Dim datumKW = Now
Dim tatStdSum As Double = 0
Dim cPF As New cProgramFunctions
Dim FT As New cFeiertage
AddHandler rpt.Detail.Format, Sub()
@@ -361,6 +374,19 @@ Public Class usrCntlDienstplan
datumKW = CDate(rpt.Fields.Item("dstetr_datum").Value).ToShortDateString
End If
Select Case datumKW.DayOfWeek
Case 6 : rpt.Detail.BackColor = Color.FromArgb(240, 240, 240)
Case 0 : rpt.Detail.BackColor = Color.FromArgb(220, 220, 220)
Case Else : rpt.Detail.BackColor = Color.White
End Select
rpt.txtTag.ForeColor = Color.Black
If FT.isFeiertag(datumKW) Or datumKW.ToString("dd.MM.") = "31.12." Or datumKW.ToString("dd.MM.") = "24.12." Or datumKW.DayOfWeek = 0 Then 'Feiertag oder 1/2 Tag
rpt.txtTag.ForeColor = Color.Red
rpt.Detail.BackColor = Color.FromArgb(220, 220, 220)
End If
Dim datum = Now
If Not IsDBNull(rpt.Fields.Item("dstetr_datum").Value) Then
datum = CDate(rpt.Fields.Item("dstetr_datum").Value).ToShortDateString
@@ -389,6 +415,7 @@ Public Class usrCntlDienstplan
Case "KS" : rpt.txtKS.Text = "K" : sumK += 1
Case "URL" : rpt.txtUrl.Text = "U" : sumU += 1
Case "DR", "SONST", "BS" : rpt.txtSonst.Text = "S" : sumS += 1
Case "ZA"
Case Else
If benutzerschicht Then rpt.txtArbeitstag.Text = "A" : arbeit = True : sumA += 1
End Select
@@ -408,8 +435,18 @@ Public Class usrCntlDienstplan
End If
Dim tatStd As Double = SQLDienst.getDstStunden(MA_DST.dstma_id, datum, datum, niederlassung)
rpt.txtStd.Text = CDbl(tatStd).ToString("N2")
Dim tatStd As Double = 0
If arbeit Then
tatStd = SQLDienst.getDstStunden(MA_DST.dstma_id, datum, datum, niederlassung)
tatStdSum += tatStd
End If
If tatStd = 0 Then
rpt.txtStd.Text = ""
Else
rpt.txtStd.Text = CDbl(tatStd).ToString("N2")
End If
rpt.txtBemerkung.Text = ""
@@ -430,7 +467,12 @@ Public Class usrCntlDienstplan
If Not IsDBNull(rpt.Fields.Item("dstetr_datum").Value) Then
datum = CDate(rpt.Fields.Item("dstetr_datum").Value).ToShortDateString
End If
rpt.lblKW.Text = "KW " & cPF.getKW(datum)
If groupKW Then
rpt.lblKW.Text = "KW " & cPF.getKW(datum)
Else
rpt.lblKW.Text = vonDat.ToString("MMM ") & vonDat.Year
End If
End Sub
@@ -454,21 +496,47 @@ Public Class usrCntlDienstplan
Dim STD_LIST = cDienstMitarbAbweichendeWochenstunden.GET_STD_LIST(datumMO)
Dim sollStd As Double = cPF.getWochenstunden(STD_LIST, MA_DST.dstma_wochenStunden, datumMO, SCHICHT, MA_DST.dstma_mitId, MA_DST.dstma_muster, MA_DST.dstma_WEStdRegelAZ, MA_DST.dstma_arbvh, niederlassung, MA_DST.dstma_TzFeiertageStd)
Dim tatStd As Double = SQLDienst.getDstStunden(MA_DST.dstma_id, datumMO, datumMO.AddDays(6), niederlassung)
' MsgBox(sollStd)
rpt.txtSumWoStunden.Text = CDbl(tatStd).ToString("N2")
rpt.txtWoStd.Text = CDbl(sollStd * -1).ToString("N2")
rpt.txtUeStd.Text = CDbl(tatStd - sollStd).ToString("N2")
If groupKW Then
Dim sollStd As Double = cPF.getWochenstunden(STD_LIST, MA_DST.dstma_wochenStunden, datumMO, SCHICHT, MA_DST.dstma_mitId, MA_DST.dstma_muster, MA_DST.dstma_WEStdRegelAZ, MA_DST.dstma_arbvh, niederlassung, MA_DST.dstma_TzFeiertageStd)
Dim tatStd As Double = SQLDienst.getDstStunden(MA_DST.dstma_id, datumMO, datumMO.AddDays(6), niederlassung)
rpt.txtSumWoStunden.Text = CDbl(tatStd).ToString("N2")
rpt.txtWoStd.Text = CDbl(sollStd * -1).ToString("N2")
rpt.txtUeStd.Text = CDbl(tatStd - sollStd).ToString("N2")
Else
' Dim sollStd As Double = cPF.getWochenstunden(STD_LIST, MA_DST.dstma_wochenStunden, datumMO, SCHICHT, MA_DST.dstma_mitId, MA_DST.dstma_muster, MA_DST.dstma_WEStdRegelAZ, MA_DST.dstma_arbvh, niederlassung, MA_DST.dstma_TzFeiertageStd)
rpt.txtSumWoStunden.Text = CDbl(tatStdSum).ToString("N2")
' rpt.txtWoStd.Text = CDbl(sollStd * -1).ToString("N2")
' rpt.txtUeStd.Text = CDbl(tatStd - sollStd).ToString("N2")
rpt.txtWoStd.Text = ""
rpt.txtUeStd.Text = ""
End If
End Sub
print.Viewer.LoadDocument(rpt)
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
print.Show()
If pdfExport Then
rpt.Run()
Dim tmpPath = pdfPfad
If tmpPath = "" Then
tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(MA.mit_vname & " " & MA.mit_nname, ".pdf", , False)
Else
tmpPath &= "\" & MA.mit_vname & " " & MA.mit_nname & ".pdf"
End If
Dim p As New GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport
p.NeverEmbedFonts = ""
p.Export(rpt.Document, tmpPath)
Else
print.Viewer.LoadDocument(rpt)
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
print.Show()
End If
End Sub
@@ -484,4 +552,20 @@ Public Class usrCntlDienstplan
End If
End Function
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
If dgvMA.SelectedRows.Count = 0 Then
Exit Sub
End If
Dim pdfPath = ""
If cbxAuswertungPDF.Checked Then
Dim fd As New FolderBrowserDialog
If fd.ShowDialog = DialogResult.OK Then
pdfPath = fd.SelectedPath
End If
End If
For Each r In dgvMA.SelectedRows
genMonatsauswertungMA(r.Cells("dstma_id").Value, False, cbxAuswertungPDF.Checked, pdfPath)
Next
End Sub
End Class