[РЕШЕНО] Вытащить из регистра текущую и предыдущую цену

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

  1. TopicStarter Overlay
    mhl
    Offline

    mhl Опытный в 1С

    Регистрация:
    23 июн 2007
    Сообщения:
    418
    Симпатии:
    0
    Баллы:
    26
    Добрый день. Имеется регистр сведений ЦеныМодели. Регистр периодический. Измерения: Модель, ТипЦен, ТипСкидок; Ресурсы Цена, Валюта.
    Необходимо вытащить в отчете на СКД текущую цену и предыдущую.

    Отчет должен иметь вид:
    Модель | ТипСкидки | Цена | ПредыдущийТипСкидки | Пред.цена

    Проблема в данный момент в том, что мой отчет вытаскивает повторы по модели. Например:
    Модель1 | Третий тип | 25 | Второй тип | 15
    Модель1 | второй тип | 15 | Первый тип | 5 //Вот эта строка не должна выходить. Надо показать только последнее изменение
    Модель 2 | Четвертый тип | 60 | Третий тип | 45
  2. nickpugachev
    Offline

    nickpugachev Профессионал в 1С Команда форума

    Регистрация:
    28 май 2012
    Сообщения:
    3.266
    Симпатии:
    131
    Баллы:
    104
    запрос показывайте
    должно быть типа такого:
    вытаскиваете текущую срезом последних вместе с периодом, складываете во временную таблицу.
    соединяете эту временную таблицу с таблицей регистра по модели и периоду (период в таблице регистра меньше периода среза), группируете, получаете предыдущий срез, соединяете результат еще раз с таблицей - получаете все, что хотели
    --- Объединение сообщений, 19 апр 2014 ---
    а не, гоню :)
    у вас тип скидки тоже измерение

    тогда будет проще работать не со срезом, а с таблицей регистра, потому что все-равно будете перегруппировывать

    Код:
    ВЫБРАТЬ
      Вложенный.Период,
      Вложенный.Модель,
      РегистрЦены.ТипСкидки,
      РегистрЦены.Цена
    ИЗ
      (ВЫБРАТЬ
        ТаблицаРегистра.Модель,
        МАКСИМУМ(ТаблицаРегистра.Период)
      ИЗ
        РегистрСведений.ЦеныМодели КАК ТаблицаРегистра
      ГДЕ
        ТаблицаРегистра.Активность
      СГРУППИРОВАТЬ ПО
        ТаблицаРегистра.Модель) КАК Вложенный
      ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныМодели КАК РегистрЦены
      ПО Вложенный.Период=РегистрЦены.Период И Вложенный.Модель=РегистрЦены.Модель
    
    Вот так надо вместо среза последних
    Последнее редактирование: 19 апр 2014
  3. TopicStarter Overlay
    mhl
    Offline

    mhl Опытный в 1С

    Регистрация:
    23 июн 2007
    Сообщения:
    418
    Симпатии:
    0
    Баллы:
    26
    Разобрался. Тема закрыта.

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