108 lines
4.8 KiB
VB.net
108 lines
4.8 KiB
VB.net
#Region "Note"
|
|
'
|
|
'{**************************************************************************************************************}
|
|
'{ This file is automatically created when you open the Scheduler Control smart tag }
|
|
'{ *and click Create Customizable Appointment Dialog. }
|
|
'{ It contains a a descendant of the default appointment editing form created by visual inheritance. }
|
|
'{ In Visual Studio Designer add an editor that is required to edit your appointment custom field. }
|
|
'{ Modify the LoadFormData method to get data from a custom field and fill your editor with data. }
|
|
'{ Modify the SaveFormData method to retrieve data from the editor and set the appointment custom field value. }
|
|
'{ The code that displays this form is automatically inserted }
|
|
'{ *in the EditAppointmentFormShowing event handler of the SchedulerControl. }
|
|
'{ }
|
|
'{**************************************************************************************************************}
|
|
'
|
|
#End Region ' Note
|
|
|
|
Imports System
|
|
Imports System.Collections.Generic
|
|
Imports System.ComponentModel
|
|
Imports System.Data
|
|
Imports System.Drawing
|
|
Imports System.Text
|
|
Imports System.Windows.Forms
|
|
Imports DevExpress.XtraScheduler
|
|
|
|
Partial Public Class frmCustomAppointment
|
|
Inherits DevExpress.XtraScheduler.UI.AppointmentForm
|
|
|
|
Private _recordid As Integer
|
|
Private _controlid As Integer
|
|
|
|
Public Sub New()
|
|
InitializeComponent()
|
|
End Sub
|
|
Public Sub New(ByVal control As DevExpress.XtraScheduler.SchedulerControl, ByVal apt As DevExpress.XtraScheduler.Appointment)
|
|
MyBase.New(control, apt)
|
|
InitializeComponent()
|
|
End Sub
|
|
Public Sub New(ByVal control As DevExpress.XtraScheduler.SchedulerControl, ByVal apt As DevExpress.XtraScheduler.Appointment, ByVal openRecurrenceForm As Boolean)
|
|
MyBase.New(control, apt, openRecurrenceForm)
|
|
InitializeComponent()
|
|
End Sub
|
|
''' <summary>
|
|
''' Add your code to obtain a custom field value and fill the editor with data.
|
|
''' </summary>
|
|
Public Overrides Sub LoadFormData(ByVal appointment As DevExpress.XtraScheduler.Appointment)
|
|
If appointment.CustomFields("RecordID") Is Nothing Then
|
|
txtRecordID.Text = ""
|
|
btnJumpToRecord.Enabled = False
|
|
Else
|
|
_recordid = appointment.CustomFields("RecordID").ToString()
|
|
txtRecordID.Text = _recordid
|
|
btnJumpToRecord.Enabled = True
|
|
End If
|
|
|
|
If appointment.CustomFields("ControlID") Is Nothing Then
|
|
txtControlID.Text = ""
|
|
Else
|
|
_controlid = appointment.CustomFields("ControlID").ToString()
|
|
txtControlID.Text = _controlid
|
|
End If
|
|
|
|
MyBase.LoadFormData(appointment)
|
|
End Sub
|
|
''' <summary>
|
|
''' Add your code to retrieve a value from the editor and set the custom appointment field.
|
|
''' </summary>
|
|
Public Overrides Function SaveFormData(ByVal appointment As DevExpress.XtraScheduler.Appointment) As Boolean
|
|
If txtRecordID.Text.Length = 0 Then
|
|
appointment.CustomFields("RecordID") = 0
|
|
Else
|
|
appointment.CustomFields("RecordID") = Integer.Parse(txtRecordID.Text)
|
|
End If
|
|
|
|
If txtControlID.Text.Length = 0 Then
|
|
appointment.CustomFields("ControlID") = 0
|
|
Else
|
|
appointment.CustomFields("ControlID") = Integer.Parse(txtControlID.Text)
|
|
End If
|
|
|
|
Return MyBase.SaveFormData(appointment)
|
|
End Function
|
|
''' <summary>
|
|
''' Add your code to notify that any custom field is changed. Return true if a custom field is changed, otherwise false.
|
|
''' </summary>
|
|
Public Overrides Function IsAppointmentChanged(ByVal appointment As DevExpress.XtraScheduler.Appointment) As Boolean
|
|
Return True
|
|
End Function
|
|
|
|
Private Sub frmCustomAppointment_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
|
|
|
End Sub
|
|
|
|
Private Sub btnJumpToRecord_Click(sender As Object, e As EventArgs) Handles btnJumpToRecord.Click
|
|
If txtRecordID.Text.Length > 0 Then
|
|
Dim RecordId = Integer.Parse(txtRecordID.Text)
|
|
JUMP_ID = RecordId
|
|
|
|
Dim constructDT As DataTable = MYDB_ECM.GetDatatable("SELECT T.CONSTRUCT_ID,T.NODE_NAVIGATION, T.FORM_ID FROM VWPMO_CONSTRUCTOR_FORMS T, TBPMO_RECORD T1 WHERE T.FORM_ID = T1.FORM_ID AND T1.GUID = " & JUMP_ID)
|
|
|
|
' TODO: FormId und ConstructId herausfinden
|
|
|
|
OpenFormConstructor(constructDT.Rows(0).Item(0), constructDT.Rows(0).Item(1), constructDT.Rows(0).Item(2))
|
|
Me.Close()
|
|
End If
|
|
End Sub
|
|
End Class
|