SPA settings
Scope: catalog Permissions to execute: for all
Startup settings
Custom field settings
Operational SPA cannot properly function without configurable set of custom fields.
Fields are managed in a separate scope userfieldconfig.
Access permissions
SPA settings can be updated by users having administrative access permissions to CRM
section.
Identifiers
When handling methods of this category you can pass SPA settings identifier (primary key) as the ID instead of entityTypeId.
Associated data
Listed methods allow managing both fields for SPA settings and the associated data: binding settings, custom field bindings, as well as SPA display settings outside of CRM.
Binding settings
Binding configuration are passed using the key relations
as follows:
{ "parent": [], "child": [] }
parent
- binding settings for this SPA;child
- settings for this SPA binding to other sections.
where each array element has the following structure with binding description:
{ "entityTypeId": number, "isChildrenListEnabled": boolean, "isPredefined": boolean }
- Here
entityTypeId
- associated section ID;isChildrenListEnabled
- enabled display for separate tab with the list of bound elements in the parent details;isPredefined
- when true, the binding is "preset". You cannot change settings for such bindings!
Displayed in the same format upon binding settings update.
You must pass a complete set of settings when updating SPA binding settings, or skip the relations
key altogether. Settings are overwritten completely.
Bindings to custom fields
You can pass a set of fields to display this SPA when isUseInUserfieldEnabled
is set as true
.
'CALENDAR_EVENT|UF_CRM_CAL_EVENT'
- calendar event.'TASKS_TASK|UF_CRM_TASK'
- tasks.'TASKS_TASK_TEMPLATE|UF_CRM_TASK'
- task template.
When the field isUseInUserfieldEnabled
passed as false
, all configured bindings will be disabled.
You must pass a complete set of settings when updating SPA binding settings, or skip the linkedUserFields
key altogether. Settings are overwritten completely.
Display outside of CRM context
You can pass array with description of additional sections using the key customSections
. Each element of array has the following structure:
{ "id": number, "title": string, "isSelected": boolean }
The isSelected
key can be ignored, it's used to show a dialog window in settings. The parameter customSectionId
is responsible for actual binding of SPA to a section.
Examples of queries are listed in the description of method crm.type.update
.
You must pass a complete list of additional sections, or skip the customSections
key altogether. Settings are overwritten.