8.х Создать выгрузку отчета в XML

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

  1. TopicStarter Overlay
    aakiseleva92
    Offline

    aakiseleva92

    Регистрация:
    15 июл 2014
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Добрый день! Есть Управление Торговлей 10.3 (релиз старый - 2008 года). Создан внешний отчет (из внутреннего) Ведомость по партиям товаров на складах. Результат отчета необходимо выгрузить в XML определенной структуры. Что-то типа:

    <Остаток Дата="20120615">
    - <Строка>
    <Артикул>740.1007032</Артикул>
    <Наименование>740.1007032 - втулка</Наименование>
    <Цена>656</Цена>
    <Количество>56</Количество>
    <Сумма>36736</Сумма>
    <СуммаСНДС>43348.48</СуммаСНДС>
    <СтавкаНДС>18</СтавкаНДС>
    </Строка>
    </Остаток>

    Где Количество - конечный остаток. Вопрос: как обратиться к результату отчета (таблице), чтобы построчно записать его в xml? Т.е.

    ДляКаждого Строка из ТабличнаяЧасть Цикл
    ЗаписьXML.ЗаписатьНачалоЭлемента("Артикул", Строка.Артикул) и т.д.

    Вот, что здесь будет за табличную часть и строку? Может нужно использовать реквизит универсального отчета "ПостроительОтчета"?
    Спасибо!

    Вложения:

  2. Dmitriy_76
    Offline

    Dmitriy_76 Опытный в 1С Команда форума

    Регистрация:
    26 мар 2011
    Сообщения:
    2.175
    Симпатии:
    13
    Баллы:
    29
    а... зачем сперва рисовать а потом получать ...
    не проще взять запрос (результат) и его в файл писать
  3. TopicStarter Overlay
    aakiseleva92
    Offline

    aakiseleva92

    Регистрация:
    15 июл 2014
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Ладно, тогда подскажите, пожалуйста по запросу (в запросах я особенно нуб)

    "ВЫБРАТЬ
    | Остатки.КоличествоОстаток КАК Остаток,
    | Остатки.СтоимостьОстаток КАК Сумма,
    | Остатки.Номенклатура.Ссылка КАК Номенклатура,
    | Остатки.Номенклатура.Наименование КАК Наименование,
    | Остатки.Номенклатура.Артикул КАК Артикул,
    | Остатки.Номенклатура.СтавкаНДС КАК СтавкаНДС,
    | Остатки.Склад.Наименование КАК Склад,
    | Остатки.ДокументОприходования.Товары.(
    | Цена
    | )
    |ИЗ
    | РегистрНакопления.ПартииТоваровНаСкладах.Остатки(&Дата, ) КАК Остатки
    |ГДЕ
    | Остатки.Номенклатура В ИЕРАРХИИ(&Группа)
    | И Остатки.Склад.Наименование = &Склад";

    Разумеется, он ругается на обращение к вложенной таблице через поле составного типа
    Остатки.ДокументОприходования.Товары.( Цена ). По идее цена в документах может отличаться от установленной через установку цен, по этому не хочу вытаскивать ее через соединение с регистром ЦеныНоменклатуры.СрезПоследних.

    Подскажите, пожалуйста, как в этом случае правильно вытащить данные в этом же запросе?
  4. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Без переделки вашего запроса - никак.
  5. TopicStarter Overlay
    aakiseleva92
    Offline

    aakiseleva92

    Регистрация:
    15 июл 2014
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Тогда как его переделать? Читала, что можно по левому соединению регистра с собственной табличной частью...но это же извращение какое-то. Как грамотно сделать запрос?
  6. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Запросом получаете документы поступления и программно обрабатываете каждый. Единственное что мне не понятно- причем тут остаток и документ поступления???
  7. TopicStarter Overlay
    aakiseleva92
    Offline

    aakiseleva92

    Регистрация:
    15 июл 2014
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Ибо нужно выгрузить в xml остатки товаров на определенную дату с ценой поступления. А какие-то партии могли прийти по одной цене, какие-то по другой.
  8. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Сразу скажу, задачка не из лекгих. Походу нужно добавлять еще партию, и уже группировать по ней. Потом эти группировки обрабатывать.
  9. TopicStarter Overlay
    aakiseleva92
    Offline

    aakiseleva92

    Регистрация:
    15 июл 2014
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    фуф...спасибо! буду разбираться

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