8.х Получение списка через web-сервис

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

  1. TopicStarter Overlay
    Dem0lisher
    Offline

    Dem0lisher Профессионал в 1С

    Регистрация:
    4 авг 2009
    Сообщения:
    1.023
    Симпатии:
    51
    Баллы:
    54
    Добрый день!
    Опубликовал тестовую базу и в ней веб-сервис.
    Из другой базы удается получить через веб-сервис строковые данные типа "Привет-пока..".
    Как должна выглядеть структура XDTO-пакета, чтобы можно было получить список контрагентов или номенклатуры например, а не примитивный тип данных?

    Пробовал вот так:
    ЗапросПоОстаткам=Новый Запрос;
    ЗапросПоОстаткам.Текст = "ВЫБРАТЬ
    | ЕСТЬNULL(ЗапасыОстатки.КоличествоОстаток, 0) КАК КоличествоОстаток,
    | ЗапасыОстатки.Номенклатура.Код,
    | ЗапасыОстатки.Номенклатура.Наименование
    |ИЗ
    | РегистрНакопления.Запасы.Остатки(&ПарПер, ) КАК ЗапасыОстатки";

    ЗапросПоОстаткам.УстановитьПараметр("ПарПер",КонецДня(ТекущаяДата()));

    ТипXDTO_Товар = ФабрикаXDTO.Тип("http://www.pm.ru", "Tovar");
    КорневойЭлемент = ФабрикаXDTO.Создать(ТипXDTO_Товар);
    КорневойЭлемент.Naim = "Корневой элемент";

    Выборка = ЗапросПоОстаткам.Выполнить().Выбрать();
    Пока Выборка.Следующий() Цикл
    Элемент = ФабрикаXDTO.Создать(ТипXDTO_Товар);

    Элемент.KodTov = Выборка.НоменклатураКод;
    Элемент.Naim = Выборка.НоменклатураНаименование;
    Элемент.Ost = Выборка.КоличествоОстаток;

    КорневойЭлемент.Elementi.Добавить(Элемент);

    КонецЦикла;
    Возврат КорневойЭлемент;

    Когда пытаюсь получить эту таблицу в другой базе 1с орет на строку КорневойЭлемент.Elementi.Добавить(Элемент);
    типа "значение не является значением объектного типа Добавить"
    ______
    Извинияюсь, не нашел кнопки оформления кода..
  2. LordMaverick
    Offline

    LordMaverick Профессионал в 1С

    Регистрация:
    17 мар 2014
    Сообщения:
    3.433
    Симпатии:
    373
    Баллы:
    104
    code и /code в квадратных скобках
  3. TopicStarter Overlay
    Dem0lisher
    Offline

    Dem0lisher Профессионал в 1С

    Регистрация:
    4 авг 2009
    Сообщения:
    1.023
    Симпатии:
    51
    Баллы:
    54
    Теперь ошибка другая: если запустить этот же код во внешней обработке, то он отработает и получится "СписокXDTO" со всеми заполненными элементами.
    Но когда вызываю его как веб сервис - из другой базы он отрабатывает с ошибкой на строке "Ответ = Сервис.TovIC();"
    Получаю во так:
    Код:
        Сервис = WSСсылки.OstTov.СоздатьWSПрокси("http://www.pm.ru","OstTov","OstTovSoap12");
        Сервис.Пользователь="userws";
        Сервис.Пароль=""; 
        Ответ = Сервис.TovIC();
    
    Ошибка отображения типов "СписокXDTO"..

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