Kernel::WebApp::Util::BusinessObject::LinkObject::Base

NAME

Kernel::WebApp::Util::BusinessObject::LinkObject::Base

DESCRIPTION

Handles the business object link object stuff.

PUBLIC INTERFACE

LinkObjectBusinessObjectTypeObject

Attribute that builds and holds the current link object business object type object.

LinkedObjects

Attribute that builds and holds the linked objects (for the current object id + current object type).

has LinkedObjectObjectIDs

Attribute that builds and holds the object ids of the linked objects.

has LinkedObjectsLinkIDs

Attribute that builds and holds the link ids of the linked objects.

has CurrentObjectID

Attribute that holds the current object id (e.g. ticket id or knowledge base article id).

has CurrentObjectType

Attribute that holds the current object type (e.g. ticket or knowledge base article).

InternalCurrentObjectType()

Provides the internal current object type (e.g. for knowledge base article it is "FAQ").

LinkObjectType()

Holds the link object type for further functionality (e.g. Ticket).

LinkObjectLabel()

Holds the link object type label.

InternalLinkObjectType()

Provides the internal link object type for further functionality (e.g. for knowledge base article it is "FAQ").

LinkObjectTypeSearch()

Search for linked objects items (e.g. tickets).

Returns the link IDs of the linked objects for the given search parameters.

IdentifierKey()

Holds the identifier key for the link object list entries.

Label()

Holds the label of the business object.

DefaultSorting()

Holds the default sorting for the link object lists.

ColumnTitles()

Holds the column title for the link object list columns.

SortableColumns()

Holds the sort-able columns for the table.

TextTruncatableColumns()

Holds the columns which should be truncated in the frontend.

TranslatableColumns()

Holds the columns which should be translated in the frontend.

ClickableColumns()

Holds the columns which should be clickable in the frontend.

DynamicFieldObjectTypes()

Holds the dynamic field object types for the linked business object type.

CleanupVisibleColumns()

Filter out columns based on configuration options. e.g. Watch column should only be shown when the watch feature is enabled.

TransformActiveFilterValue()

Transform the active filter value with the given value type to a usable search backend value.

ItemSearch()

Search for linked objects items (e.g. tickets).

Returns the link IDs of the linked objects for the given search parameters.

ItemDetailDataGet()

Collects the detail data for the item with the given ItemID.

CurrentObjectIDPermissionCheck()

Checks the permission for the current object id (e.g. ticket).

PossibleLinkObjectTypes()

Get the possible object type list, this is normally only the current link object type, but it's possible that a link object type has sub link objects.

FormSchemaPermanentConfigurationGet()

Added some more fields to the original 'FormSchemaPermanentConfigurationGet' form schema of the base class.

GetFilteredLinkedObjects()

Get the linked objects filtered by LinkObjectFixedFilterKey parameter.

This is supported e.g. by config item business object.

_ProvideFilters()

Holds the available filter information (e.g. which form field type).

_BuildLinkObjectBusinessObjectTypeObject()

Creates the business object type object for the current linked object type. This is needed to avoid duplicating all the code within the existing business object type objects, e.g. ticket business object type.

    my $Object = $Self->_BuildLinkObjectBusinessObjectTypeObject();

Returns the link object business object type object, e.g. ticket business object type object.

_BuildLinkedObjects()

Fetches and returns all the linked objects for the current object type + the current object id.

Scroll to Top