|
Непонятки с предопределенными элементами | ☑ | ||
---|---|---|---|---|
0
slafor
06.12.23
✎
23:39
|
Есть стандартный справочник Контрагенты, у него реквизит - ЮридическоеФизическоеЛицо (составного типа - либо справочник ЮридическиеЛица, либо справочник ФизическиеЛица).
1.У справочника Контрагенты создали предопределенный элемент КонтрагентП. Все хорошо. Обращаюсь к нему "через точку" - Справочники.Контрагенты.КонтрагентП - все работает. Но вот потом отредактировали данные по связанному справочнику - ЮридическиеЛица - и после этого предопределенный элемент стал не виден (ошибка "Предопределенный элемент отсутствует в данных", при попытке обратиться к нему "через точку"). А в списке элементов он стал показываться как "обычный" элемент, без значка "предопределённого". Почему так произошло и как можно исправить, а главное - как можно избежать такого на рабочих базах? Это хорошо, что мы в копии делали. 2. Почему при добавлении предопределенного элемента справочника весь справочник контрагентов (а там элементов более миллиона) около часа проходит "реструктуризацию"? Что там "реструктуризировать"? Я же не реквизит новый создал, не тип значения чего-то изменил. |
|||
1
Donkey_hot
07.12.23
✎
00:06
|
(0) Что случилось и как избежать, сказать трудно, а вот исправить проще простого - заполните у элемента поле ИмяПредопределенныхДанных.
|
|||
2
slafor
07.12.23
✎
00:22
|
(10) Посмотрел через Консоль запросов: ИмяПредопределенныхДанных действительно не заполнено, но и признак Предопределенный не установлен.
|
|||
3
slafor
07.12.23
✎
00:27
|
+(2) Поле "Предопределенный", как я и думал, недоступно для записи.
|
|||
4
slafor
07.12.23
✎
10:12
|
+(0) Дополнение к п.2. При реструктуризации вылезло ещё много ошибок по неуникальности кода: https://disk.yandex.ru/i/u9YmKBvwwyZ0Vw , причём ни код, ни наименование нового предопределённого элемента, заданные в конфигураторе, не имеют ничего общего с теми элементами, которые здесь показаны в списке.
|
|||
5
ildary
07.12.23
✎
10:31
|
(0) начать надо с проверки - какие обмены (РИБ?) есть в базе?
|
|||
6
slafor
07.12.23
✎
10:56
|
(5) В то-то и дело, что стандартных обменов, тем более РИБ там нет. Есть создание документов по API, но это другое.
|
|||
7
Eiffil123
07.12.23
✎
10:58
|
(3) если программно заполните ИмяПредопределенныхДанных, то данный элемент будет отображаться как предопределенный.
|
|||
8
slafor
07.12.23
✎
11:07
|
(7) Спасибо, помогло!
Но так и непонятным остался вопрос - почему все это произошло? |
|||
9
slafor
07.12.23
✎
11:19
|
В общем, схема тут достаточно проста. Есть предопределенный элемент справочника Контрагенты, есть Юридическое лицо, на который ссылается Контрагент (через реквизит ЮридическоеФизическоеЛицо). Если мы меняем что-то в ЮЛ, то Контрагент сразу же становить непредопределенным.
ЮЛ может менять реквизиты Контрагента, но ведь это не должно снимать признак предопределенности! |
|||
10
timurhv
07.12.23
✎
11:39
|
(9) Наверное, там автоматом обновляются свойства через:
ЗаполнитьЗначенияСвойств, в котором и признак предопределенности и ИмяПредопределенныхДанных |
|||
11
slafor
07.12.23
✎
12:22
|
(10) Точно! Спасибо, я уже нашел - там срабатывает Оповестить в ЮЛ и ОбработкаОповещения в Контрагентах. И признак Предопределенны
|
|||
12
slafor
07.12.23
✎
12:23
|
+(11) ...и признак Предопределенный, и ИмяПредопределенныхДанных тоже переносятся, надо их просто исключить!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |