Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
12 дек 2024, 00:30

Проблема с Левым Соединением

Автор Opty, 03 авг 2015, 13:33

0 Пользователей и 1 гость просматривают эту тему.

Opty

День добрый, уважаемые!

Имею отчет, который уже месяц не могу никак доделать до удобоваримого вида)))
Данный отчет состоит из следующих запросов:

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

//////////////////////////////////////

ВЫБРАТЬ
&Дата КАК Дата,
ДвериВсе.СтоимостьДверей,
ДвериВсе.ПроданоДверей,
ДвериВсе.Период
ИЗ
ДвериВсе;

Бонусы
ВЫБРАТЬ
&Дата КАК Дата,
ЗадатьБонусыНаДату.Стоимость КАК Бонус,
ЗадатьБонусыНаДату.ДверейОт,
ЗадатьБонусыНаДату.ДверейДо,
ЗадатьБонусыНаДату.Период,
ЗадатьБонусыНаДату.ЭтоЕжедневнаяЗП
ИЗ
РегистрСведений.ЗадатьБонусыНаДату.СрезПоследних(&Дата) КАК ЗадатьБонусыНаДату;

ЗП
ВЫБРАТЬ
&Дата КАК Дата,
ЗПвДень.Стоимость КАК ЗП
ИЗ
РегистрСведений.ЗадатьБонусыНаДату.СрезПоследних(&Дата, ) КАК ЗПвДень
ГДЕ
ЗПвДень.ЭтоЕжедневнаяЗП

Далее связываю три запроса вот таким образом

На выходе имею такую картинку:


Что требуется - чтобы в отчет попали только две строчки выделенных красным по признаку, что ПроданоДверей >=ДверйОт И ПроданоДверей <ДверйДо

Если компоную все три запроса в один и пишу их последовательно, вручную указывая ЛЕВОЕ СОЕДИНЕНИЕ, тогда слетает правильная выборка по дате в СрезеПоследних в Бонусах. Добавить же искомое условие штатными средствами не могу.

Появилась идея добавить вычисляемое поле БонусЗаДень
ВЫБОР
  КОГДА
  ПроданоДверей >= ДверейОт И ПроданоДверей < ДверейДо
  ТОГДА
  Бонус
  ИНАЧЕ
  0
КОНЕЦ

и считать дальше уже по нему, но смотрится это довольно коряво: лишняя нагрузка на систему и все равно остаются в отчете лишние мешающие строчки.

Неужели нет более элегантного варианта?

Opty

Или может быть есть вариант как-то скрыть эти ненужные строки?

vitasw

Вам же уже неоднократно объясняли как настроить связь,"посылали" искать срез последних на каждую дату. Думаете советы с тех пор изменились?

Opty

vitasw, я вам очень благодарен за ваши советы, вы сильно помогли!
Благодаря вам и получилось то, что получилось. Но проблема в том, что никак не получается объединить две вещи в одной - выборку по количеству и срез последних по дате. По отдельности - всё прекрасно работает, а вместе - никак(

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск