Имя: Пароль:
1C
 
И снова УстановитьСсылкуНового...
0 mikecool
 
22.07.22
21:37
8.3.18.1363, ОФ, копирую номенклатуру в форме списка

        НовыйЭлемент = ТекДанные.Ссылка.Скопировать();
        СсылкаНового = Справочники.Номенклатура.ПолучитьСсылку(Новый УникальныйИдентификатор); // здесь норм - гуид и объект не найден
        НовыйЭлемент.УстановитьСсылкуНового(СсылкаНового);
        НовыйЭлементСсылка = НовыйЭлемент.ПолучитьСсылкуНового(); // а здесь пусто
и при попытке указать НовыйЭлементСсылка как владельца единиц получаю отлуп
чяднт?
1 mikecool
 
22.07.22
21:42
а НовыйЭлементСсылка  = Неопределено...
2 ДедМорроз
 
22.07.22
21:44
Так не Скопировать нужно,а создать
При Скопировать уже ссылка нового по барабану,так как гуид уже присвоен.
3 mikecool
 
22.07.22
21:44
(2) при Скопировать гуид и ссылка пустые
4 mikecool
 
22.07.22
21:45
хрень какая то - после 6 или 7 го прогона НовыйЭлементСсылка стал = СсылкаНового, как так то?
5 mikecool
 
22.07.22
21:49
все бы хорошо, но эта ссылка не подходит для Владельца единицы измерения

            НоваяЕдиница = Справочники.ЕдиницыИзмерения.СоздатьЭлемент();
            НоваяЕдиница.Владелец = НовыйЭлементСсылка;
            НоваяЕдиница.УстановитьНовыйКод();
            ЗаполнитьЗначенияСвойств(НоваяЕдиница, Единицы);
            НоваяЕдиница.Записать();
и тут Владелец заполнен не верно...
6 mikecool
 
22.07.22
21:52
так то можно наплевать и сделать двойную запись, но как то разобраться хотелось бы )
7 RomanYS
 
22.07.22
21:58
(5) так посмотри перезаписью, там проверки какие-нибудь. Может обменданными.загрузка поможет
8 ДедМорроз
 
22.07.22
22:11
А как вы хотите создать элемент,у которого еще не записан владелец?
9 RomanYS
 
22.07.22
22:19
(8) на уровне платформы препятствий нет
10 mikecool
 
22.07.22
22:23
(7) да, оБменданными = Истина помог, спасибо
11 mikecool
 
22.07.22
22:24
(8) все четко , да еще в одной транзакции
12 ДедМорроз
 
22.07.22
23:33
ОбменДанными = Истина
Отключает часть проверок на уровне системы,а также,чаще всего,выполнение алгоритма ПриЗаписи,если в начале есть такая проверка.
В некоторых конфигурациях про нее забыли,и тогда приходится сначала записывать владельца,а потом создавать дочерний элемент,особенно,если последний сам прописывается в табличную часть владельца.
13 ReaLg
 
23.07.22
07:48
(4) Ты ее уговорил :)
Китайцы взломали сервер Пентагона. На 4000000000 попытке тот согласился, что пароль - "Мао Цзэдун" :)
14 СеменовСемен
 
23.07.22
09:05
Юзай не НовыйЭлементСсылка, а сразу СсылкаНового
Независимо от того, куда вы едете — это в гору и против ветра!