Public Class frmTempBerechtigung Dim dc As New _DataClass.DataClass Dim SpaltenTitel As New Utils.Tabellenspalte Dim sec As New Utils.MySecurity Private Sub frmTempBerechtigung_Load(sender As Object, e As EventArgs) Handles MyBase.Load Refresh_Data() sec.Set_Form_Security(Me) End Sub Sub Refresh_Data() Dim dt As New DataTable dt = dc.Get_Temp_Berechtgungen() Me.C1Daten.DataSource = Nothing Me.C1Daten.DataSource = dt Me.C1Daten.DataMember = dt.TableName Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Daten, "TempBerechtigung", dt) End Sub Private Sub SchliessenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles SchliessenToolStripMenuItem.Click Me.Close() End Sub Private Sub TSBtnQuit_Click(sender As Object, e As EventArgs) Handles TSBtnQuit.Click Me.Close() End Sub Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click Me.SaveFileDialog1.AddExtension = True Me.SaveFileDialog1.DefaultExt.Insert(0, "*.xls") Me.SaveFileDialog1.Filter = "Excel-Dateien|*.xls" Me.SaveFileDialog1.ShowDialog() If Me.SaveFileDialog1.FileName <> "" Then If Me.SaveFileDialog1.FileName.EndsWith(".xls") Or Me.SaveFileDialog1.FileName.EndsWith("XLS") Then Me.DatatableToExcel(Me.C1Daten.DataSource, Me.SaveFileDialog1.FileName) Else Me.C1Daten.ExportToDelimitedFile(Me.SaveFileDialog1.FileName, C1.Win.C1TrueDBGrid.RowSelectorEnum.AllRows, ";", "", "", True, System.Text.Encoding.Default.BodyName) End If End If Exit Sub End Sub Public Shared Function DatatableToExcel(ByVal aDataTable As DataTable, ByVal aOutputFilename As String) As Boolean Application.DoEvents() Dim f As New FrmFortschritt Dim app As New Object Dim wb As New Object Dim ws As New Object Try f.Show() Application.DoEvents() f.ProgressBar1.Minimum = 0 f.ProgressBar1.Maximum = aDataTable.Rows.Count app = CreateObject("Excel.application") 'Dim wb As Object 'Dim ws As Object ' Dim app As New Excel.ApplicationClass ' Dim wb As Excel.Workbook ' Dim ws As Excel.Worksheet wb = app.Workbooks.add() 'wb = app.Workbooks.Add() ws = wb.ActiveSheet() Dim dc As DataColumn Dim dr As DataRow Dim colIndex As Integer Dim rowIndex As Integer ' Columns erstellen For Each dc In aDataTable.Columns colIndex += 1 app.Cells(1, colIndex) = dc.ColumnName Next ' Rows hinzufügen For Each dr In aDataTable.Rows f.ProgressBar1.Value = rowIndex rowIndex += 1 colIndex = 0 For Each dc In aDataTable.Columns colIndex += 1 app.Cells(rowIndex + 1, colIndex) = dr(dc.ColumnName) Next Next ws.Columns.AutoFit() wb.SaveAs(aOutputFilename) app.Workbooks.Open(aOutputFilename) ' Excel anzeigen wenn fertig exportiert app.Visible = True ws = Nothing wb = Nothing app = Nothing f.Close() Return True Catch ex As Exception f.Close() MsgBox(ex.Message) End Try End Function Private Sub PerosnAnzeigenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles PerosnAnzeigenToolStripMenuItem.Click Dim f As New frmUebersicht(C1Daten.Columns("Personalnr").Value) f.MdiParent = Me.MdiParent f.Show() End Sub Private Sub FunktionstelleAnzeigenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles FunktionstelleAnzeigenToolStripMenuItem.Click Dim f As New frmUebersicht(C1Daten.Columns("Funktionstellenr").Value) f.MdiParent = Me.MdiParent f.Show() End Sub Private Sub InaktivierenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles InaktivierenToolStripMenuItem.Click If MsgBox("Temporäre Berechtigung inaktivieren?", vbYesNo) = MsgBoxResult.Yes Then dc.Delete_temp_Berechtigung(C1Daten.Columns("NrTempBerechtigung").Value, Globals.clsmitarbeiter.iMitarbeiternr.Value) Me.Refresh_Data() End If End Sub Private Sub ContextMenuStrip1_Opening(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles ContextMenuStrip1.Opening FunktionstelleAnzeigenToolStripMenuItem.Enabled = False BerechtigungAnzeigenToolStripMenuItem.Enabled = False PlattformAnzeigenToolStripMenuItem.Enabled = False If C1Daten.Columns("Datatype").Value = "Funktionstelle" Then FunktionstelleAnzeigenToolStripMenuItem.Enabled = True End If If C1Daten.Columns("Datatype").Value = "Berechtigung" Then BerechtigungAnzeigenToolStripMenuItem.Enabled = True End If If C1Daten.Columns("Datatype").Value = "Plattform" Then PlattformAnzeigenToolStripMenuItem.Enabled = True End If End Sub Private Sub BerechtigungAnzeigenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles BerechtigungAnzeigenToolStripMenuItem.Click Dim f As New frmUebersicht(C1Daten.Columns("Funktionstellenr").Value) f.MdiParent = Me.MdiParent f.Show() End Sub Private Sub PlattformAnzeigenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles PlattformAnzeigenToolStripMenuItem.Click Dim f As New frmUebersicht(C1Daten.Columns("Funktionstellenr").Value) f.MdiParent = Me.MdiParent f.Show() End Sub Private Sub C1Daten_Click(sender As Object, e As EventArgs) Handles C1Daten.Click End Sub Private Sub C1Daten_MouseDown(sender As Object, e As MouseEventArgs) Handles C1Daten.MouseDown Me.C1Daten.Bookmark = Me.C1Daten.RowContaining(e.Y) End Sub End Class