Получение сервиса клиентского уровня

Сервисы представляют основной API взаимодействия с системой в части функциональности, не связанной с конкретными элементами управления. Они позволяют получить информацию о текущем контексте выполнения, выполнять запросы к серверу, показывать модальные окна, взаимодействовать с разметкой и использовать множество других функций системы.

Доступ к сервисам предоставляет функция getService разметки (тип Layout). Функция getService принимает тип сервиса, который нужно предоставить. Список сервисов клиентского уровня приведён в справочнике по JS API в разделе Services.

В Web-клиент версии 17 и выше функция getService есть у всех ЭУ. Рекомендуется получать сервис в ближайшем элементе управления.

Следующий код демонстрирует пример получения списка всех операций редактирования, зарегистрированных для карточки, с помощью сервиса $EditOperationStore.

export function onMyButtonClick(sender: CustomButton, e: IEventArgs) { (1)
    let editOperationStore = sender.getService($EditOperationStore); (2)

    let editOperations = editOperationStore.getAll(); (3)
}
1 Метод onMyButtonClick обрабатывает событие нажатия кнопки.
2 Получаем разметку layout из элемента, вызвавшего событие. С помощью метода getService получаем сервис $EditOperationStore.
3 Вызываем метод getAll сервиса для получения списка всех операций редактирования.