Имя: Пароль:
1C
1С v8
Что выдает метод ПолучитьСсылку, если такого УИДа нет?
0 Skylark
 
14.12.11
14:39
ЗУП_ДокСсылка = Документы.МойКрутойДокумент.ПолучитьСсылку(Новый УникальныйИдентификатор(ЗУП_УИД));
Если ЗУП_ДокСсылка.Пустая() Тогда
 // это новый
 ЗУП_ДокСсылка = Документы.МойКрутойДокумент.СоздатьДокумент();
 ЗУП_ДокОбъект.УстановитьСсылкуНового(ЗУП_ДокСсылка);        
Иначе
 ЗУП_ДокОбъект = ЗУП_ДокСсылка.ПолучитьОбъект();
КонецЕсли;    

Такое впечатление, что метод ЗУП_ДокСсылка.Пустая() не срабатывает, т.к. ЗУП_ДокСсылка не пустая, а "битая" (т.е. отображается как "Объект не найден"
1 Skylark
 
14.12.11
14:39
Собственно вопрос в том, как лучше проверить, нашелся объект по этому УИДу или нет?
2 Skylark
 
14.12.11
14:41
Конструкция типа:

Если Найти(СокрЛП(ЗУП_ДокСсылка), "Объект не найден") > 0 Тогда
   // это новый
   ЗУП_ДокОбъект = Документы.МойКрутойДокумент.СоздатьДокумент();
   ЗУП_ДокОбъект.УстановитьСсылкуНового(ЗУП_ДокСсылка);
Иначе
   ЗУП_ДокОбъект = ЗУП_ДокСсылка.ПолучитьОбъект();
КонецЕсли;    

работает, но как-то она не этетична на мой взгляд
3 ilpar
 
14.12.11
14:41
ты программист ?
4 ilpar
 
14.12.11
14:43
есть строка кода для проверки

ЗУП_ДокСсылка = Документы.МойКрутойДокумент.ПолучитьСсылку(Новый УникальныйИдентификатор("Пошли_нафиг"));

и ты просишь помощи ?

Или постановка чуть другая?
5 ilpar
 
14.12.11
14:44
и надо знать, что ссылка битая
6 Defender aka LINN
 
14.12.11
14:44
(0) "Такое впечатление, что метод ЗУП_ДокСсылка.Пустая() не срабатывает, т.к. ЗУП_ДокСсылка не пустая, а "битая"" - Угадал. Возьми с полки пирожок.
(1) Запросом.
7 Господин ПЖ
 
14.12.11
14:44
ЗУП_ДокСсылка = Документы.МойКрутойДокумент.ПолучитьСсылку(Новый УникальныйИдентификатор(ЗУП_УИД));
Если ЗУП_ДокСсылка.ПолучитьОбъект() = Неопределено Тогда
8 Defender aka LINN
 
14.12.11
14:45
(7) Ну вот от кого-кого, а от тебя такого не ожидал...
9 DmitrO
 
14.12.11
14:46
(1)запросом надо проверять
10 ilpar
 
14.12.11
14:46
блин, не увидел комментарий в коде
11 Skylark
 
14.12.11
14:47
Спасибо, запросом это вот как раз наверное православно будет.
12 Господин ПЖ
 
14.12.11
14:47
(8) а что плохого? ему все равно потом объект нужен
13 Skylark
 
14.12.11
14:51
(7) Надо тоже попробовать. Но подозреваю, что если ссылка битая, то ЗУП_ДокСсылка.ПолучитьОбъект() вызовет исключение
14 Defender aka LINN
 
14.12.11
14:53
(13) Меньше подозревай, больше читай.
(12) Ну, так-то да, но запросом как-то все равно кошернее :)
15 DmitrO
 
14.12.11
14:57
(12)если так, тогда соглашусь
16 Axel2009
 
20.12.11
11:55
(12) так то да, а когда он начнет синхронизировать реквизиты, то тоже будет пользовать получитьобъект.
Программист всегда исправляет последнюю ошибку.