8.х Организация интерфейса для результата COMзапроса

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем aksenov_as, 6 июл 2007.

  1. TopicStarter Overlay
    aksenov_as
    Offline

    aksenov_as

    Регистрация:
    6 июн 2007
    Сообщения:
    30
    Симпатии:
    0
    Баллы:
    1
    Подскажите, плз.

    Выполняю запрос по базе через COM соединение, результаты имеют тип COMObject. Мне требуется вывести полученную таблицу на экран пользователя, например через ТабличноеПоле. Как согласовать типы?

    Листинг:
    Запрос=База2.NewObject("Запрос");
    ТекстЗапроса="
    | Выбрать
    | Ссылка
    | Из Справочник.Номенклатура";
    Запрос.Текст=ТекстЗапроса;
    ТабЗн=Запрос.Выполнить().Выгрузить();
    ТабПоле.Значение = ТабЗн; ///////-----неработает!
  2. рамиль
    Offline

    рамиль Опытный в 1С

    Регистрация:
    12 мар 2006
    Сообщения:
    595
    Симпатии:
    0
    Баллы:
    26
    Добавьте ТабПоле.СоздатьКолонки();
  3. TopicStarter Overlay
    aksenov_as
    Offline

    aksenov_as

    Регистрация:
    6 июн 2007
    Сообщения:
    30
    Симпатии:
    0
    Баллы:
    1
    ....Проблема в том что
    Запрос.Выполнить().Выгрузить() имеет значение и тип COMObject,
    и вероятно из-за это не присваивается в качестве источника ТабПоле
    т.е. ТабПоле.Значение =Запрос.Выполнить().Выгрузить() - то чего ожидаю не происходит
    Возможно требуется преобразование типов?
  4. рамиль
    Offline

    рамиль Опытный в 1С

    Регистрация:
    12 мар 2006
    Сообщения:
    595
    Симпатии:
    0
    Баллы:
    26
    Это полный текст запроса?
  5. TopicStarter Overlay
    aksenov_as
    Offline

    aksenov_as

    Регистрация:
    6 июн 2007
    Сообщения:
    30
    Симпатии:
    0
    Баллы:
    1
    Запрос полный.
    Запрос.Выполнить().Выгрузить() - содержит требуемую мне выборку. Все обекты данной выборки имеют тип COMObject
  6. x_under
    Offline

    x_under Модераторы Команда форума Модератор

    Регистрация:
    25 апр 2007
    Сообщения:
    2.576
    Симпатии:
    13
    Баллы:
    29
    С полученной таблицей и прийдется работать и ее результаты перекладывать в другую таблицу. Из Com можно получить только простейшие типы (число, строка и т.п). Но методы, характерные для ТЗ у нее сохранятся.
  7. TopicStarter Overlay
    aksenov_as
    Offline

    aksenov_as

    Регистрация:
    6 июн 2007
    Сообщения:
    30
    Симпатии:
    0
    Баллы:
    1
    Понятно. Т.е. без организации переборов не обойтись? :(
  8. x_under
    Offline

    x_under Модераторы Команда форума Модератор

    Регистрация:
    25 апр 2007
    Сообщения:
    2.576
    Симпатии:
    13
    Баллы:
    29
    Нет. Просто одна программа не знает как работать с типами другой. Com объект это справочник, но для др. программы - это некоторый объект с набором методов (которые работают)

Поделиться этой страницей