Imports Gemeinsames Imports VERAG_PROG_ALLGEMEIN Public Class usrctlStatVERIMEX Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL Sub init() Dim whereFiliale = "" Dim innerJoinFiliale = "" Select Case cboFirma._value Case "" Case 0 : whereFiliale = " and tblSendungen.FilialenNr <=0 " Case Else whereFiliale = " and Filialen.Firma='" & cboFirma._value & "' " innerJoinFiliale = "inner join " & VERAG_PROG_ALLGEMEIN.cAllgemein.FMZOLL_SERVER & ".VERAG.dbo.Filialen on [tblSendungen].FilialenNr=Filialen.FilialenNr" End Select With dgvAbklaerungTR Dim sqlstr = "SELECT mit_vname + ' ' + mit_nname as Mitarbeiter ,count(*) as Sendungen ,count(distinct(avisoid)) as LKW FROM [tblSendungen] inner join Aviso on AvisoID = tblSnd_AvisoID inner join admin.dbo.tblMitarbeiter on mit_id=tblSnd_AbklaerungTR_MA " & innerJoinFiliale & " where cast(tblSnd_AbklaerungTR as date) BETWEEN '" & datStatVon.Value & "' and '" & datStatBis.Value & "' and tblSnd_AbklaerungTR_MA is not null " & whereFiliale & " group by mit_vname,mit_nname" 'früher: Datum statt tblSnd_AbklaerungTR dgvAbklaerungTR.DataSource = SQL.loadDgvBySql(sqlstr, "AVISO") End With End Sub Sub initAbf() Dim whereFiliale = "" Dim innerJoinFiliale = "" Select Case cboAbfFirma._value Case "" Case 0 : whereFiliale = " and tblSendungen.FilialenNr <=0 " Case "ATILLA" : whereFiliale = " and tblSendungen.FilialenNr IN ('4801','4802') " Case Else whereFiliale = " and tblSendungen.FilialenNr NOT IN ('4801','4802') and Filialen.Firma='" & cboAbfFirma._value & "' " innerJoinFiliale = "inner join " & VERAG_PROG_ALLGEMEIN.cAllgemein.FMZOLL_SERVER & ".VERAG.dbo.Filialen on [tblSendungen].FilialenNr=Filialen.FilialenNr" End Select With dgvAbfertigungTR Dim sqlstr = "SELECT mit_vname + ' ' + mit_nname as Mitarbeiter ,sum(tblSnd_AbfertigungTRAnzahl) as Versandscheine ,sum(tblSnd_AbfertigungTRAnzahlPos) as Positionen ,count(distinct(avisoid)) as LKW FROM [tblSendungen] inner join Aviso on AvisoID = tblSnd_AvisoID inner join admin.dbo.tblMitarbeiter on mit_id=tblSnd_AbfertigungTR_MA " & innerJoinFiliale & " where cast(tblSnd_AbfertigungTR as date) BETWEEN '" & datAbfStatVon.Value & "' and '" & datAbfStatBis.Value & "' and tblSnd_AbfertigungTR_MA is not null " & whereFiliale & " group by mit_vname,mit_nname" 'früher: Datum statt tblSnd_AbfertigungTR ' MsgBox(sqlstr) dgvAbfertigungTR.DataSource = SQL.loadDgvBySql(sqlstr, "AVISO") End With End Sub 'Private Sub datStatVon_ValueChanged(sender As Object, e As EventArgs) Handles datStatVon.ValueChanged, datStatBis.ValueChanged 'End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Me.Cursor = Cursors.WaitCursor SDL.cProgramFunctions.genExcelFromDGV_NEW(dgvAbklaerungTR, False) Me.Cursor = Cursors.Default End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click Dim print As New frmPrintLayout print.Text = "Speditionsbericht" Dim rpt As New rptStat_VERIMEX_AbklTR rpt.DataSource = dgvAbklaerungTR.DataSource If rpt.DataSource Is Nothing OrElse rpt.DataSource.rows.count = 0 Then rpt.Dispose() : print.Dispose() MsgBox("Keine Daten vorhanden!") Exit Sub End If Dim sum = 0 rpt.lblUeberschrift.Text = "Sendungserfassung TR " & datStatVon.Text & " bis " & datStatBis.Text rpt.lblSachbearbeiter.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME 'rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung 'Dim cnt As Integer = 0 rpt.lblDat.Text = Now.ToLongDateString Dim sumSnd As Integer = 0 Dim sumLKW As Integer = 0 AddHandler rpt.Detail.Format, Sub() 'rpt.lblVon.Text = CDate(rpt.Fields.Item("von").Value).ToShortDateString 'rpt.lblBis.Text = CDate(rpt.Fields.Item("bis").Value).ToShortDateString rpt.lblAnzSnd.Text = rpt.Fields.Item("Sendungen").Value rpt.lblAnzLKW.Text = rpt.Fields.Item("LKW").Value rpt.lblMitarbeiter.Text = rpt.Fields.Item("Mitarbeiter").Value sumSnd += CInt(rpt.Fields.Item("Sendungen").Value) sumLKW += CInt(rpt.Fields.Item("LKW").Value) End Sub AddHandler rpt.GroupHeader1.Format, Sub() ' If CheckBox1.Checked Then rpt.lblFiliale.Text = SQL.getValueTxtBySql("SELECT CAST(FilialenNr as varchar (4)) + ' ' + Grenzstelle FROM filialen WHERE FilialenNr='" & rpt.Fields.Item("FilialenNr").Value & "'", "FMZOLL") sumSnd = 0 sumLKW = 0 End Sub AddHandler rpt.GroupFooter1.Format, Sub() rpt.lblAnzSndSum.Text = sumSnd rpt.lblAnzLKWSum.Text = sumLKW End Sub print.Viewer.LoadDocument(rpt) print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous print.Show() End Sub Private Sub usrctlStatVERIMEX_Load(sender As Object, e As EventArgs) Handles Me.Load cboFirma.Items.Clear() cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ALLE", "")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG", "VERAG")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("IMEX", "IMEX")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AMBAR", "AMBAR")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("UNISPED", "UNISPED")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("*Nicht zugeordnet", "0")) cboFirma.changeItem("") cboAbfFirma.Items.Clear() cboAbfFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ALLE", "")) cboAbfFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ATILLA", "ATILLA")) cboAbfFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG", "VERAG")) cboAbfFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("IMEX", "IMEX")) cboAbfFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AMBAR", "AMBAR")) cboAbfFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("UNISPED", "UNISPED")) cboAbfFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("*Nicht zugeordnet", "0")) cboAbfFirma.changeItem("ATILLA") ' cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ATILLA", "")) End Sub Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click init() End Sub Private Sub databfStatVon_KeyDown(sender As Object, e As KeyEventArgs) Handles datStatVon.KeyDown, datStatBis.KeyDown, cboFirma.KeyDown If e.KeyCode = Keys.Return Then init() End If End Sub Private Sub datStatVon_KeyDown(sender As Object, e As KeyEventArgs) Handles datAbfStatVon.KeyDown, datAbfStatBis.KeyDown, cboAbfFirma.KeyDown, datStatVon.KeyDown, datStatBis.KeyDown, cboFirma.KeyDown If e.KeyCode = Keys.Return Then initAbf() End If End Sub Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click Me.Cursor = Cursors.WaitCursor Try Dim whereFiliale = "" Dim innerJoinFiliale = "" Select Case cboFirma._value Case "" Case 0 : whereFiliale = " and tblSendungen.FilialenNr <=0 " Case Else whereFiliale = " and Filialen.Firma='" & cboFirma._value & "' " innerJoinFiliale = "inner join " & VERAG_PROG_ALLGEMEIN.cAllgemein.FMZOLL_SERVER & ".VERAG.dbo.Filialen on [tblSendungen].FilialenNr=Filialen.FilialenNr" End Select Dim sqlstr = "SELECT (Select isnull(Filialen.firma,'') FROM [FMZOLL\SQLFMZOLL].VERAG.dbo.Filialen WHERE [tblSendungen].FilialenNr=Filialen.FilialenNr) Firma, mit_vname + ' ' + mit_nname as Mitarbeiter, aviso.LKW_Nr [LKW Kennzeichen],tblSnd_AvisoID [LKW-ID], Auftraggeber as Avisierer, Frächter, tblSnd_Empfaenger as Empfänger, tblSnd_Colli Colli, tblSnd_Gewicht Gewicht, tblSnd_Abfertigungsart_ID Abfertigungsart, tblSendungen.FilialenNr , tblSendungen.AbfertigungsNr, replace(Ankunft,'1899-12-30 00:00:00','') Ankunft, replace(Freigabe,'1899-12-30 00:00:00','') Freigabe FROM [tblSendungen] inner join Aviso on AvisoID = tblSnd_AvisoID inner join admin.dbo.tblMitarbeiter on mit_id=tblSnd_AbklaerungTR_MA " & innerJoinFiliale & " where cast(tblSnd_AbklaerungTR as date) BETWEEN '" & datStatVon.Value & "' and '" & datStatBis.Value & "' and tblSnd_AbklaerungTR_MA is not null " & whereFiliale & " ORDER BY Firma, Mitarbeiter,Auftraggeber,LKW_Nr,tblSnd_PosUnterNr" SDL.cProgramFunctions.genExcelFromDT_NEW(SQL.loadDgvBySql(sqlstr, "AVISO")) Catch ex As Exception MsgBox(ex.Message & ex.StackTrace) End Try Me.Cursor = Cursors.Default End Sub Private Sub btnAbfDetailbereicht_Click(sender As Object, e As EventArgs) Handles btnAbfDetailbereicht.Click Me.Cursor = Cursors.WaitCursor Try Dim whereFiliale = "" Dim innerJoinFiliale = "" Select Case cboAbfFirma._value Case "" Case 0 : whereFiliale = " and tblSendungen.FilialenNr <=0 " Case "ATILLA" : whereFiliale = " and tblSendungen.FilialenNr IN ('4801','4802') " Case Else whereFiliale = " and tblSendungen.FilialenNr NOT IN ('4801','4802') and Filialen.Firma='" & cboAbfFirma._value & "' " innerJoinFiliale = "inner join " & VERAG_PROG_ALLGEMEIN.cAllgemein.FMZOLL_SERVER & ".VERAG.dbo.Filialen on [tblSendungen].FilialenNr=Filialen.FilialenNr" End Select Dim sqlstr = "SELECT mit_vname + ' ' + mit_nname as Mitarbeiter ,tblSnd_AbfertigungTRAnzahl as AnzahlVersandscheine ,tblSnd_AbfertigungTRAnzahlPos as AnzahlPositionen, aviso.LKW_Nr [LKW Kennzeichen],tblSnd_AvisoID [LKW-ID], Auftraggeber as Avisierer, Frächter, tblSendungen.FilialenNr , tblSendungen.AbfertigungsNr, replace(Ankunft,'1899-12-30 00:00:00','') Ankunft, replace(Freigabe,'1899-12-30 00:00:00','') Freigabe FROM [tblSendungen] inner join Aviso on AvisoID = tblSnd_AvisoID inner join admin.dbo.tblMitarbeiter on mit_id=tblSnd_AbfertigungTR_MA " & innerJoinFiliale & " where cast(tblSnd_AbfertigungTR as date) BETWEEN '" & datAbfStatVon.Value & "' and '" & datAbfStatBis.Value & "' and tblSnd_AbfertigungTR_MA is not null " & whereFiliale & " ORDER BY mit_nname, tblSnd_AbfertigungTR" SDL.cProgramFunctions.genExcelFromDT_NEW(SQL.loadDgvBySql(sqlstr, "AVISO")) Catch ex As Exception MsgBox(ex.Message & ex.StackTrace) End Try Me.Cursor = Cursors.Default End Sub Private Sub btnAbfExcel_Click(sender As Object, e As EventArgs) Handles btnAbfExcel.Click Me.Cursor = Cursors.WaitCursor SDL.cProgramFunctions.genExcelFromDGV_NEW(dgvAbfertigungTR, False) Me.Cursor = Cursors.Default End Sub Private Sub btnAbfBericht_Click(sender As Object, e As EventArgs) Handles btnAbfBericht.Click Dim print As New frmPrintLayout print.Text = "Speditionsbericht" Dim rpt As New rptStat_VERIMEX_AbklTR rpt.DataSource = dgvAbfertigungTR.DataSource If rpt.DataSource Is Nothing OrElse rpt.DataSource.rows.count = 0 Then rpt.Dispose() : print.Dispose() MsgBox("Keine Daten vorhanden!") Exit Sub End If Dim sum = 0 rpt.lblUeberschrift.Text = "Abfertigung (NCTS) TR " & datStatVon.Text & " bis " & datStatBis.Text rpt.lblSachbearbeiter.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME 'rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung 'Dim cnt As Integer = 0 rpt.lblDat.Text = Now.ToLongDateString Dim sumSnd As Integer = 0 Dim sumPos As Integer = 0 Dim sumLKW As Integer = 0 AddHandler rpt.Detail.Format, Sub() Dim anz_Positionen As Integer = 0 Dim anz_Versandscheine As Integer = 0 Dim anz_LKW As Integer = 0 If rpt.Fields.Item("Positionen").Value IsNot DBNull.Value AndAlso IsNumeric(rpt.Fields.Item("Positionen").Value) Then anz_Positionen = CInt(rpt.Fields.Item("Positionen").Value) End If If rpt.Fields.Item("Versandscheine").Value IsNot DBNull.Value AndAlso IsNumeric(rpt.Fields.Item("Versandscheine").Value) Then anz_Versandscheine = CInt(rpt.Fields.Item("Versandscheine").Value) End If If rpt.Fields.Item("LKW").Value IsNot DBNull.Value AndAlso IsNumeric(rpt.Fields.Item("LKW").Value) Then anz_LKW = CInt(rpt.Fields.Item("LKW").Value) End If rpt.Label2.Text = anz_Positionen rpt.lblAnzSnd.Text = anz_Versandscheine rpt.lblAnzLKW.Text = anz_LKW rpt.lblMitarbeiter.Text = rpt.Fields.Item("Mitarbeiter").Value sumPos += anz_Positionen sumSnd += anz_Versandscheine sumLKW += anz_LKW End Sub AddHandler rpt.GroupHeader1.Format, Sub() ' If CheckBox1.Checked Then rpt.lblFiliale.Text = SQL.getValueTxtBySql("SELECT CAST(FilialenNr as varchar (4)) + ' ' + Grenzstelle FROM filialen WHERE FilialenNr='" & rpt.Fields.Item("FilialenNr").Value & "'", "FMZOLL") sumPos = 0 sumSnd = 0 sumLKW = 0 End Sub AddHandler rpt.GroupFooter1.Format, Sub() rpt.lblAnzSndSum.Text = sumSnd rpt.lblAnzPosSum.Text = sumPos rpt.lblAnzLKWSum.Text = sumLKW End Sub print.Viewer.LoadDocument(rpt) print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous print.Show() End Sub Private Sub btnAbfAuswerten_Click(sender As Object, e As EventArgs) Handles btnAbfAuswerten.Click initAbf() End Sub End Class