You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

383 lines
15 KiB

Imports System.Data
Imports System.Data.SqlTypes
Imports System.Data.SqlClient
Imports System.ComponentModel
Imports UtilityLibrary.Win32
Public Class frmDokumentberechtigung
Inherits System.Windows.Forms.Form
#Region " Vom Windows Form Designer generierter Code "
Public Sub New()
MyBase.New()
' Dieser Aufruf ist für den Windows Form-Designer erforderlich.
InitializeComponent()
' Initialisierungen nach dem Aufruf InitializeComponent() hinzufügen
End Sub
' Die Form überschreibt den Löschvorgang der Basisklasse, um Komponenten zu bereinigen.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
' Für Windows Form-Designer erforderlich
Private components As System.ComponentModel.IContainer
'HINWEIS: Die folgende Prozedur ist für den Windows Form-Designer erforderlich
'Sie kann mit dem Windows Form-Designer modifiziert werden.
'Verwenden Sie nicht den Code-Editor zur Bearbeitung.
Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox
Friend WithEvents berechtigunglist As C1.Win.C1TrueDBGrid.C1TrueDBGrid
Friend WithEvents btnSave As System.Windows.Forms.Button
Friend WithEvents GroupBox2 As System.Windows.Forms.GroupBox
Friend WithEvents CheckedListBox1 As System.Windows.Forms.CheckedListBox
Friend WithEvents btnCancel As System.Windows.Forms.Button
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmDokumentberechtigung))
Me.btnSave = New System.Windows.Forms.Button()
Me.GroupBox1 = New System.Windows.Forms.GroupBox()
Me.berechtigunglist = New C1.Win.C1TrueDBGrid.C1TrueDBGrid()
Me.GroupBox2 = New System.Windows.Forms.GroupBox()
Me.CheckedListBox1 = New System.Windows.Forms.CheckedListBox()
Me.btnCancel = New System.Windows.Forms.Button()
Me.GroupBox1.SuspendLayout()
CType(Me.berechtigunglist, System.ComponentModel.ISupportInitialize).BeginInit()
Me.GroupBox2.SuspendLayout()
Me.SuspendLayout()
'
'btnSave
'
Me.btnSave.DialogResult = System.Windows.Forms.DialogResult.OK
Me.btnSave.Location = New System.Drawing.Point(592, 344)
Me.btnSave.Name = "btnSave"
Me.btnSave.Size = New System.Drawing.Size(75, 23)
Me.btnSave.TabIndex = 0
Me.btnSave.Text = "&Speichern"
'
'GroupBox1
'
Me.GroupBox1.Controls.Add(Me.berechtigunglist)
Me.GroupBox1.Location = New System.Drawing.Point(8, 8)
Me.GroupBox1.Name = "GroupBox1"
Me.GroupBox1.Size = New System.Drawing.Size(432, 360)
Me.GroupBox1.TabIndex = 4
Me.GroupBox1.TabStop = False
Me.GroupBox1.Text = "Mögliche Funktionen"
'
'berechtigunglist
'
Me.berechtigunglist.AllowSort = False
Me.berechtigunglist.AlternatingRows = True
Me.berechtigunglist.Dock = System.Windows.Forms.DockStyle.Fill
Me.berechtigunglist.FilterBar = True
Me.berechtigunglist.GroupByCaption = "Drag a column header here to group by that column"
Me.berechtigunglist.Images.Add(CType(resources.GetObject("berechtigunglist.Images"), System.Drawing.Image))
Me.berechtigunglist.Location = New System.Drawing.Point(3, 16)
Me.berechtigunglist.Name = "berechtigunglist"
Me.berechtigunglist.PreviewInfo.Location = New System.Drawing.Point(0, 0)
Me.berechtigunglist.PreviewInfo.Size = New System.Drawing.Size(0, 0)
Me.berechtigunglist.PreviewInfo.ZoomFactor = 75.0R
Me.berechtigunglist.PrintInfo.PageSettings = CType(resources.GetObject("berechtigunglist.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings)
Me.berechtigunglist.ScrollTips = True
Me.berechtigunglist.Size = New System.Drawing.Size(426, 341)
Me.berechtigunglist.TabIndex = 16
Me.berechtigunglist.Text = "berechtigunglist"
Me.berechtigunglist.PropBag = resources.GetString("berechtigunglist.PropBag")
'
'GroupBox2
'
Me.GroupBox2.Controls.Add(Me.CheckedListBox1)
Me.GroupBox2.Location = New System.Drawing.Point(440, 8)
Me.GroupBox2.Name = "GroupBox2"
Me.GroupBox2.Size = New System.Drawing.Size(232, 184)
Me.GroupBox2.TabIndex = 5
Me.GroupBox2.TabStop = False
Me.GroupBox2.Text = "Berechtigungen für die gewählte Funktion"
'
'CheckedListBox1
'
Me.CheckedListBox1.Location = New System.Drawing.Point(8, 16)
Me.CheckedListBox1.Name = "CheckedListBox1"
Me.CheckedListBox1.Size = New System.Drawing.Size(216, 154)
Me.CheckedListBox1.TabIndex = 4
'
'btnCancel
'
Me.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel
Me.btnCancel.Location = New System.Drawing.Point(512, 344)
Me.btnCancel.Name = "btnCancel"
Me.btnCancel.Size = New System.Drawing.Size(75, 23)
Me.btnCancel.TabIndex = 6
Me.btnCancel.Text = "&Abbruch"
'
'frmDokumentberechtigung
'
Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
Me.ClientSize = New System.Drawing.Size(674, 375)
Me.Controls.Add(Me.btnCancel)
Me.Controls.Add(Me.GroupBox2)
Me.Controls.Add(Me.GroupBox1)
Me.Controls.Add(Me.btnSave)
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
Me.Name = "frmDokumentberechtigung"
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "Berechtigungseinschränkung für Dokumente"
Me.GroupBox1.ResumeLayout(False)
CType(Me.berechtigunglist, System.ComponentModel.ISupportInitialize).EndInit()
Me.GroupBox2.ResumeLayout(False)
Me.ResumeLayout(False)
End Sub
#End Region
#Region "Deklarationen"
Dim m_vertraulich As Boolean
Property Vertraulich() As Boolean
Get
Return m_vertraulich
End Get
Set(ByVal Value As Boolean)
m_vertraulich = Value
End Set
End Property
Dim m_dokumenttyp As Integer
Property Dokumenttyp() As Integer
Get
Return m_dokumenttyp
End Get
Set(ByVal Value As Integer)
m_dokumenttyp = Value
End Set
End Property
Dim m_partnernr As Integer
Property Partnernr() As Integer
Get
Return m_partnernr
End Get
Set(ByVal Value As Integer)
m_partnernr = Value
End Set
End Property
Dim m_anzeigen As Boolean
Dim m_erstellen As Boolean
Dim m_bearbeiten As Boolean
Dim m_loeschen As Boolean
Dim m_abschliessen As Boolean
Dim m_funktionsgruppenr As Integer
Property Anzeigen() As Boolean
Get
Return m_anzeigen
End Get
Set(ByVal Value As Boolean)
m_anzeigen = Value
End Set
End Property
Property Bearbeiten() As Boolean
Get
Return m_bearbeiten
End Get
Set(ByVal Value As Boolean)
m_bearbeiten = Value
End Set
End Property
Property Loeschen() As Boolean
Get
Return m_loeschen
End Get
Set(ByVal Value As Boolean)
m_loeschen = Value
End Set
End Property
Property Abschliessen() As Boolean
Get
Return m_abschliessen
End Get
Set(ByVal Value As Boolean)
m_abschliessen = Value
End Set
End Property
Property Funktionsgruppenr() As Integer
Get
Return m_funktionsgruppenr
End Get
Set(ByVal Value As Integer)
m_funktionsgruppenr = Value
End Set
End Property
Dim m_funktionsgruppebezeichnung As String
Property Funktionsgruppebezeichnung() As String
Get
Return m_funktionsgruppebezeichnung
End Get
Set(ByVal Value As String)
m_funktionsgruppebezeichnung = Value
End Set
End Property
#End Region
Private Sub frmDokumentberechtigung_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.CheckedListBox1.DataSource = Generic_Select(1)
Me.CheckedListBox1.ValueMember = "berechtigungnr"
Me.CheckedListBox1.DisplayMember = "bezeichnung"
Dim d As New DataTable()
If Me.Vertraulich Then
d = DivFnkt.Berechtigte_Funktionen(Dokumenttyp, 0, 0, 0, 0, 0, 0, 1)
Else
d = DivFnkt.Berechtigte_Funktionen(Dokumenttyp, 0, 0, 0, 0, 0, 0, 0)
End If
Me.berechtigunglist.DataSource = d
Me.berechtigunglist.DataMember = d.TableName
DivFnkt.SpaltenTitel_Aktualisieren(Me.berechtigunglist, d, "berechtigungsliste")
Me.berechtigunglist.Splits(0).DisplayColumns(1).Visible = False
Set_Berechtigungen()
Me.berechtigunglist.ScrollTips = True
End Sub
Private Sub Berechtigunglist_FetchScrollTips(ByVal sender As System.Object, ByVal e As C1.Win.C1TrueDBGrid.FetchScrollTipsEventArgs) Handles berechtigunglist.FetchScrollTips
Select Case e.ScrollBar
Case C1.Win.C1TrueDBGrid.ScrollBarEnum.Vertical
e.ScrollTip = CStr(e.Row + 1) & " / " & CStr(Me.berechtigunglist.Splits(0).Rows.Count)
End Select
e.TipStyle.ForeColor = Color.Blue
End Sub
Private Function Generic_Select(ByVal typ As Integer) As DataTable
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
Select Case typ
Case 1
scmCmdToExecute.CommandText = "dbo.pv_berechtigung_aktiv_select"
Case Else
End Select
scmCmdToExecute.CommandType = CommandType.StoredProcedure
Dim dtToReturn As DataTable = New DataTable()
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
scmCmdToExecute.Connection = conn.scoDBConnection
Try
Select Case typ
Case 1
scmCmdToExecute.Parameters.Add(New SqlParameter("@mandantnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MandantNr))
Case Else
End Select
If typ = 1 Then
End If
sdaAdapter.Fill(dtToReturn)
Select Case typ
Case 1
Dim i As Integer
For i = 0 To dtToReturn.Rows.Count - 1
If dtToReturn.Rows(i).Item("berechtigungnr") = 2 Then
dtToReturn.Rows(i).Delete()
End If
Next
Case Else
End Select
Return dtToReturn
Catch ex As Exception
' // some error occured. Bubble it to caller and encapsulate Exception object
Throw New Exception("Dokumenterstellung::Generic_Select::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex)
Finally
scmCmdToExecute.Dispose()
sdaAdapter.Dispose()
End Try
End Function
Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click
Try
Dim i As Integer
Me.Funktionsgruppenr = Me.berechtigunglist.Columns(1).Value
Me.Funktionsgruppebezeichnung = Me.berechtigunglist.Columns(0).Value
Me.Close()
Catch
End Try
End Sub
Private Sub CheckedListBox1_ItemCheck(ByVal sender As Object, ByVal e As System.Windows.Forms.ItemCheckEventArgs) Handles CheckedListBox1.ItemCheck
Dim i As Integer
Dim bm As Long
Select Case Me.CheckedListBox1.SelectedValue
Case 1
If e.NewValue = CheckState.Checked And Me.berechtigunglist.Columns(2).Value <> 1 Then
MyMsg.show_standardmessage(32, MsgBoxStyle.Critical)
e.NewValue = CheckState.Unchecked
Exit Sub
End If
Me.Anzeigen = e.NewValue
Case 3
If e.NewValue = CheckState.Checked And Me.berechtigunglist.Columns(4).Value <> 1 Then
MyMsg.show_standardmessage(32, MsgBoxStyle.Critical)
e.NewValue = CheckState.Unchecked
Exit Sub
End If
Me.Bearbeiten = e.NewValue
Case 4
If e.NewValue = CheckState.Checked And Me.berechtigunglist.Columns(5).Value <> 1 Then
MyMsg.show_standardmessage(32, MsgBoxStyle.Critical)
e.NewValue = CheckState.Unchecked
Exit Sub
End If
Me.Loeschen = e.NewValue
Case 5
If e.NewValue = CheckState.Checked And Me.berechtigunglist.Columns(6).Value <> 1 Then
MyMsg.show_standardmessage(32, MsgBoxStyle.Critical)
e.NewValue = CheckState.Unchecked
Exit Sub
End If
Me.Abschliessen = e.NewValue
End Select
End Sub
Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancel.Click
Me.Close()
End Sub
Private Sub berechtigunglist_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles berechtigunglist.MouseUp
Set_Berechtigungen()
End Sub
Private Sub Set_Berechtigungen()
Me.CheckedListBox1.SetItemChecked(0, False)
Me.CheckedListBox1.SetItemChecked(1, False)
Me.CheckedListBox1.SetItemChecked(2, False)
Me.CheckedListBox1.SetItemChecked(3, False)
If Me.berechtigunglist.Columns(2).Value = 1 Then Me.CheckedListBox1.SetItemChecked(0, True)
If Me.berechtigunglist.Columns(4).Value = 1 Then Me.CheckedListBox1.SetItemChecked(1, True)
If Me.berechtigunglist.Columns(5).Value = 1 Then Me.CheckedListBox1.SetItemChecked(2, True)
If Me.berechtigunglist.Columns(6).Value = 1 Then Me.CheckedListBox1.SetItemChecked(3, True)
Me.Anzeigen = Me.berechtigunglist.Columns(2).Value = 1
Me.Bearbeiten = Me.berechtigunglist.Columns(4).Value = 1
Me.Loeschen = Me.berechtigunglist.Columns(5).Value = 1
Me.Abschliessen = Me.berechtigunglist.Columns(6).Value = 1
End Sub
Private Sub berechtigunglist_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles berechtigunglist.DoubleClick
Try
Dim i As Integer
Me.Funktionsgruppenr = Me.berechtigunglist.Columns(1).Value
Me.Funktionsgruppebezeichnung = Me.berechtigunglist.Columns(0).Value
Me.DialogResult = DialogResult.OK
Me.Close()
Catch
End Try
End Sub
End Class