NAME
Kernel::System::ProcessManagement::Modules::AppointmentDataPull – A module to fetch data from a linked appointment.
DESCRIPTION
All AppointmentDataPull functions.
PUBLIC INTERFACE
new()
Don't use the constructor directly, use the ObjectManager instead:
my $AppointmentDataPullObject = $Kernel::OM->Get('Kernel::System::ProcessManagement::Modules::AppointmentDataPull');
Run()
Run Data
my $Success = $AppointmentDataPullObject->Run(
UserID => 123,
Ticket => \%Ticket, # required
ProcessEntityID => 'P123',
ActivityEntityID => 'A123',
SequenceFlowEntityID => 'T123',
SequenceFlowActionEntityID => 'TA123',
Config => {
ConfigSearchKeyValueList {
# Appointment title (optional)
Title => '%SomeText1%,%SomeText2%',
# Appointment location (optional)
Location => '%SomeText1%,%SomeText2%',
# Appointment description (optional)
Description => '%SomeText1%,%SomeText2%'
# Appointment calendars
CalendarIDs => '1,2,3',
Calendars => 'CalendarA,CalendarB',
# Appointment teams
TeamIDs => '1,2,3',
Teams => 'TeamA,TeamB',
# Appointment resources
ResourceIDs => '1,2,3',
# DynamicFields (optional) as single or comma separated values.
DynamicField_FieldNameA => 'Empty=1',
DynamicField_FieldNameB => 'Equals=123,456',
DynamicField_FieldNameC => 'Like=value*',
DynamicField_FieldNameD => 'GreaterThan=2001-01-01 01:01:01',
DynamicField_FieldNameE => 'GreaterThanEquals=2001-01-01 01:01:01',
DynamicField_FieldNameF => 'SmallerThan=2002-02-02 02:02:02',
DynamicField_FieldNameG => 'SmallerThanEquals=2002-02-02 02:02:02',
# AllDay appointments
AllDay => 1,
# Appointments created more than 60 minutes ago (appointment older than 60 minutes) (optional)
AppointmentCreateTimeOlderMinutes => 60,
# Appointments created less than 120 minutes ago (appointment newer than 120 minutes) (optional)
AppointmentCreateTimeNewerMinutes => 120,
# Appointments with create time after ... (appointment newer than this date) (optional)
AppointmentCreateTimeNewerDate => '2006-01-09 00:00:01',
# Appointments with created time before ... (appointment older than this date) (optional)
AppointmentCreateTimeOlderDate => '2006-01-19 23:59:59',
# Appointments started more than 60 minutes ago (appointment start time older than 60 minutes) (optional)
AppointmentStartTimeOlderMinutes => 60,
# Appointments started less than 120 minutes ago (appointment start time newer than 120 minutes) (optional)
AppointmentStartTimeNewerMinutes => 120,
# Appointments with start time after ... (appointment start time newer than this date) (optional)
AppointmentStartTimeNewerDate => '2006-01-09 00:00:01',
# Appointments with start time before ... (appointment start time older than this date) (optional)
AppointmentStartTimeOlderDate => '2006-01-19 23:59:59',
# Appointments ended more than 60 minutes ago (appointment end time older than 60 minutes) (optional)
AppointmentEndTimeOlderMinutes => 60,
# Appointments ended less than 120 minutes ago (appointment end time newer than 120 minutes) (optional)
AppointmentEndTimeNewerMinutes => 120,
# Appointments with end time after ... (appointment end time newer than this date) (optional)
AppointmentEndTimeNewerDate => '2006-01-09 00:00:01',
# Appointments with end time before ... (appointment end time older than this date) (optional)
AppointmentEndTimeOlderDate => '2006-01-19 23:59:59',
# Appointments which are inside the given period. Both values must be given for this filter. (optional)
AppointmentPeriodTimeNewerDate => '2006-01-09 00:00:01',
AppointmentPeriodTimeOlderDate => '2006-01-19 23:59:59',
}
ConfigDropdown => {
Behavior => 'NoCopy', # 'NoCopy', 'CopyFirstLinked' or 'CopyLastLinked' only
},
UserID => 123, # optional,to override the UserID from the logged user
# Value set:
# * Key is the attribute of the process ticket where the data will be set
# * Value is the value to be set, supporting smart tags <OTRS_APPOINTMENT_*> from the resulting linked
# appointment after match and behavior filters
#
# Example:
# * To set process ticket title to be exactly the linked appointment title:
# Title => '<OTRS_APPOINTMENT_Title>',
# * To set the process ticket dynamic field NameX to an static value (not real pull):
# DynamicField_NameX => 'someValue',
}
);
- `Ticket` contains the result of TicketGet including DynamicFields.