NAME
Kernel::System::DynamicFieldLegacy::Value
DESCRIPTION
DynamicField values backend
PUBLIC INTERFACE
new()
create a DynamicFieldValue object. Do not use it directly, instead use:
my $DynamicFieldValueObject = $Kernel::OM->Get('Kernel::System::DynamicFieldLegacy::Value');
ValueSet()
sets a dynamic field value. This is represented by one or more rows in the dynamic_field_value table, each storing one text, date and int field. Please see how they will be returned by "ValueGet()".
my $Success = $DynamicFieldValueObject->ValueSet(
FieldID => $FieldID, # ID of the dynamic field
ObjectID => $ObjectID, # ID of the current object that the field
# must be linked to, e. g. TicketID
Value => [
{
ValueText => 'some text', # optional, one of these fields must be provided
ValueDateTime => '1977-12-12 12:00:00', # optional
ValueInt => 123, # optional
ValueDouble => 123.123, # optional
},
...
],
UserID => $UserID,
);
ValueGet()
get a dynamic field value. For each table row there will be one entry in the result list.
my $Value = $DynamicFieldValueObject->ValueGet(
FieldID => $FieldID, # ID of the dynamic field
ObjectID => $ObjectID, # ID of the current object that the field
# is linked to, e. g. TicketID
);
Returns [
{
ID => 437,
ValueText => 'some text',
ValueDateTime => '1977-12-12 12:00:00',
ValueInt => 123,
ValueDouble => 123.123,
},
];
ValueDelete()
delete a Dynamic field value entry. All associated rows will be deleted.
my $Success = $DynamicFieldValueObject->ValueDelete(
FieldID => $FieldID, # ID of the dynamic field
ObjectID => $ObjectID, # ID of the current object that the field
# is linked to, e. g. TicketID
UserID => 123,
);
Returns 1.
AllValuesDelete()
delete all entries of a dynamic field .
my $Success = $DynamicFieldValueObject->AllValuesDelete(
FieldID => $FieldID, # ID of the dynamic field
UserID => 123,
);
Returns 1.
ObjectValuesDelete()
Delete all entries of a dynamic field values for object ID.
my $Success = $DynamicFieldValueObject->ObjectValuesDelete(
ObjectType => 'Ticket', # Dynamic Field object type ( e. g. Ticket, Article, FAQ)
ObjectID => $ObjectID, # ID of the current object that the field
# is linked to, e. g. TicketID
UserID => 123,
);
Returns 1.
ValueValidate()
checks if the given value is valid for the value type.
my $Success = $DynamicFieldValueObject->ValueValidate(
Value => {
ValueText => 'some text', # optional, one of these fields must be provided
ValueDateTime => '1977-12-12 12:00:00', # optional
ValueInt => 123, # optional
ValueDouble => 123.123, # optional
},
UserID => $UserID,
);
HistoricalValueGet()
get all distinct values from a field stored on the database
my $HistoricalValues = $DynamicFieldValueObject->HistoricalValueGet(
FieldID => $FieldID, # ID of the dynamic field
ValueType => 'Text', # Text | DateTime | Integer | Double. Default: Text
);
Returns:
$HistoricalValues{
ValueA => 'ValueA',
ValueB => 'ValueB',
ValueC => 'ValueC'
};
ValueSearch()
Searches/fetches dynamic field value.
my $Value = $DynamicFieldValueObject->ValueSearch(
FieldID => 142, # ID of dynamic field to search
Search => 'test',
SearchSQL => "dynamic_field_value.value_text = 'test'",
);
Returns [
{
ID => 437,
FieldID => 123,
ObjectID => 133,
ValueText => 'some text',
ValueDateTime => '1977-12-12 12:00:00',
ValueInt => 123,
ValueDouble => 123.123,
},
# ...
];