Доброго времени суток!
Есть такой отчет СКД, его запрос:
ВЫБРАТЬ
ГрафикиРаботыПоСменам.Дата,
ВложенныйЗапрос.Сотрудник,
ВложенныйЗапрос.ПодразделениеОрганизации КАК ПодразделениеОрганизации,
ВложенныйЗапрос.Должность,
ВредностьМолокоСрезПоследних.Количество
ИЗ
(ВЫБРАТЬ
РаботникиОрганизацийСрезПоследних.Сотрудник КАК Сотрудник,
РаботникиОрганизацийСрезПоследних.ГрафикРаботы КАК ГрафикРаботы,
РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния КАК ПричинаИзмененияСостояния,
РаботникиОрганизацийСрезПоследних.ПодразделениеОрганизации КАК ПодразделениеОрганизации,
РаботникиОрганизацийСрезПоследних.Должность КАК Должность,
РаботникиОрганизацийСрезПоследних.Период КАК ДатаПриема
ИЗ
РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ДатаОкончания, ) КАК РаботникиОрганизацийСрезПоследних) КАК ВложенныйЗапрос
ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГрафикиРаботыПоСменам КАК ГрафикиРаботыПоСменам
ПО ВложенныйЗапрос.ГрафикРаботы = ГрафикиРаботыПоСменам.ГрафикРаботы
ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ВредностьМолоко.СрезПоследних КАК ВредностьМолокоСрезПоследних
ПО ВложенныйЗапрос.ПодразделениеОрганизации = ВредностьМолокоСрезПоследних.ПодразделенияОрганизаций
И ВложенныйЗапрос.Должность = ВредностьМолокоСрезПоследних.ДолжностиОрганизаций
ГДЕ
ГрафикиРаботыПоСменам.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&ДатаОкончания, МЕСЯЦ) И &ДатаОкончания
И ВложенныйЗапрос.ПричинаИзмененияСостояния <> &ПричинаИзмененияСостояния
И ГрафикиРаботыПоСменам.Часы > 0
И ГрафикиРаботыПоСменам.Дата >= ВложенныйЗапрос.ДатаПриема
pablo @ Сегодня, 9:49 http://pro1c.org.ua/index.php?act=findpost&pid=110378
1. В отчет не должны выводиться данные по уволенным сотрудникам. то есть записи по уволенным должны отфильтровываться.
2. В отчет не должны выводиться значение подразделения по уволенным сотрудникам. При этом, если &ДатаОкончания больше даты увольнения, то подразделение должно быть заполненным.
3. Если Сотрудника уволили посреди месяца, в запросе должны отбираться записи только до даты увольнения. Оставшиеся записи по сменам должны быть с заполненной датой и реквизитами работника, но без молока (0 количество)
...
pablo @ Сегодня, 10:01 ,
3. Если Сотрудника уволили посреди месяца, в запросе должны отбираться записи только до даты увольнения. Оставшиеся записи по сменам должны быть с заполненной датой и реквизитами работника, но без молока (0 количество)
Видно что уже попили чай/кофе :-)
Делаете запрос А(подзапрос, временную таблицу, вложенный запрос, таблицу etc) в которую выбираете все даты месяца (или все рабочие даты месяца). К этому запросу через левое соединение добавляете запрос Б с данными о сотруднике и отдельно - запрос С с данными о молоке. В итоговом запросе для вывода ВредностьМолокоСрезПоследних.Количество используете функцию ЕстьNULL.
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua