Skip to main content

CRM

The CRM module in the tSM system provides a comprehensive set of components for managing and interacting with customer-related data. These components are designed to facilitate efficient navigation, data management, and workflow within the CRM environment. Below is a detailed description of the CRM components available within the system, organized according to their functionality and purpose.


Layout Components

Customer List

Customer list in a tabular view with filtering and editing options.

  • Selector: tsm-customer-list-widget
  • Type: Layout Component
  • Properties:
    • newRecordConfig (NewRecordConfig = null): Used for configuring new record creation.
    • chars (any = null): No specific usage context provided.
    • externalData (any = null): Used for passing external data to the component.
    • title (string = null): Title of the widget.
    • pageSize (string = null): Defines the number of items per page.
    • scrollHeight (string = null): Height of the scrollable area.
    • scrollable (boolean = true): Indicates if the table is scrollable.
    • filters (FilterModel[] = null): Array of filters applied to the data.
    • profileId (string = null): ID of the profile to be used.
    • profileCategory (string = null): Category of the profile.
    • id (string = "customer-list-widget_" + getUuid()): Unique identifier for the widget.
    • showExport (boolean = true): Controls the visibility of the export button.
    • showFilters (boolean = true): Controls the visibility of the filters.
    • showRefresh (boolean = true): Controls the visibility of the refresh button.
    • showPaginator (boolean = true): Controls the visibility of the paginator.
    • showManagerColumns (boolean = true): Controls the visibility of the column manager.
    • showProfiles (boolean = true): Controls the visibility of the profiles.
    • showManagerSort (boolean = true): Controls the visibility of the sort manager.
    • showManagerColor (boolean = true): Controls the visibility of the color manager.
    • showListingConfig (boolean = true): Controls the visibility of the listing configuration.
    • dataViewMode (DataViewModeEnum = DataViewModeEnum.TABLE): Defines the mode of data view.
    • listingType (string = "tsm-customer-list"): Type of the listing.
    • extendTqlWhere (string = null): Additional TQL where clause.
    • externalTqlSort (string = null): External TQL sort configuration.
    • externalTqlSortForNested ({[key: string]: any} = null): External TQL sort for nested fields.
    • exportPriv (string = null): Privilege required for export.
    • disabledOutputContext (boolean = false): Disables the output context if true.
    • hiddenDataViewMode (boolean = false): Hides the data view mode if true.
    • hideButtonGroup (boolean = false): Hides the button group if true.
{
"title": "Customer List",
"widget": {
"type": "tsm-customer-list-widget"
},
"type": "layout",
"config": {
"pageSize": "10"
}
}

Campaign Wave List

Campaign wave list in a tabular view with filtering and editing options.

  • Selector: tsm-campaign-wave-list-widget
  • Type: Layout Component
  • Properties:
    • campaign (Campaign = null): Represents the campaign data.
    • externalData (any = null): Additional external data.
    • title (string = null): Title of the widget.
    • pageSize (string = null): Number of items per page.
    • scrollHeight (string = null): Height of the scrollable area.
    • scrollable (boolean = true): Indicates if the table is scrollable.
    • filters (FilterModel[] = null): Array of filters applied to the data.
    • profileId (string = null): ID of the profile.
    • profileCategory (string = null): Category of the profile.
    • id (string = "campaign-wave-list-widget_<UUID>"): Unique identifier.
    • showExport (boolean = true): Determines if the export button is visible.
    • showFilters (boolean = true): Determines if filter options are visible.
    • showRefresh (boolean = true): Determines if the refresh button is visible.
    • showPaginator (boolean = true): Determines if the paginator is visible.
    • showManagerColumns (boolean = true): Determines if the column manager is visible.
    • showProfiles (boolean = true): Determines if profile options are visible.
    • showManagerSort (boolean = true): Determines if the sort manager is visible.
    • showManagerColor (boolean = true): Determines if the color manager is visible.
    • showListingConfig (boolean = true): Determines if listing configuration is visible.
    • dataViewMode (DataViewModeEnum = DataViewModeEnum.TABLE): Mode of data view.
    • listingType (string = "tsm-campaign-wave-list"): Type of listing.
    • extendTqlWhere (string = null): Additional TQL where clause.
    • externalTqlSort (string = null): External TQL sort configuration.
    • externalTqlSortForNested ({[key: string]: any} = null): External TQL sort for nested data.
    • exportPriv (string = null): Privilege required for export.
    • disabledOutputContext (boolean = false): Disables output context if true.
    • hiddenDataViewMode (boolean = false): Hides data view mode if true.
    • hideButtonGroup (boolean = false): Hides the button group if true.
{
"title": "Campaign Wave List",
"widget": {
"type": "tsm-campaign-wave-list-widget"
},
"type": "layout",
"config": {}
}

Lead List

Lead list in a tabular view with filtering and editing options.

  • Selector: tsm-lead-list-widget
  • Type: Layout Component
  • Properties:
    • chars (any = null): No corresponding field in the editor.
    • externalData (any = null): Used for passing external data.
    • title (string = null): Corresponds to 'config.title' in the editor.
    • pageSize (string = null): Corresponds to 'config.pageSize' in the editor.
    • scrollHeight (string = null): Corresponds to 'config.scrollHeight' in the editor.
    • scrollable (boolean = true): Corresponds to 'config.scrollable' in the editor.
    • filters (FilterModel[] = null): Corresponds to 'config.filters' in the editor.
    • profileId (string = null): Corresponds to 'config.profileId' in the editor.
    • profileCategory (string = null): Corresponds to 'config.profileCategory' in the editor.
    • id (string = "lead-list-widget_" + getUuid()): Corresponds to 'config.id' in the editor.
    • showExport (boolean = true): Corresponds to 'config.showExport' in the editor.
    • showFilters (boolean = true): Corresponds to 'config.showFilters' in the editor.
    • showRefresh (boolean = true): Corresponds to 'config.showRefresh' in the editor.
    • showPaginator (boolean = true): Corresponds to 'config.showPaginator' in the editor.
    • showManagerColumns (boolean = true): Corresponds to 'config.showManagerColumns' in the editor.
    • showProfiles (boolean = true): Corresponds to 'config.showProfiles' in the editor.
    • showManagerSort (boolean = true): Corresponds to 'config.showManagerSort' in the editor.
    • showManagerColor (boolean = true): Corresponds to 'config.showManagerColor' in the editor.
    • dataViewMode (DataViewModeEnum = DataViewModeEnum.TABLE): Corresponds to 'config.dataViewMode' in the editor.
    • extendTqlWhere (string = null): Corresponds to 'config.extendTqlWhere' in the editor.
    • externalTqlSort (string = null): Corresponds to 'config.externalTqlSort' in the editor.
    • exportPriv (string = "null"): Corresponds to 'config.exportPriv' in the editor.
    • disabledOutputContext (boolean = false): Not present in the editor.
    • hiddenDataViewMode (boolean = false): Corresponds to 'config.hiddenDataViewMode' in the editor.
    • hideButtonGroup (boolean = false): Corresponds to 'config.hideButtonGroup' in the editor.
{
"title": "Lead List",
"widget": {
"type": "tsm-lead-list-widget"
},
"type": "layout"
}

Persons Bookmark

Simple list of persons in a tabular view.

  • Selector: tsm-persons-bookmark
  • Type: Layout Component
  • Properties:
    • readonly (boolean = false): Determines if the component is in read-only mode.
    • previewMode (boolean = false): Indicates if the component is in preview mode.
    • displayOnlyPreviewModeCount (boolean = false): If true, only the count is displayed.
    • layoutingType ('runtime' | 'design'): Specifies the layout type.
    • showUsage (boolean = true): Controls the visibility of usage.
    • filter (any = null): Used to filter the list.
{
"title": "Select a person",
"widget": {
"type": "tsm-persons-bookmark"
},
"type": "layout"
}

Customer History

History of actions and changes made to the customer in a clear view.

{
"widget": {
"type": "tsm-customer-history"
},
"type": "layout"
}

Lead History

History of actions and changes made to the lead in a clear view.

{
"widget": {
"type": "tsm-lead-history"
},
"type": "layout"
}

Lead Status Bar

Overview of the current status of the lead with quick switching options.

  • Selector: tsm-lead-steps
  • Type: Layout Component
  • Properties:
    • lead (Lead): Used to set the lead and determine the status index.
{
"title": "Select Lead type",
"widget": {
"type": "tsm-lead-steps"
},
"type": "layout"
}

Person History

History of actions and changes made to the person in a clear view.

{
"widget": {
"type": "tsm-person-history"
},
"type": "layout"
}

Person Status Bar

Overview of the current status of the person with quick switching options.

  • Selector: tsm-person-steps
  • Type: Layout Component
  • Properties:
    • person (Person): Used to set the person and determine the status index.
{
"widget": {
"type": "tsm-person-steps"
},
"type": "layout"
}

Customer Status Bar

Overview of the current status of the customer with quick switching options.

  • Selector: tsm-customer-steps
  • Type: Layout Component
  • Properties:
    • customer (Customer): Triggers status index calculation based on customer status.
{
"title": "Select User type",
"widget": {
"type": "tsm-customer-steps"
},
"type": "layout"
}

Data Components

Campaign Type Select

Selection of a campaign type from a dropdown list.

  • Selector: tsm-campaign-type-lov
  • Type: Select Component
  • Properties:
    • autofocusOptions (boolean = false)
    • selectItemFilters (FilterModel[] = [])
    • campaignTypeCodes (string[])
{
"title": "Select Campaign Type",
"widget": {
"type": "tsm-campaign-type-lov"
},
"type": "string"
}

Campaign Select

Selection of a campaign from a dropdown list.

  • Selector: tsm-campaign-lov
  • Type: Select Component
  • Properties:
    • autofocusOptions (boolean = false): Specifies if autofocus options are enabled.
    • chars (object | object[]): Character filters for the component.
    • selectItemFilters (FilterModel[] = []): Filters applied to selectable items.
{
"title": "Select a campaign",
"widget": {
"type": "tsm-campaign-lov"
},
"type": "string"
}

Customer Select

Selection of a customer from a dropdown list.

  • Privileges: !Crm.Widget.tsm-customer-lov
  • Selector: tsm-customer-lov
  • Type: Select Component
  • Properties:
    • autofocusOptions (boolean = false): Controls autofocus behavior.
    • addressLocation (boolean = false): Displays address location if true.
    • emailDefault (boolean = false): Displays default email if true.
    • phoneDefault (boolean = false): Displays default phone if true.
    • segmentDefault (boolean = false): Displays customer segment if true.
    • addCustomerButton (boolean = false): Shows button to add a new customer.
    • externalData (any): External data for the component.
    • customerTypeIds (string[]): Filter by customer type IDs.
    • customerTypeCodes (string[]): Filter by customer type codes.
    • chars (object): Characteristics filters.
{
"title": "Select a customer",
"widget": {
"type": "tsm-customer-lov"
},
"type": "string"
}

Lead Select

Selection of a lead from a dropdown list.

  • Privileges: !Crm.Widget.tsm-lead-lov
  • Selector: tsm-lead-lov
  • Type: Select Component
  • Properties:
    • autofocusOptions (boolean = false): Determines if autofocus options are enabled.
    • chars (array or object): Used for characteristics filters.
{
"title": "Select a lead",
"widget": {
"type": "tsm-lead-lov"
},
"type": "string"
}

Address Select

Selection of an address from a dropdown list.

  • Selector: tsm-crm-address-lov
  • Type: Select Component
  • Properties:
    • autofocusOptions (boolean)
    • readonly (boolean = false)
    • customerId (string): Linked to customerId in the editor.
    • status (CrmAddressStatus): Default 'ACTIVE' is set in the editor.
    • crmAddressRoleTypeCodes (string[]): Linked to crmAddressRoleTypeCodes in the editor.
    • crmAddressRoleStatus (string): Not present in the editor.
{
"title": "Select an address",
"widget": {
"type": "tsm-crm-address-lov"
},
"type": "string"
}

Selection of a legal form from a dropdown list.

  • Selector: tsm-customer-legal-form-lov
  • Type: Select Component
  • Properties:
    • autofocusOptions (boolean = false): Determines if autofocus is enabled.
    • dialogLabel (string): Label for the dialog.
{
"title": "Select a legal form",
"widget": {
"type": "tsm-customer-legal-form-lov"
},
"type": "string"
}

Customer Segment Select

Selection of a customer segment from a dropdown list.

  • Selector: tsm-customer-segment-lov
  • Type: Select Component
  • Properties:
    • filterable (boolean = true): Controls whether the dropdown is filterable.
    • legalFormCode (string): Used to filter customer segments based on legal form.
    • showCareLevel (boolean = true): Determines if the care level is displayed.
    • required (boolean = false): Indicates if the dropdown is required.
    • config.selectProperty: Set to "id".
{
"title": "Select a customer segment",
"widget": {
"type": "tsm-customer-segment-lov"
},
"type": "string",
"config": {
"selectProperty": "id"
}
}

Customer Type Select

Selection of a customer type from a dropdown list.

  • Privileges: !Crm.Widget.tsm-customer-type-lov
  • Selector: tsm-customer-type-lov
  • Type: Select Component
  • Properties:
    • autofocusOptions (boolean = false): Determines if autofocus is enabled.
    • customerTypeCodes (string[]): Array of customer type codes for filtering.
{
"title": "Select a customer type",
"widget": {
"type": "tsm-customer-type-lov"
},
"type": "string"
}

Person Type Select

Selection of a person type from a dropdown list.

  • Selector: tsm-person-type-lov
  • Type: Select Component
  • Properties:
    • autofocusOptions (boolean = false): Specifies if autofocus options are enabled.
    • personTypeCodes (string[]): List of person type codes for filtering.
{
"title": "Select a person type",
"widget": {
"type": "tsm-person-type-lov"
},
"type": "string",
"config": {}
}

Account Type Select

Selection of an account type from a dropdown list.

  • Selector: tsm-account-type-lov
  • Type: Select Component
  • Properties:
    • autofocusOptions (boolean = false): Specifies if autofocus options are enabled.
    • accountTypeCodes (string[]): Array of account type codes for filtering.
{
"title": "Select an account type",
"widget": {
"type": "tsm-account-type-lov"
},
"type": "string"
}

Lead Type Select

Selection of a lead type from a dropdown list.

  • Selector: tsm-lead-type-lov
  • Type: Select Component
  • Properties:
    • autofocusOptions (boolean = false): Specifies if autofocus options are enabled.
{
"title": "Select a lead type",
"widget": {
"type": "tsm-lead-type-lov"
},
"type": "string"
}

Campaign Wave Definition

Overview of the current campaign wave definition with quick switching options.

  • Selector: tsm-campaign-wave-definition-lov
  • Type: Select Component
  • Properties:
    • autofocusOptions (boolean = false): Determines if autofocus options are enabled.
    • chars (object | object[]): Used for character filtering.
    • selectItemFilters (FilterModel[] = []): Filters applied to selectable items.
{
"title": "Select a campaign wave definition",
"widget": {
"type": "tsm-campaign-wave-definition-lov"
},
"type": "string"
}

Campaign Status Bar

Overview of the current status of the campaign with quick switching options.

  • Selector: tsm-campaign-status-steps
  • Type: Layout Component
  • Properties:
    • campaign (Campaign = null): Used to set the campaign and trigger status update logic.
{
"title": "Campaign Status Bar",
"widget": {
"type": "tsm-campaign-status-steps"
},
"type": "layout"
}

Account Status Bar

Selection of an account status from a dropdown list.

  • Selector: tsm-account-steps
  • Type: Layout Component
  • Properties:
    • account (Account): Used to set account details and determine the status index.
{
"title": "Select an account status",
"widget": {
"type": "tsm-account-steps"
},
"type": "layout"
}

Tertiary

Create from ARES Button

Button to create a customer from the ares register.

  • Selector: tsm-ares-new-customer-container
  • Type: Layout Component
  • Properties:
    • placeholder (string = "undefined"): Used to set placeholder text for input fields.
    • localizationData (LocalizationVersionData = "undefined"): Used for localization purposes.
{
"widget": {
"type": "tsm-ares-new-customer-container"
},
"type": "layout"
}

Experimental

The following components do not specify a group:

Product Cards

Product cards.

  • Selector: demo-entity-instance-configuration-widget
  • Type: Layout Component
  • Properties:
    • style (string = "tile"): Determines the style of the component.
    • select (1 | 0 = 1): Indicates selection state.
    • entityInstanceConfigurationIds (string[] = null): Array of entity instance configuration IDs.
    • chars (any = null): Character data.
    • charsPath (string = ""): Path to characters.
    • ticketId (string = null): ID of the ticket.
    • relatedEntityRefType (string = "EntityInstanceConfiguration"): Reference type for related entity.
    • customerId (string = null): ID of the customer.
    • accountId (string = null): ID of the account.
{
"widget": {
"type": "demo-entity-instance-configuration-widget"
},
"type": "layout"
}

Planned Task Char

Planned task char.

  • Selector: demo-planned-task-char
  • Type: Widget Component
  • Properties:
    • placeholder (string = "undefined"): Optional placeholder text.
    • localizationData (LocalizationVersionData = "undefined"): Used for localization purposes.
{
"title": "Detail tasku planovace",
"widget": {
"notitle": true,
"type": "demo-planned-task-char"
},
"type": "object"
}

Address Role Type Select

Selection of an address role type from a dropdown list.

  • Selector: tsm-crm-address-role-type-lov
  • Type: Select Component
  • Properties:
    • chars (object or object[]): Used for filtering purposes.
    • readonly (boolean = false): Determines if the component is in read-only mode.
{
"title": "Select an address role type",
"widget": {
"type": "tsm-crm-address-role-type-lov"
},
"type": "string"
}