Файл обработчика команд
Наименование и расположение файла обработчика команд надстройки задается с помощью ключа commandsProvider в файле Package.lua (см. таблицу 2).
С помощью функции getCommands() разработчик определяет команды для управления надстройкой, доступные пользователю через меню Управление надстройками.
Пример
local Actions = {}
function Actions.getCommands()
return {
{
-- Идентификатор команды меню
id = "EntryForm.addRecord",
-- Имя команды в меню:
-- "Надстройки" / "Учетная карточка сотрудника" / "Новая запись"
menuItem = "Новая запись",
-- Имя функции-обработчика
command = Actions.addRecord
}
}
end
Описание полей таблицы регистрации команд приведено в таблице.
| Параметр | Тип | Значение |
|---|---|---|
id | Строка | Идентификатор команды меню |
menuItem | Строка | Имя команды надстройки. Наименования команд надстройки отображаются в меню Управление надстройками вкладки Макрокоманды приложений ПО МойОфис (см. рисунок Меню надстройки). При выборе команды надстройки происходит вызов обработчика, указанного в поле command |
command | Строка | Имя функции обработчика события |
Описание функции обработчика события имеет следующий вид:
local Actions = {}
function Actions.getCommands()
return {
{
id = "EntryForm.addRecord",
menuItem = "Новая запись",
command = Actions.addRecord
}
}
end
function Actions.addRecord(context)
context.doWithDocument(function(document)
-- TODO New employee
end)
end
return Actions
Передаваемый параметр context функции обработчика команды позволяет задать уровень, на котором обработчик будет взаимодействовать с приложением редактора (см. раздел Уровни взаимодействия контекста с приложением редактора).