|
Com игнорирует УстановитьСсылкуНового | ☑ | ||
---|---|---|---|---|
0
zakidonoff
02.12.13
✎
07:37
|
Может кто сталкивался или наведёт на свежую мысль - сам понять не могу, почему код ниже не устанавливает мне ссылку нового.
Суть така: есть обработка, которая подключается по com к другой файловой базе и создаёт в ней саму себя. После этого я пытаюсь вернуть новый элемент, например, контрагента, с установленным уникальным идентификатором, как в текущей базе. Объект возвращается, но уникальный идентификатор не присваивается. Причём, что интересно, из базы Бух2.0 в УТ10.3 (и наоборот) - всё отрабатывает как надо. А вот из УТ в УТ - УстановитьСсылкуНового() просто игнорируется... мВБаза = ВыполнитьПодключениеКИБ(); Если мВБаза <> Неопределено Тогда мВОбработка = мВБаза.ВнешниеОбработки.Создать(ЭтотОбъект.ИспользуемоеИмяФайла); КонецЕсли; мВКонтрагент = мВОбработка.СоздатьНовыйОбъект(УнИд, НекийКонтрагент, "Контрагенты"); Функция СоздатьНовыйОбъект(СтрокаУнИд, вОбъект, ВидМенеджер) Экспорт Ссылка = Справочники[ВидМенеджер].ПолучитьСсылку(Новый УникальныйИдентификатор(СтрокаУнИд)); Объект = Справочники[ВидМенеджер].СоздатьЭлемент(); Объект.УстановитьСсылкуНового(Ссылка); Возврат Объект; КонецФункции |
|||
1
Cube
02.12.13
✎
07:50
|
(0) Тоже как-то бился... Оказалось, что в типовой ЗиУП у справочника была то ли подписка на событие, то ли просто в модуле объекта, где для нового принудительно устанавливалась новая ссылка...
|
|||
2
Defender aka LINN
02.12.13
✎
07:56
|
(0) А в модуль справочника заглянуть - не, не судьба?
|
|||
3
zakidonoff
02.12.13
✎
08:02
|
(1)(2) Вид справочника не важен - та же шняга на любой справочник и любой документ.
Добавил в модуль: ПараметрыСеанса.НаличиеОбменаТорговляБухгалтерия = Ложь; ПараметрыСеанса.НаличиеОбменаССайтом = Ложь; Не помогло... |
|||
4
George Wheels
02.12.13
✎
08:09
|
Возможно это
Процедура НастройкаПравДоступа.ПередЗаписьюНовогоОбъектаСПравамиДоступаПользователей(...) Экспорт |
|||
5
George Wheels
02.12.13
✎
08:14
|
(4) + Установи ОбменДанными.Загрузка = Истина.
|
|||
6
zakidonoff
02.12.13
✎
08:28
|
(5) Прокатило! Аригато! Осталось выяснить, в какой именно подписке при создании объекта торговля мне гадить начинает...
|
|||
7
zakidonoff
02.12.13
✎
08:35
|
Всё, нашёл. Сам дурак.
Впрочем, всё как обычно -) |
|||
8
George Wheels
02.12.13
✎
08:37
|
(6) см (4)
|
|||
9
zakidonoff
02.12.13
✎
08:41
|
(8) Не, эта не отрабатывала - там всему виной была моя собственная подписка, где я переопределял УнИд у документов при создании.
В общем, сам дурак -) |
|||
10
Мимохожий Однако
02.12.13
✎
08:50
|
(9)Строг ты, батенька. Раз нашёл, то мастер. ))
|
|||
11
zakidonoff
02.12.13
✎
08:56
|
(10) В (4) всё грамотно сделано. Там в коде проверка была на наличие ссылки:
СсылкаНового = ЭтотОбъект.ПолучитьСсылкуНового(); Если НЕ ЗначениеЗаполнено(СсылкаНового) Тогда СсылкаНового = Справочники[ЭтотОбъект.Метаданные().Имя].ПолучитьСсылку(); КонецЕсли; А в моей подписке я как-то не просчитал, что создание объектов может происходить по ком без установки параметра объекта загрузки... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |