|
Как понять, что ссылка битая в ComОбъекте? | ☑ | ||
---|---|---|---|---|
0
u2006
13.07.11
✎
16:14
|
Ситуация такая, подключаюсь к другой базе через ComConnector. Нахожу там необходимую мне ссылку по УИДу. Как сделать проверку битая она или нет?
|
|||
1
u2006
13.07.11
✎
16:15
|
Вот кусок кода
МенеджерВРезервнойКопии = РезервнаяКопияБазы.Справочники[ИмяТипа]; УИДВРезервнойКопии = РезервнаяКопияБазы.NewObject("УникальныйИдентификатор",СтрокаТаблУИД.СтрокаУИД); //УИДВРезервнойКопии = ОбъектУИДВРезервнойКопии(СтрокаТаблУИД.СтрокаУИД); СсылкаВРезервнойКопии = МенеджерВРезервнойКопии.ПолучитьСсылку(УИДВРезервнойКопии); |
|||
2
u2006
13.07.11
✎
16:17
|
Сравнение с пустой ссылкой дает Ложь
|
|||
3
u2006
13.07.11
✎
16:23
|
Вот это помогло
ОбъектВРезервнойКопии = СсылкаВРезервнойКопии.ПолучитьОбъект(); Если ОбъектВРезервнойКопии = Неопределено Тогда Сообщить("Битая ссылка"); КонецЕсли; |
|||
4
Defender aka LINN
13.07.11
✎
16:24
|
(3) Расстрелять.
Запросом проверять надо. |
|||
5
u2006
13.07.11
✎
16:46
|
(4) Смысл?
|
|||
6
Defender aka LINN
13.07.11
✎
16:51
|
(5) Если ссылка не битая - ты за каким-то хреном получаешь целый объект. Для просто так. На быстродействие это влияет с какой угодно стороны, кроме положительной.
Если в конфигурации работали кривыми руками - ты вообще не получишь объект никогда через COM, а будешь падать на исключении, что тоже не доставляет. Запрос - быстро, экологически число и правильно. |
|||
7
Defender aka LINN
13.07.11
✎
16:52
|
+(6) Ну а про возможность проверить 100500 ссылок скопом я вообще молчу.
|
|||
8
DmitrO
13.07.11
✎
16:57
|
А можно еще разименованием, что вобщем-то равнозначно запросу, только коду меньше.
|
|||
9
u2006
13.07.11
✎
17:03
|
(8) Поподробнее можно?
|
|||
10
DmitrO
13.07.11
✎
17:11
|
Если ПустаяСтрока(СсылкаВРезервнойКопии.ВерсияДанных) Тогда
//Объект сперли КонецЕсли; |
|||
11
Defender aka LINN
13.07.11
✎
17:17
|
(10) Уж лучше таки запросом. Он хотя бы нужное число полей выбирает.
|
|||
12
u2006
13.07.11
✎
17:28
|
(10) Что такое ВерсияДанных?
|
|||
13
u2006
13.07.11
✎
17:29
|
(10) не работает у меня это способ
|
|||
14
u2006
13.07.11
✎
17:33
|
(10) я так понял это для 8.2
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |