|
Что означает ПолучитьСсылкуНового и УстановитьСсылкуНового |
☑ |
0
Z_DR_12
15.04.16
✎
11:09
|
Что означает ПолучитьСсылкуНового и УстановитьСсылкуНового
я понял что они работают только для нового справочника
в СП посмотрел так и не понял что они означают
|
|
1
Zhuravlik
15.04.16
✎
11:12
|
Для начала надо разобраться с тем что же такое "Ссылка"...
|
|
2
Chainsaw
15.04.16
✎
11:17
|
(0) Зачем это тебе? Ты собрался это где-то применять и думаешь, что эти методы тебе помогут? Или просто читаешь СП перед сном?
|
|
3
Лефмихалыч
15.04.16
✎
11:24
|
(0) если до записи нового объекта вызвать УстановитьСсылкуНОвого(новый уникальныйИдентификатор), то поле Ссылка до записи будет возвращать не пустую ссылку. Если этого всего не сделать, то до записи Ссылка содержит 000-000-000000...
|
|
4
Z_DR_12
15.04.16
✎
11:24
|
(2) я сейчас занимаюсь самообразованием вот хочу узнать что означает каждый метод
|
|
5
Лефмихалыч
15.04.16
✎
11:29
|
используется тогда, когда вместе с объектом надо записать какие-то сведения и хочется все это в одной транзакции сделать.
Например - при создании номенклатуры одновременно записать и цену ее. Тогда:
НовыйЭлемент = Справочники.Номенклатура.СоздатьЭлемент();
//заполнить новый элемент
НовыйЭлемент.УстановитьСсылкуНового(Новый УникальныйИдентификатор);
Запись = РегистрыСведений.ЦеныНоменклатуры.СоздатьМенеджерЗаписи();
Запись.Номенклатура = НовыйЭлемент.ПолучитьСсылкуНового(); // вот сюда внимательно потому. Что в предыдущем посте я тебя наиграл
Запись.Записать();
НовыйЭлемент.ЗАписать();
Или еще - когда ты загружаешь объекты из другой системы и тебе для синхронизации надо сохранить ГУИД объектов из другой системы. Тогда ты делаешь так:
НовыйЭлемент = Справочники.Номенклатура.СоздатьЭлемент();
НовыйЭлемент.УстановитьСсылкуНового(ГУИДИзДругойСистемы);
НовыйЭлемент.Записать();
|
|
6
Лефмихалыч
15.04.16
✎
11:30
|
(4) открывай глаза до щелчка, когда СП читаешь. Должно помочь
|
|
7
Z_DR_12
15.04.16
✎
14:38
|
НовыйЭлемент.УстановитьСсылкуНового(Новый УникальныйИдентификатор); здесь возникает ошибка потому что должна быть ссылка
|
|
8
FIXXXL
15.04.16
✎
14:50
|
СсылкаНового = СправочникОбъект.ПолучитьСсылкуНового();
Если СсылкаНового.Пустая() Тогда
СсылкаНового = Справочники[СправочникОбъект.Метаданные().Имя].ПолучитьСсылку();
СправочникОбъект.УстановитьСсылкуНового(СсылкаНового);
КонецЕсли;
|
|
9
FIXXXL
15.04.16
✎
14:51
|
вот так еще понятнее
Если СправочникОбъект.ЭтоНовый() Тогда
СсылкаНового = СправочникОбъект.ПолучитьСсылкуНового();
Если СсылкаНового.Пустая() Тогда
СсылкаНового = Справочники[СправочникОбъект.Метаданные().Имя].ПолучитьСсылку();
СправочникОбъект.УстановитьСсылкуНового(СсылкаНового);
КонецЕсли;
СправочникОбъект[ИмяРеквизита] = Строка(СсылкаНового.УникальныйИдентификатор());
КонецЕсли;
|
|