143 lines
5.6 KiB
VB.net
143 lines
5.6 KiB
VB.net
Imports DigitalData.Modules.ZooFlow
|
|
Imports DigitalData.Modules.Logging
|
|
Imports DigitalData.GUIs.Common.Base
|
|
Imports DigitalData.Modules.ZooFlow.Constants
|
|
Imports DigitalData.Modules.EDMI.API
|
|
Imports DevExpress.XtraEditors
|
|
Imports System.Drawing
|
|
Imports DigitalData.Modules.EDMI.API.EDMIServiceReference
|
|
Imports DevExpress.Utils.Svg
|
|
|
|
Public Class frmWorkflow_Adhoc_start
|
|
Private ReadOnly Property LogConfig As LogConfig
|
|
Private ReadOnly Property Logger As Logger
|
|
Private Property OperationMode As OperationMode
|
|
Private ReadOnly Environment As Environment
|
|
Private ReadOnly AdHocWorkflow As AdHocWorkflow
|
|
Private Client As Client
|
|
Private IsLoading As Boolean = True
|
|
Private WFUserList As List(Of WFUSer)
|
|
Public Sub New(pLogConfig As LogConfig, pEnvironment As Environment, pAdhocWorkflow As AdHocWorkflow)
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
Environment = pEnvironment
|
|
AdHocWorkflow = pAdhocWorkflow
|
|
LogConfig = pLogConfig
|
|
Logger = pLogConfig.GetLogger()
|
|
End Sub
|
|
Private Function GetOperationMode() As OperationMode
|
|
Dim oOperationMode As OperationMode
|
|
|
|
If Environment.Service.Client.IsOnline AndAlso Environment.Service.Address <> String.Empty Then
|
|
oOperationMode = OperationMode.WithAppServer
|
|
Else
|
|
oOperationMode = OperationMode.NoAppServer
|
|
End If
|
|
|
|
Return oOperationMode
|
|
End Function
|
|
|
|
Private Sub frmWorkflow_Adhoc_start_Load(sender As Object, e As EventArgs) Handles Me.Load
|
|
Try
|
|
' Operation mode is either guessed from service settings
|
|
' or explictly set from OperationModeOverride in Params
|
|
OperationMode = GetOperationMode()
|
|
Client = Environment.Service.Client
|
|
|
|
|
|
' Initialize Viewer with GDPicture.NET License
|
|
' Hide options relating to a filepath for zooflow
|
|
If OperationMode = OperationMode.ZooFlow Then
|
|
' RibbonPageGroupFilesystem.Visible = False
|
|
End If
|
|
|
|
If OperationMode = OperationMode.NoAppServer Then
|
|
' RibbonPageGroupCheckInOut.Visible = False
|
|
' RibbonPageGroupWorkflow.Visible = False
|
|
' RibbonPageGroupAttribute.Visible = False
|
|
Else
|
|
' RibbonPageGroupFilesystem.Visible = False
|
|
End If
|
|
Dim oDatatableUserselect As DataTable
|
|
Dim oDatatableWFSelect As DataTable
|
|
Dim oSQL = AdHocWorkflow.AHWF_CMD_USR_SELECT
|
|
Dim oResult As GetDatatableResponse = Nothing
|
|
If OperationMode = OperationMode.ZooFlow Or OperationMode = OperationMode.WithAppServer Then
|
|
oResult = Client.GetDatatableFromECM(oSQL)
|
|
If oResult.OK = False Then
|
|
Throw New ApplicationException(oResult.ErrorMessage)
|
|
Else
|
|
oDatatableUserselect = oResult.Table
|
|
End If
|
|
|
|
Else
|
|
oDatatableUserselect = Environment.Database.GetDatatable(oSQL)
|
|
End If
|
|
If Not IsNothing(oDatatableUserselect) Then
|
|
LookUpEdit1.Properties.DataSource = oDatatableUserselect
|
|
LookUpEdit1.Properties.ValueMember = oDatatableUserselect.Columns(0).ColumnName
|
|
LookUpEdit1.Properties.DisplayMember = oDatatableUserselect.Columns(1).ColumnName
|
|
|
|
End If
|
|
oSQL = AdHocWorkflow.AHWF_CMD_LAYOUT_SELECT
|
|
If OperationMode = OperationMode.ZooFlow Or OperationMode = OperationMode.WithAppServer Then
|
|
oResult = Client.GetDatatableFromECM(oSQL)
|
|
If oResult.OK = False Then
|
|
Throw New ApplicationException(oResult.ErrorMessage)
|
|
Else
|
|
oDatatableWFSelect = oResult.Table
|
|
End If
|
|
|
|
Else
|
|
oDatatableWFSelect = Environment.Database.GetDatatable(oSQL)
|
|
End If
|
|
If Not IsNothing(oDatatableWFSelect) Then
|
|
cmbWorkflowSelect.DataSource = oDatatableWFSelect
|
|
cmbWorkflowSelect.ValueMember = oDatatableWFSelect.Columns(0).ColumnName
|
|
cmbWorkflowSelect.DisplayMember = oDatatableWFSelect.Columns(1).ColumnName
|
|
End If
|
|
|
|
|
|
If OperationMode = OperationMode.NoAppServer Then
|
|
' panelContainerStatus.Visibility = Docking.DockVisibility.Hidden
|
|
End If
|
|
WFUserList = New List(Of WFUSer)
|
|
' Hide the complete Navigation Ribbon Group if desired
|
|
|
|
Catch ex As Exception
|
|
Logger.Error(ex)
|
|
MsgBox(ex.Message, MsgBoxStyle.OkOnly, "Error while loading form:")
|
|
|
|
|
|
Finally
|
|
IsLoading = False
|
|
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub SimpleButton1_Click(sender As Object, e As EventArgs) Handles SimpleButton1.Click
|
|
Dim oUser As New WFUSer() With {
|
|
.Mail = "Heute",
|
|
.UserID = "Dokumente, die heute abgelegt wurden",
|
|
.Image = SvgImageCollection1.Item("actions_user")
|
|
}
|
|
End Sub
|
|
|
|
Private Class ListItem
|
|
Public Name As String
|
|
Public email As String
|
|
End Class
|
|
Friend Class WFUSer
|
|
Public Property Mail As String
|
|
Public Property UserID As Integer
|
|
Public Property Image As SvgImage
|
|
Public Property Count As Integer = 0
|
|
|
|
Public ReadOnly Property DisplayName As String
|
|
Get
|
|
Return UserID
|
|
End Get
|
|
End Property
|
|
|
|
End Class
|
|
End Class |