8.х Запрос: Продажи и Цены

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

  1. TopicStarter Overlay
    Чут
    Offline

    Чут

    Регистрация:
    3 сен 2008
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Помогите решить вопрос наиболее правильным способом.

    Цель: получить выборку с реальной ценой на дату продажи данной номенклатуры одним запросом.

    Есть:
    ...
    ПродажиОбороты.ДокументПродажи.Дата КАК ДатаПродажи
    ...
    ИЗ РегистрНакопления.Продажи.Обороты(...
    ...
    ???
    РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&ДатаПродажи, )
    ...
  2. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Простое решение - временная таблица с ценами за нужный период и соединение с таблицей оборотов.

    Можно посложнее - но я не готов сейчас написать такой запрос :)
  3. TopicStarter Overlay
    Чут
    Offline

    Чут

    Регистрация:
    3 сен 2008
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Вызов СрезПоследних() можно использовать только с передачей в него заранее готового значения даты, на которую требуется получить значения. Поэтому сабж делается через стыковку нескольких запросов -
    основной, к нему стыкуется запрос по регистру сведений с условием по дате и поиском записи с маскимальной датой (периодом).

    ВЫБРАТЬ
    Таб1.СсылкаДок,
    Таб1.ДатаДок,
    Таб1.ВалютаДок,
    Таб2.Курс
    ИЗ
    (ВЫБРАТЬ
    ЗаказПокупателя.Ссылка КАК СсылкаДок,
    ЗаказПокупателя.Дата КАК ДатаДок,
    ЗаказПокупателя.ВалютаДокумента КАК ВалютаДок,
    МАКСИМУМ(Валюты.Период) КАК ПериодДок
    ИЗ
    Документ.ЗаказПокупателя КАК ЗаказПокупателя
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют КАК Валюты
    ПО Валюты.Период <= ЗаказПокупателя.Дата И
    Валюты.Валюта = ЗаказПокупателя.ВалютаДокумента
    СГРУППИРОВАТЬ ПО
    ЗаказПокупателя.Ссылка) КАК Таб1
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют КАК Таб2
    ПО Таб1.ПериодДок = Таб2.Период И Таб1.ВалютаДок = Таб2.Валюта


    в таком духе?

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