С помощью сценария можно получить настройки регистрации текущего приложения:
Код:
const settings = await Application.getSettings();
let on_registry = settings.registrationSettings.enabled; // проверка, разрешена ли регистрация данного типа приложения. Даже если флаг установлен, требуется проверять, есть ли при этом дела в номенклатуре, в которые можно регистрировать данное приложение
const noms = await settings.registrationSettings.getNomenclatures();
for (let i = 0; i < noms.length; i++)
{
let isAuto = noms[i].settings.templateEnabled; // флаг автоматической генерации регистрационных номеров. Если false, значит ожидается ввод номера вручную
let name = noms[i].__name; // название дела
let dirName = noms[i].__dirname//название с полным путем до дела
let regId= noms[i].__id;// идентификатор дела. Может быть использован для регистрации в сценарии
}
Также можно получить список дел, в котором элемент приложения уже зарегистрирован. В примере ниже в переменной appItem хранится элемент приложения, а regInfo — строка для вывода результатов.
Код:
const regs = await appItem.getRegistrations()
regs.forEach(reg =>
{
for (let i = 0; i < noms.length; i++)
{
if(noms[i].__id === reg.nomenclatureId)
{
regInfo = regInfo + ", " + noms[i].__dirname; // название дела с полным путем
}
}
regInfo = regInfo + ", " + reg.__name; // название или номер под которым зарегистрирован данный документ
}
)
Регистрация
Код:
const isRegistrationWithManualNumberCompleted = await appItem.manualRegister("ТСТ-01",regId); // регистрация с ручным вводом номера. Возвращает успешность регистрации true/false
const isRegistrationWithAutoNumberCompleted = await appItem.register(regId); // регистрация с ручным вводом номера. Возвращает успешность регистрации true/false