Transition#
NAME#
Kernel::System::ProcessManagement::Transition - Transition lib
DESCRIPTION#
All Process Management Transition functions.
PUBLIC INTERFACE#
new()#
Don’t use the constructor directly, use the ObjectManager instead:
my $TransitionObject = $Kernel::OM->Get('Kernel::System::ProcessManagement::Transition');
TransitionGet()#
Get Transition info
my $Transition = $TransitionObject->TransitionGet(
TransitionEntityID => 'T1',
);
Returns:
$Transition = {
Name => 'Transition 1',
CreateTime => '08-02-2012 13:37:00',
ChangeBy => '2',
ChangeTime => '09-02-2012 13:37:00',
CreateBy => '3',
Condition => {
Type => 'and',
Cond1 => {
Type => 'and',
Fields => {
DynamicField_Make => [ '2' ],
DynamicField_VWModel => {
Type => 'String',
Match => 'Golf',
},
DynamicField_A => {
Type => 'Hash',
Match => {
Value => 1,
},
},
DynamicField_B => {
Type => 'Regexp',
Match => qr{ [\n\r\f] }xms
},
DynamicField_C => {
Type => 'Module',
Match =>
'Kernel::System::ProcessManagement::TransitionValidation::MyModule',
},
Queue => {
Type => 'Array',
Match => [ 'Raw' ],
},
# ...
}
}
# ...
},
};
TransitionCheck()#
Checks if one or more Transition Conditions are true.
my $TransitionCheck = $TransitionObject->TransitionCheck(
TransitionEntityID => 'T1',
or
TransitionEntityID => ['T1', 'T2', 'T3'],
Data => {
Queue => 'Raw',
DynamicField1 => 'Value',
Subject => 'Testsubject',
# ...
},
);
- Returns:
If called on a single TransitionEntityID
$Checked = 1; # 0
- Returns:
If called on an array of TransitionEntityIDs
$Checked = 'T1' # 0 if no Transition was true
TransitionValidationTypeList()#
Returns a list of possible transition validations.
my %TransitionValidationTypeList = $TransitionObject->TransitionValidationTypeList();
Returns:
my %TransitionValidationTypeList = TransitionValidationTypeList(
'String' => 'String',
'Regexp' => 'Regular expression',
'Module' => 'Transition validation module',
);
TransitionValidationTypeListGet()#
Returns a list of possible transition validations.
my %TransitionValidationTypeListGet = $TransitionObject->TransitionValidationTypeListGet();
Returns:
my %TransitionValidationTypeListGet = (
'String' => {
Name => 'String',
Label => 'String',
Module => 'Kernel::System::ProcessManagement::TransitionValidation::String',
},
'Regexp' => {
Name => 'Regexp',
Label => 'Regular expression',
Module => 'Kernel::System::ProcessManagement::TransitionValidation::Regexp',
},
'Module' => {
Name => 'Module',
Label => 'Transition validation module',
Module => 'Kernel::System::ProcessManagement::TransitionValidation::Module',
},
);