В некоторых случаях бывает удобно разрешить мгновенное пополнение справочников, то есть обеспечить возможность пользователю ввести с клавиуатуры новое значение, которое будет добавлено в справочник.
Для этого в классе справочника можно включить режим lookupAddEnabled. Если необходимо дополнительное подтверждение пользователя (Да-Нет), можно указать lookupAddConfirmationText, а если требуется кроме введенного наименования сохранить в справочнике какие-либо произвольные значения - задать выражение lookupAddValues.
Важно, что для взаимосвязанных полей платформа подставляет новым объектам поля фильтрации автоматически (то есть, улица на карточка класса Адрес из предыдущего примера будет добавлена к выбранному городу):
{
parent_fullName: "base/NamedEntity",
name: "City",
multiName: "Cities",
caption: "Город",
multiCaption: "Города",
lookupAddEnabled: true
},
{
parent_fullName: "base/NamedEntity",
name: "Street",
multiName: "Streets",
caption: "Улица",
multiCaption: "Улицы",
dataProperties: [
{ name: "city", caption: "Город", dataType_fullName: "City" }
],
lookupAddEnabled: true,
lookupAddConfirmationText: "Добавить улицу [value]?",
lookupAddValues: {
expressionKind: EExpressionKind.code,
code: "return { x: 1, y: 2 }"
}
}