Common: Fix Property Dialog, Fix context Menu in DocumentResultList

This commit is contained in:
Jonathan Jenne 2021-01-05 16:06:43 +01:00
parent 9cfdacb6f8
commit 59e925d6b2
10 changed files with 274 additions and 133 deletions

View File

@ -6,11 +6,13 @@ Imports DigitalData.Modules.Windows.NativeMethods
Imports DigitalData.Modules.Windows.File
Imports DigitalData.Modules.ZooFlow
Imports DigitalData.Modules.EDMI.API.Rights
Imports DigitalData.Modules.EDMI.API
Public Class DocumentPropertyMenu
Private ReadOnly _Logger As Logger
Private ReadOnly _LogConfig As LogConfig
Private ReadOnly _Environment As Environment
Private ReadOnly _Client As Client
Private ReadOnly _File As Modules.Windows.File
Private ReadOnly _FilePath As String
@ -21,10 +23,11 @@ Public Class DocumentPropertyMenu
Public Const COPY_PATH As String = "Dateipfad kopieren"
Public Const OPEN_PROPERTIES As String = "Eigenschaften"
Public Sub New(LogConfig As LogConfig, Environment As Environment, FilePath As String, Optional ObjectId As Long = 0)
Public Sub New(LogConfig As LogConfig, Environment As Environment, Client As Client, FilePath As String, Optional ObjectId As Long = 0)
_LogConfig = LogConfig
_Logger = LogConfig.GetLogger()
_Environment = Environment
_Client = Client
_FilePath = FilePath
_ObjectId = ObjectId
_File = New Modules.Windows.File(LogConfig)
@ -77,7 +80,7 @@ Public Class DocumentPropertyMenu
Exit Sub
End If
Dim oPropertyDialog As New frmObjectPropertyDialog(_LogConfig, _Environment, _ObjectId)
Dim oPropertyDialog As New frmObjectPropertyDialog(_LogConfig, _Environment, _Client, _ObjectId)
oPropertyDialog.Show()
End Sub

View File

@ -135,52 +135,66 @@ Public Class frmDocumentResultList
End Try
End Sub
Private Async Sub GridView_FocusedRowChanged(sender As GridView, e As FocusedRowChangedEventArgs)
Private Sub GridView_FocusedRowChanged(sender As GridView, e As FocusedRowChangedEventArgs)
_ActiveRowHandle = e.FocusedRowHandle
If e.FocusedRowHandle >= 0 Then
Dim oRow = sender.GetDataRow(e.FocusedRowHandle)
DocumentViewer1.CloseDocument()
Try
Cursor = Cursors.WaitCursor
If _IsLegacy Then
LoadFile_Legacy(oRow)
Else
Await LoadFile_IDB(oRow)
If e.FocusedRowHandle >= 0 Then
Dim oRow = sender.GetDataRow(e.FocusedRowHandle)
DocumentViewer1.CloseDocument()
If _IsLegacy Then
LoadFile_Legacy(oRow)
Else
LoadFile_IDB(oRow)
End If
DocumentViewer1.LoadFile(_DocumentInfo.FullPath)
If _DocumentInfo.AccessRight = Rights.AccessRight.VIEW_ONLY Then
DocumentViewer1.SetViewOnly(True)
RibbonPageGroup_Export.Visible = False
Else
DocumentViewer1.SetViewOnly(False)
RibbonPageGroup_Export.Visible = True
End If
End If
End If
Catch ex As Exception
_Logger.Error(ex)
MsgBox("Error while changing row: " & ex.Message, MsgBoxStyle.Critical, Text)
Finally
Cursor = Cursors.Default
End Try
End Sub
Private Sub LoadFile_Legacy(GridRow As DataRow)
Try
Dim oFullPath = GridRow.Item(COLUMN_FILEPATH)
DocumentViewer1.LoadFile(oFullPath)
_DocumentInfo = New DocumentInfo() With {
.AccessRight = Rights.AccessRight.FULL,
.FullPath = oFullPath
}
Catch ex As Exception
_Logger.Error(ex)
MsgBox("Error while loading file", MsgBoxStyle.Critical, Text)
End Try
End Sub
Private Async Function LoadFile_IDB(GridRow As DataRow) As Task
Private Sub LoadFile_IDB(GridRow As DataRow)
Try
Dim oObjectId = GridRow.Item(COLUMN_DOCID)
_Logger.Debug($"Gettin' Infor for oObjectId: {oObjectId}")
_DocumentInfo = Await _IDBClient.GetDocumentInfo(_Environment.User.UserId, oObjectId)
DocumentViewer1.LoadFile(_DocumentInfo.FullPath)
If _DocumentInfo.AccessRight = Rights.AccessRight.VIEW_ONLY Then
DocumentViewer1.SetViewOnly(True)
RibbonPageGroup_Export.Visible = False
Else
DocumentViewer1.SetViewOnly(False)
RibbonPageGroup_Export.Visible = True
End If
' This needs to be Sync bc otherwise the PopupMenuShowing event will fire before this method loaded the Document Info
_DocumentInfo = _IDBClient.GetDocumentInfo(_Environment.User.UserId, oObjectId)
Catch ex As Exception
_Logger.Error(ex)
MsgBox("Error while loading file", MsgBoxStyle.Critical, Text)
End Try
End Function
End Sub
Public Function RefreshResults(pResults As IEnumerable(Of BaseResult)) As Boolean Implements IResultForm.RefreshResults
@ -589,7 +603,7 @@ Public Class frmDocumentResultList
If oRow IsNot Nothing Then
Dim oObjectId = oRow.Item(COLUMN_DOCID)
Dim oPropertyDialog As New frmObjectPropertyDialog(_LogConfig, _Environment, oObjectId)
Dim oPropertyDialog As New frmObjectPropertyDialog(_LogConfig, _Environment, _IDBClient, oObjectId)
oPropertyDialog.Show()
End If
Catch ex As Exception
@ -645,6 +659,7 @@ Public Class frmDocumentResultList
Dim oMenu As New DocumentPropertyMenu(
_LogConfig,
_Environment,
_IDBClient,
oFilepath,
oObjectId)

View File

@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.1.0.0")>
<Assembly: AssemblyFileVersion("1.1.0.0")>
<Assembly: AssemblyVersion("1.2.0.0")>
<Assembly: AssemblyFileVersion("1.2.0.0")>

View File

@ -141,12 +141,14 @@ Partial Class frmObjectPropertyDialog
Me.cmbBusinessEntity.EditWidth = 100
Me.cmbBusinessEntity.Id = 6
Me.cmbBusinessEntity.Name = "cmbBusinessEntity"
Me.cmbBusinessEntity.Visibility = DevExpress.XtraBars.BarItemVisibility.OnlyInCustomizing
'
'BarStaticItem1
'
Me.BarStaticItem1.Caption = "Entity:"
Me.BarStaticItem1.Id = 0
Me.BarStaticItem1.Name = "BarStaticItem1"
Me.BarStaticItem1.Visibility = DevExpress.XtraBars.BarItemVisibility.OnlyInCustomizing
'
'TabPageAttributes
'

View File

@ -8,16 +8,18 @@ Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.ZooFlow
Imports DigitalData.Modules.Language
Imports DevExpress.XtraGrid
Imports DigitalData.Modules.EDMI.API
Public Class frmObjectPropertyDialog
Private _LogConfig As LogConfig
Private _Logger As Logger
Private _Environment As Environment
Private ReadOnly _Client As Client
Private _ObjectId As Int64
Private _Db As MSSQLServer
Private _Controls As PropertyControls
Public Sub New(LogConfig As LogConfig, Environment As Environment, ObjectId As Long)
Public Sub New(LogConfig As LogConfig, Environment As Environment, Client As Client, ObjectId As Long)
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
@ -25,6 +27,7 @@ Public Class frmObjectPropertyDialog
_LogConfig = LogConfig
_Logger = LogConfig.GetLogger()
_Environment = Environment
_Client = Client
_ObjectId = ObjectId
_Db = _Environment.DatabaseIDB
_Controls = New PropertyControls(_LogConfig, _Db)
@ -36,6 +39,10 @@ Public Class frmObjectPropertyDialog
Try
oHandle = SplashScreenManager.ShowOverlayForm(Me)
If IsNothing(_ObjectId) Then
Throw New ApplicationException("No valid Object Id supplied!")
End If
Dim oEntityIds = Await GetBusinessEntitiesForObjectId(_ObjectId)
Dim oHistoryDataTable = Await GetValueHistoryForObjectId(_ObjectId)
Dim oObjectProperties = Await GetPropertiesForObjectId(_ObjectId)
@ -45,15 +52,16 @@ Public Class frmObjectPropertyDialog
ShowAttributeHistory(oHistoryDataTable)
ShowObjectProperties(oObjectProperties)
If oEntityIds.Count = 1 Then
cmbBusinessEntity.EditValue = oEntityIds.First()
End If
'If oEntityIds.Count = 1 Then
' cmbBusinessEntity.EditValue = oEntityIds.First()
'End If
cmbBusinessEntity.EditValue = oEntityIds.First()
Catch ex As ApplicationException
_Logger.Error(ex)
MessageBox.Show(ex.Message, Text, MessageBoxButtons.OK, MessageBoxIcon.Error)
Catch ex As Exception
_Logger.Error(ex)
MessageBox.Show("Unhandled exception occurred please check the log", Text, MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
MessageBox.Show("Unhandled exception occurred. Please check the log." & vbNewLine & ex.Message, Text, MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
Finally
If oHandle IsNot Nothing
SplashScreenManager.CloseOverlayForm(oHandle)
@ -62,72 +70,90 @@ Public Class frmObjectPropertyDialog
End Sub
Private Async Function GetAttributesForBusinessEntity(EntityId As Long) As Task(Of List(Of Attribute))
Dim oSQL = $"SELECT * FROM VWIDB_BE_ATTRIBUTE WHERE BE_ID = {EntityId}"
Dim oDatatable = Await _Db.GetDatatableAsync(oSQL)
Try
Dim oSQL = $"SELECT * FROM VWIDB_BE_ATTRIBUTE WHERE BE_ID = {EntityId}"
Dim oResult = Await _Client.GetDatatableFromIDBAsync(oSQL)
If oDatatable.Rows.Count = 0 Then
Throw New ApplicationException($"BusinessEntity {EntityId} does not have any attributes!")
Else
Dim oAttributes As New List(Of Attribute)
If oResult.OK = False Then
Throw New ApplicationException($"Attributes for Business Entity {EntityId} could not be retrieved!")
For Each oRow As DataRow In oDatatable.Rows
oAttributes.Add(New Attribute() With {
.ID = oRow.Item("ATTR_ID"),
.Title = oRow.Item("ATTR_TITLE"),
.TypeID = oRow.Item("TYPE_ID"),
.TypeName = oRow.Item("TYPE_NAME")
})
Next
ElseIf oResult.Table.Rows.Count = 0 Then
Throw New ApplicationException($"BusinessEntity {EntityId} does not have any attributes!")
Return oAttributes
End If
Else
Dim oAttributes As New List(Of Attribute)
For Each oRow As DataRow In oResult.Table.Rows
oAttributes.Add(New Attribute() With {
.ID = oRow.Item("ATTR_ID"),
.Title = oRow.Item("ATTR_TITLE"),
.TypeID = oRow.Item("TYPE_ID"),
.TypeName = oRow.Item("TYPE_NAME")
})
Next
Return oAttributes
End If
Catch ex As Exception
_Logger.Error(ex)
Return New List(Of Attribute)
End Try
End Function
Private Async Function GetBusinessEntitiesForObjectId(ObjectId As Long) As Task(Of List(Of Long))
Dim oSQL = $"SELECT BE_ID FROM TBIDB_OBJECT_BE WHERE IDB_OBJ_ID = {ObjectId}"
Dim oDatatable = Await _Db.GetDatatableAsync(oSQL)
Try
Dim oSQL = $"SELECT BE_ID FROM TBIDB_OBJECT_BE WHERE IDB_OBJ_ID = {ObjectId}"
Dim oResult = Await _Client.GetDatatableFromIDBAsync(oSQL)
If oDatatable.Rows.Count = 0 Then
Throw New ApplicationException($"ObjectId {ObjectId} is not assigned to any business entity!")
Else
Dim oEntities As New List(Of Long)
If oResult.OK = False Then
Throw New ApplicationException($"Business Entities could not be retrieved!")
For Each oRow In oDatatable.Rows
oEntities.Add(oRow.item("BE_ID"))
Next
ElseIf oResult.Table.Rows.Count = 0 Then
Throw New ApplicationException($"ObjectId {ObjectId} is not assigned to any business entity!")
Return oEntities
End If
Else
Dim oEntities As New List(Of Long)
For Each oRow In oResult.Table.Rows
oEntities.Add(oRow.item("BE_ID"))
Next
Return oEntities
End If
Catch ex As Exception
_Logger.Error(ex)
Return New List(Of Long)
End Try
End Function
Private Async Function GetValueHistoryForObjectId(ObjectId As Long) As Task(Of DataTable)
Dim oSQL As String = $"SELECT * FROM VWIDB_CHANGE_LOG WHERE IDB_OBJ_ID = {ObjectId} ORDER BY ChangeID DESC"
Dim oDatatable = Await _Db.GetDatatableAsync(oSQL)
Dim oResult = Await _Client.GetDatatableFromIDBAsync(oSQL)
Return oDatatable
Return oResult.Table
End Function
Private Async Function GetPropertiesForObjectId(ObjectId As Long) As Task(Of DataTable)
Dim oSQL As String = $"SELECT * FROM TBIDB_OBJECT WHERE IDB_OBJ_ID = {ObjectId}"
Dim oDatatable = Await _Db.GetDatatableAsync(oSQL)
Dim oResult = Await _Client.GetDatatableFromIDBAsync(oSQL)
Return oDatatable
Return oResult.Table
End Function
Private Async Function GetAttributeValue(AttributeName As String, ObjectId As Long, Optional LanguageCode As String = "de-DE", Optional IsForeign As Boolean = False) As Task(Of Object)
Dim oIsForeign = IIf(IsForeign, 1, 0)
Dim oSQL = $"SELECT TERM_VALUE FROM [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] ({ObjectId}, '{AttributeName}', '{LanguageCode}', {oIsForeign})"
Dim oTermValue = Await _Db.GetScalarValueAsync(oSQL)
Dim oResult = Await _Client.GetScalarValueFromIDBAsync(oSQL)
Return oTermValue
Return oResult.Scalar
End Function
Private Async Function GetAttributeValueAsTable(AttributeName As String, ObjectId As Long, Optional LanguageCode As String = "de-DE", Optional IsForeign As Boolean = False) As Task(Of DataTable)
Dim oIsForeign = IIf(IsForeign, 1, 0)
Dim oSQL = $"SELECT TERM_VALUE FROM [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] ({ObjectId}, '{AttributeName}', '{LanguageCode}', {oIsForeign})"
Dim oDatatable = Await _Db.GetDatatableAsync(oSQL)
Dim oResult = Await _Client.GetDatatableFromIDBAsync(oSQL)
Return oDatatable
Return oResult.Table
End Function
Private Async Sub cmbBusinessEntity_EditValueChanged(sender As Object, e As EventArgs) Handles cmbBusinessEntity.EditValueChanged

View File

@ -24,6 +24,7 @@ Partial Class Form1
Private Sub InitializeComponent()
Me.components = New System.ComponentModel.Container()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Form1))
Dim DockingContainer2 As DevExpress.XtraBars.Docking2010.Views.Tabbed.DockingContainer = New DevExpress.XtraBars.Docking2010.Views.Tabbed.DockingContainer()
Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl()
Me.ButtonSelectFiles = New DevExpress.XtraBars.BarButtonItem()
Me.ButtonImportFiles = New DevExpress.XtraBars.BarButtonItem()
@ -65,14 +66,16 @@ Partial Class Form1
Me.DockPanel2 = New DevExpress.XtraBars.Docking.DockPanel()
Me.DockPanel2_Container = New DevExpress.XtraBars.Docking.ControlContainer()
Me.DocumentViewer1 = New DigitalData.Controls.DocumentViewer.DocumentViewer()
Me.DockPanel4 = New DevExpress.XtraBars.Docking.DockPanel()
Me.DockPanel4_Container = New DevExpress.XtraBars.Docking.ControlContainer()
Me.GridControl1 = New DevExpress.XtraGrid.GridControl()
Me.GridView1 = New DevExpress.XtraGrid.Views.Grid.GridView()
Me.BindingSource1 = New System.Windows.Forms.BindingSource(Me.components)
Me.Timer1 = New System.Windows.Forms.Timer(Me.components)
Me.BarEditItem1 = New DevExpress.XtraBars.BarEditItem()
Me.panelContainer1 = New DevExpress.XtraBars.Docking.DockPanel()
Me.GridControl1 = New DevExpress.XtraGrid.GridControl()
Me.GridView1 = New DevExpress.XtraGrid.Views.Grid.GridView()
Me.DockPanel4 = New DevExpress.XtraBars.Docking.DockPanel()
Me.DockPanel4_Container = New DevExpress.XtraBars.Docking.ControlContainer()
Me.Document1 = New DevExpress.XtraBars.Docking2010.Views.Tabbed.Document(Me.components)
Me.DocumentGroup1 = New DevExpress.XtraBars.Docking2010.Views.Tabbed.DocumentGroup(Me.components)
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).BeginInit()
@ -90,11 +93,13 @@ Partial Class Form1
CType(Me.listboxFiles, System.ComponentModel.ISupportInitialize).BeginInit()
Me.DockPanel2.SuspendLayout()
Me.DockPanel2_Container.SuspendLayout()
CType(Me.BindingSource1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridView1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.DockPanel4.SuspendLayout()
Me.DockPanel4_Container.SuspendLayout()
CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridView1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.BindingSource1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.Document1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.DocumentGroup1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'RibbonControl1
@ -108,7 +113,7 @@ Partial Class Form1
Me.RibbonControl1.PageHeaderItemLinks.Add(Me.BarMdiChildrenListItem1)
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1})
Me.RibbonControl1.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemTextEdit1, Me.RepositoryItemTextEdit2, Me.RepositoryItemTextEdit3, Me.RepositoryItemTextEdit4})
Me.RibbonControl1.Size = New System.Drawing.Size(1093, 158)
Me.RibbonControl1.Size = New System.Drawing.Size(1093, 159)
Me.RibbonControl1.StatusBar = Me.RibbonStatusBar1
'
'ButtonSelectFiles
@ -287,10 +292,10 @@ Partial Class Form1
'
'RibbonStatusBar1
'
Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 640)
Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 642)
Me.RibbonStatusBar1.Name = "RibbonStatusBar1"
Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1
Me.RibbonStatusBar1.Size = New System.Drawing.Size(1093, 24)
Me.RibbonStatusBar1.Size = New System.Drawing.Size(1093, 22)
'
'RibbonPage2
'
@ -304,6 +309,13 @@ Partial Class Form1
Me.DocumentManager1.View = Me.TabbedView1
Me.DocumentManager1.ViewCollection.AddRange(New DevExpress.XtraBars.Docking2010.Views.BaseView() {Me.TabbedView1})
'
'TabbedView1
'
Me.TabbedView1.DocumentGroups.AddRange(New DevExpress.XtraBars.Docking2010.Views.Tabbed.DocumentGroup() {Me.DocumentGroup1})
Me.TabbedView1.Documents.AddRange(New DevExpress.XtraBars.Docking2010.Views.BaseDocument() {Me.Document1})
DockingContainer2.Element = Me.DocumentGroup1
Me.TabbedView1.RootContainer.Nodes.AddRange(New DevExpress.XtraBars.Docking2010.Views.Tabbed.DockingContainer() {DockingContainer2})
'
'DockManager1
'
Me.DockManager1.AutoHideContainers.AddRange(New DevExpress.XtraBars.Docking.AutoHideContainer() {Me.hideContainerBottom})
@ -313,12 +325,12 @@ Partial Class Form1
'
'hideContainerBottom
'
Me.hideContainerBottom.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(240, Byte), Integer), CType(CType(240, Byte), Integer))
Me.hideContainerBottom.BackColor = System.Drawing.Color.FromArgb(CType(CType(248, Byte), Integer), CType(CType(248, Byte), Integer), CType(CType(248, Byte), Integer))
Me.hideContainerBottom.Controls.Add(Me.DockPanel3)
Me.hideContainerBottom.Dock = System.Windows.Forms.DockStyle.Bottom
Me.hideContainerBottom.Location = New System.Drawing.Point(0, 619)
Me.hideContainerBottom.Location = New System.Drawing.Point(0, 615)
Me.hideContainerBottom.Name = "hideContainerBottom"
Me.hideContainerBottom.Size = New System.Drawing.Size(1093, 21)
Me.hideContainerBottom.Size = New System.Drawing.Size(1093, 27)
'
'DockPanel3
'
@ -357,27 +369,28 @@ Partial Class Form1
Me.DockPanel1.Controls.Add(Me.DockPanel1_Container)
Me.DockPanel1.Dock = DevExpress.XtraBars.Docking.DockingStyle.Left
Me.DockPanel1.ID = New System.Guid("12b5eead-07cc-48c6-93a4-85cd0b4b82ce")
Me.DockPanel1.Location = New System.Drawing.Point(0, 158)
Me.DockPanel1.Location = New System.Drawing.Point(0, 159)
Me.DockPanel1.Name = "DockPanel1"
Me.DockPanel1.Options.ShowCloseButton = False
Me.DockPanel1.OriginalSize = New System.Drawing.Size(297, 200)
Me.DockPanel1.Size = New System.Drawing.Size(297, 461)
Me.DockPanel1.Size = New System.Drawing.Size(297, 456)
Me.DockPanel1.Text = "Files to Upload"
'
'DockPanel1_Container
'
Me.DockPanel1_Container.Controls.Add(Me.listboxFiles)
Me.DockPanel1_Container.Location = New System.Drawing.Point(3, 26)
Me.DockPanel1_Container.Location = New System.Drawing.Point(3, 46)
Me.DockPanel1_Container.Name = "DockPanel1_Container"
Me.DockPanel1_Container.Size = New System.Drawing.Size(290, 432)
Me.DockPanel1_Container.Size = New System.Drawing.Size(290, 407)
Me.DockPanel1_Container.TabIndex = 0
'
'listboxFiles
'
Me.listboxFiles.DataSource = Me.BindingSource1
Me.listboxFiles.Dock = System.Windows.Forms.DockStyle.Fill
Me.listboxFiles.Location = New System.Drawing.Point(0, 0)
Me.listboxFiles.Name = "listboxFiles"
Me.listboxFiles.Size = New System.Drawing.Size(290, 432)
Me.listboxFiles.Size = New System.Drawing.Size(290, 407)
Me.listboxFiles.TabIndex = 1
'
'DockPanel2
@ -385,19 +398,19 @@ Partial Class Form1
Me.DockPanel2.Controls.Add(Me.DockPanel2_Container)
Me.DockPanel2.Dock = DevExpress.XtraBars.Docking.DockingStyle.Right
Me.DockPanel2.ID = New System.Guid("e82850af-b594-49e9-ae83-36d4bf007da5")
Me.DockPanel2.Location = New System.Drawing.Point(893, 158)
Me.DockPanel2.Location = New System.Drawing.Point(893, 159)
Me.DockPanel2.Name = "DockPanel2"
Me.DockPanel2.Options.ShowCloseButton = False
Me.DockPanel2.OriginalSize = New System.Drawing.Size(200, 200)
Me.DockPanel2.Size = New System.Drawing.Size(200, 461)
Me.DockPanel2.Size = New System.Drawing.Size(200, 456)
Me.DockPanel2.Text = "Document Viewer"
'
'DockPanel2_Container
'
Me.DockPanel2_Container.Controls.Add(Me.DocumentViewer1)
Me.DockPanel2_Container.Location = New System.Drawing.Point(4, 26)
Me.DockPanel2_Container.Location = New System.Drawing.Point(4, 46)
Me.DockPanel2_Container.Name = "DockPanel2_Container"
Me.DockPanel2_Container.Size = New System.Drawing.Size(193, 432)
Me.DockPanel2_Container.Size = New System.Drawing.Size(193, 407)
Me.DockPanel2_Container.TabIndex = 0
'
'DocumentViewer1
@ -405,9 +418,48 @@ Partial Class Form1
Me.DocumentViewer1.Dock = System.Windows.Forms.DockStyle.Fill
Me.DocumentViewer1.Location = New System.Drawing.Point(0, 0)
Me.DocumentViewer1.Name = "DocumentViewer1"
Me.DocumentViewer1.Size = New System.Drawing.Size(193, 432)
Me.DocumentViewer1.Size = New System.Drawing.Size(193, 407)
Me.DocumentViewer1.TabIndex = 0
'
'DockPanel4
'
Me.DockPanel4.Controls.Add(Me.DockPanel4_Container)
Me.DockPanel4.DockedAsTabbedDocument = True
Me.DockPanel4.FloatLocation = New System.Drawing.Point(354, 490)
Me.DockPanel4.FloatSize = New System.Drawing.Size(538, 200)
Me.DockPanel4.FloatVertical = True
Me.DockPanel4.ID = New System.Guid("d8d91c41-bf1b-4f30-b72e-66f2da18db8e")
Me.DockPanel4.Name = "DockPanel4"
Me.DockPanel4.OriginalSize = New System.Drawing.Size(200, 200)
Me.DockPanel4.SavedDock = DevExpress.XtraBars.Docking.DockingStyle.Top
Me.DockPanel4.SavedIndex = 2
Me.DockPanel4.Text = "DockPanelGrid"
'
'DockPanel4_Container
'
Me.DockPanel4_Container.Controls.Add(Me.GridControl1)
Me.DockPanel4_Container.Location = New System.Drawing.Point(0, 0)
Me.DockPanel4_Container.Name = "DockPanel4_Container"
Me.DockPanel4_Container.Size = New System.Drawing.Size(590, 424)
Me.DockPanel4_Container.TabIndex = 0
'
'GridControl1
'
Me.GridControl1.DataSource = Me.BindingSource1
Me.GridControl1.Dock = System.Windows.Forms.DockStyle.Fill
Me.GridControl1.Location = New System.Drawing.Point(0, 0)
Me.GridControl1.MainView = Me.GridView1
Me.GridControl1.MenuManager = Me.RibbonControl1
Me.GridControl1.Name = "GridControl1"
Me.GridControl1.Size = New System.Drawing.Size(590, 424)
Me.GridControl1.TabIndex = 5
Me.GridControl1.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridView1})
'
'GridView1
'
Me.GridView1.GridControl = Me.GridControl1
Me.GridView1.Name = "GridView1"
'
'BindingSource1
'
'
@ -435,53 +487,27 @@ Partial Class Form1
Me.panelContainer1.Size = New System.Drawing.Size(192, 145)
Me.panelContainer1.Text = "panelContainer1"
'
'GridControl1
'Document1
'
Me.GridControl1.Dock = System.Windows.Forms.DockStyle.Fill
Me.GridControl1.Location = New System.Drawing.Point(0, 0)
Me.GridControl1.MainView = Me.GridView1
Me.GridControl1.MenuManager = Me.RibbonControl1
Me.GridControl1.Name = "GridControl1"
Me.GridControl1.Size = New System.Drawing.Size(530, 171)
Me.GridControl1.TabIndex = 5
Me.GridControl1.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridView1})
Me.Document1.Caption = "DockPanelGrid"
Me.Document1.ControlName = "DockPanel4"
Me.Document1.FloatLocation = New System.Drawing.Point(354, 490)
Me.Document1.FloatSize = New System.Drawing.Size(538, 200)
Me.Document1.Properties.AllowClose = DevExpress.Utils.DefaultBoolean.[True]
Me.Document1.Properties.AllowFloat = DevExpress.Utils.DefaultBoolean.[True]
Me.Document1.Properties.AllowFloatOnDoubleClick = DevExpress.Utils.DefaultBoolean.[True]
'
'GridView1
'DocumentGroup1
'
Me.GridView1.GridControl = Me.GridControl1
Me.GridView1.Name = "GridView1"
'
'DockPanel4
'
Me.DockPanel4.Controls.Add(Me.DockPanel4_Container)
Me.DockPanel4.Dock = DevExpress.XtraBars.Docking.DockingStyle.Float
Me.DockPanel4.FloatLocation = New System.Drawing.Point(2475, 322)
Me.DockPanel4.FloatSize = New System.Drawing.Size(538, 200)
Me.DockPanel4.FloatVertical = True
Me.DockPanel4.ID = New System.Guid("d8d91c41-bf1b-4f30-b72e-66f2da18db8e")
Me.DockPanel4.Location = New System.Drawing.Point(0, 0)
Me.DockPanel4.Name = "DockPanel4"
Me.DockPanel4.OriginalSize = New System.Drawing.Size(200, 200)
Me.DockPanel4.SavedDock = DevExpress.XtraBars.Docking.DockingStyle.Top
Me.DockPanel4.SavedIndex = 2
Me.DockPanel4.Size = New System.Drawing.Size(538, 200)
Me.DockPanel4.Text = "DockPanelGrid"
'
'DockPanel4_Container
'
Me.DockPanel4_Container.Controls.Add(Me.GridControl1)
Me.DockPanel4_Container.Location = New System.Drawing.Point(4, 26)
Me.DockPanel4_Container.Name = "DockPanel4_Container"
Me.DockPanel4_Container.Size = New System.Drawing.Size(530, 171)
Me.DockPanel4_Container.TabIndex = 0
Me.DocumentGroup1.Items.AddRange(New DevExpress.XtraBars.Docking2010.Views.Tabbed.Document() {Me.Document1})
'
'Form1
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(1093, 664)
Me.Controls.Add(Me.DockPanel2)
Me.Controls.Add(Me.DockPanel1)
Me.Controls.Add(Me.DockPanel2)
Me.Controls.Add(Me.hideContainerBottom)
Me.Controls.Add(Me.RibbonStatusBar1)
Me.Controls.Add(Me.RibbonControl1)
@ -506,11 +532,13 @@ Partial Class Form1
CType(Me.listboxFiles, System.ComponentModel.ISupportInitialize).EndInit()
Me.DockPanel2.ResumeLayout(False)
Me.DockPanel2_Container.ResumeLayout(False)
CType(Me.BindingSource1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridView1, System.ComponentModel.ISupportInitialize).EndInit()
Me.DockPanel4.ResumeLayout(False)
Me.DockPanel4_Container.ResumeLayout(False)
CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridView1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.BindingSource1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.Document1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.DocumentGroup1, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
Me.PerformLayout()
@ -564,4 +592,6 @@ Partial Class Form1
Friend WithEvents GridView1 As DevExpress.XtraGrid.Views.Grid.GridView
Friend WithEvents DockPanel4 As DevExpress.XtraBars.Docking.DockPanel
Friend WithEvents DockPanel4_Container As DevExpress.XtraBars.Docking.ControlContainer
Friend WithEvents DocumentGroup1 As DevExpress.XtraBars.Docking2010.Views.Tabbed.DocumentGroup
Friend WithEvents Document1 As DevExpress.XtraBars.Docking2010.Views.Tabbed.Document
End Class

View File

@ -341,6 +341,9 @@
<metadata name="BindingSource1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>316, 17</value>
</metadata>
<metadata name="BindingSource1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>316, 17</value>
</metadata>
<metadata name="Timer1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>453, 17</value>
</metadata>

View File

@ -147,6 +147,9 @@ Public Class Form1
Try
Dim oResult As Client.FileList = Await _Client.ListFilesForUserAsync()
BindingSource1.DataSource = oResult.Datatable
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Uh oh!")
End Try

View File

@ -137,6 +137,47 @@ Public Class Client
End Try
End Function
Public Function GetDatatableFromIDB(SQL As String) As TableResult
Try
Dim oResponse = _channel.ReturnDatatable_MSSQL_IDB(SQL)
Return oResponse
Catch ex As Exception
_logger.Error(ex)
Throw ex
End Try
End Function
Public Async Function GetDatatableFromIDBAsync(SQL As String) As Task(Of TableResult)
Try
Dim oResponse = Await _channel.ReturnDatatable_MSSQL_IDBAsync(SQL)
Return oResponse
Catch ex As Exception
_logger.Error(ex)
Throw ex
End Try
End Function
Public Function GetScalarValueFromIDB(SQL As String) As ScalarResult
Try
Dim oResponse = _channel.ReturnScalar_MSSQL_IDB(SQL)
Return oResponse
Catch ex As Exception
_logger.Error(ex)
Throw ex
End Try
End Function
Public Async Function GetScalarValueFromIDBAsync(SQL As String) As Task(Of ScalarResult)
Try
Dim oResponse = Await _channel.ReturnScalar_MSSQL_IDBAsync(SQL)
Return oResponse
Catch ex As Exception
_logger.Error(ex)
Throw ex
End Try
End Function
Public Function GetDatatableByName(DatatableName As String, Optional FilterExpression As String = "", Optional SortByColumn As String = "") As TableResult
Try
Dim oResponse = _channel.ReturnDatatableFromCache(DatatableName, FilterExpression, SortByColumn)
@ -157,7 +198,25 @@ Public Class Client
End Try
End Function
Public Async Function GetDocumentInfo(UserId As Long, ObjectId As Long) As Task(Of DocumentInfo)
Public Function GetDocumentInfo(UserId As Long, ObjectId As Long) As DocumentInfo
Try
Dim oParams = New DocumentInfoRequest With {
.ObjectId = ObjectId,
.UserId = UserId
}
Dim oResponse As DocumentInfoResponse = _channel.GetFileInfoByObjectId(oParams)
Return New DocumentInfo With {
.AccessRight = oResponse.FileRight,
.FullPath = oResponse.FullPath
}
Catch ex As Exception
_logger.Error(ex)
Throw ex
End Try
End Function
Public Async Function GetDocumentInfoAsync(UserId As Long, ObjectId As Long) As Task(Of DocumentInfo)
Try
Dim oParams = New DocumentInfoRequest With {
.ObjectId = ObjectId,

View File

@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.1.0.0")>
<Assembly: AssemblyFileVersion("1.1.0.0")>
<Assembly: AssemblyVersion("1.1.0.1")>
<Assembly: AssemblyFileVersion("1.1.0.1")>