Вопрос

Сохранить ID раздела из которого добавлена новая запись в справочник

Доброго дня!

Приведу пример на стандартных объектах. В карточке Контрагента есть поле Страна. В справочник Страна добавлено поле Источник. Нужно в поле Источник записывать информацию о том, из какого объекта (контрагента) была создана эта запись. 

Сценарий такой:

- Пользователь через лукап в поле Страна открывает окно поиска

- не находит страну, жмет добавить, открывается справочник, добавляет новую страну.

 

Вопрос. Как сохранить сведения об источнике добавления записи...что она добавлена именно из этого контрагента?

Есть похожая тема: https://community.terrasoft.ru/questions/zapolnenie-polei-v-kartocke-pr…, но там нет решения.. и новых ответов тоже.

 

Спасибо!

 

Нравится

4 комментария
Лучший ответ

А если использовать гипотезу, что раз он добавил новую запись, например, страны, то он ее и выберет в контрагенте. Далее смотрим, что у новой страны нет записи, откуда она была добавлена и находим те записи, которые ссылаются на нее (брать первую запись по дате изменения). Это можно сделать периодическим бизнес процессом.

Думаю простого решения нет, как вариант сохранить в сессии пользователя источник (название страницы редактирования) переопределить добавление записи в LookupPage (заполнять источник из сессии)

Если делать свою страницу выбора со справочника (наследник LookupPage), то потом можно его подключить добавив в атрибут (Пример для страницы выбора из справочника городов): 

"City": {
	"dataValueType": Terrasoft.DataValueType.LOOKUP,
	"lookupListConfig": {
		lookupPageName: "MyBaseLookup",
	}
}

Подробнее тут

Так же похожий вопрос обсуждался тут

 

А если использовать гипотезу, что раз он добавил новую запись, например, страны, то он ее и выберет в контрагенте. Далее смотрим, что у новой страны нет записи, откуда она была добавлена и находим те записи, которые ссылаются на нее (брать первую запись по дате изменения). Это можно сделать периодическим бизнес процессом.

Тогда можно ещё проще: при сохранении контрагента во встроенном или отдельном БП проверять значение «Страна.Источник» и если там пусто, заполнять Id этого контрагента.

Коллеги, спасибо за обратную связь. Пробуем при открытии лукапа считать  какой объект открыт под текущим юзером.. он то нам и нужен будет как источник создания новой записи в справочнике. 

 

Показать все комментарии