Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Помогите исправить запрос

Помогите исправить запрос
Я
   vova1122
 
01.04.20 - 11:32
Помогите написать текст запроса одним запросом. Задача: Нужно Выбрать из регистраСведений всю историю Тарифа, но только для тех контрагентов у которых за последние два дня было изменение этого тарифа и сгрупировать по контрагенту.
Контрагент- Это Измерение
Тариф - Это Ресурс
Хочется забрать из цикла запрос, а сделать все одним запросом, но незнаю как.
    
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ ПЕРВЫЕ 5
    |    ИсторияТарифа.Период,
    |    ИсторияТарифа.Контрагент,
    |    ИсторияТарифа.Тариф
    |ИЗ
    |    РегистрСведений.ИсторияТарифа КАК ИсторияТарифа
    |ГДЕ
    |    ИсторияТарифа.Период МЕЖДУ &Д1 И &Д2";
    
    Запрос.УстановитьПараметр("Д1", НачалоДня(ТекущаяДата())-86405);
    Запрос.УстановитьПараметр("Д2", ТекущаяДата());
    
    РезультатЗапроса = Запрос.Выполнить().Выбрать();
    
    Пока РезультатЗапроса.Следующий() Цикл
        Запрос1 = Новый Запрос;
        Запрос1.Текст =         
        "ВЫБРАТЬ
        |    ИсторияТарифа.Период,
        |    ИсторияТарифа.Контрагент,
        |    ИсторияТарифа.Тариф
        |ИЗ
        |    РегистрСведений.ИсторияТарифа КАК ИсторияТарифа
        |ГДЕ
        |    ИсторияТарифа.Контрагент = &Контр";
        Запрос1.УстановитьПараметр("Контр", РезультатЗапроса.Контрагент);
        ВДЗ = Запрос1.Выполнить().Выгрузить();
                // дальше обрабатываем результат
    КонецЦикла;
   mikecool
 
1 - 01.04.20 - 11:35
выбрать все, отбирать по контрагенту из тз
   dezss
 
2 - 01.04.20 - 11:36
(0) первый запрос в вт, второй соединяй с первым.
   dezss
 
3 - 01.04.20 - 11:37
(2) Или во втором написать
ГДЕ
    ИсторияТарифа.Контрагент В (<и тут первый запрос с выборкой только контрагентов>)
   Ёпрст
 
4 - 01.04.20 - 11:38
(0)
  
|ВЫБРАТЬ
        |    ИсторияТарифа.Период,
        |    ИсторияТарифа.Контрагент,
        |    ИсторияТарифа.Тариф
        |ИЗ
        |    РегистрСведений.ИсторияТарифа КАК ИсторияТарифа
        |ГДЕ
        |    ИсторияТарифа.Контрагент в (ВЫБРАТЬ 
    |    ИсторияТарифа.Контрагент 
    |ИЗ
    |    РегистрСведений.ИсторияТарифа КАК ИсторияТарифа
    |ГДЕ
    |    ИсторияТарифа.Период МЕЖДУ &Д1 И &Д2)

   vova1122
 
5 - 01.04.20 - 11:51
(4) Спасибо. Все гениальное - просто

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.