Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
17 апр 2024, 00:38

com-соединение: .Пустая() - Значение не является значением объектного типа (Пустая)

Автор burvladimir, 02 фев 2015, 11:26

0 Пользователей и 1 гость просматривают эту тему.

burvladimir

   Путь="C:\Users\User\Documents\InfoBase9";
   V8 = Новый COMОбъект("V82.ComConnector");
Попытка
   Открытие = V8.Connect("File=""" + Путь + """");
   Сообщить("Подключились к "+Путь);
Исключение
   Предупреждение("База данных не открыта!!!");
   Возврат;
КонецПопытки;

МенеджерКонтрагентов = Открытие.Справочники.Контрагенты;

Организация = МенеджерКонтрагентов.НайтиПоКоду(ТекСтрока.Контрагент.Код);
Если Организация.Пустая() Тогда       

- и тут вылезает ошибка. Что не так? Текст вроде избитый...

Slin

не так тут то, что Организация имеет тип не СправочникМенеджер.Организации, а COM-объект
весьма вероятно, что у данного COM-объекта нет такого метода
skype: slin-dev


Slin

skype: slin-dev

burvladimir


LexaK

метод НайтиПоКоду() может вернуть Неопределено! читайте СП!!!
соответственно такая конструкция
Неопределено.Пустая() - выдаст ошибку!

поэтому необходимо делать двойную проверку

    Если лкОрганизация <> Неопределено
        и лкОрганизация.Пустая() Тогда
        //...
    Иначе    
        //...
    КонецЕсли;

если помогло нажмите: Спасибо!

burvladimir

Ну, наверное, имелось в виду
Если лкОрганизация = Неопределено
        и лкОрганизация.Пустая() Тогда
        //...
    Иначе       
        //...
    КонецЕсли;

Спасибо. И для тех, кто в танке - кто такой СП (читайте СП!!!)?
Добавлено: 03 фев 2015, 00:11


Трудно в отладчике посмотреть значения переменных, когда они СОМОбъект, вот и не мог сразу понять. Спасибо еще раз!

Slin

СП - синтаксис-помощник
а условие неверно, надо наверное так
Если лкОрганизация <> Неопределено
        и лкОрганизация.Пустая() Тогда
        //...
    Иначе       
        //...
    КонецЕсли;
skype: slin-dev

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск