Представления_ТаблицаРегистра_КадроваяИсторияСотрудников В ЗУП 3.1 не фильтрует по периоду
Привет всем!
В типовом отчете "Кадровая история сотрудников" в ЗУП 3.1 есть такой запрос с представлением:
Вопрос: по идее при указании дат периода в первом запросе мы настраиваем фильтр для представления и представление должно выдать движения из этого периода. Но оно так не работает! И это видно даже по тому, что они в последнем запросе в ГДЕ указали отбор по дате. Кто знает в чем прикол? Это баг или фича?
В типовом отчете "Кадровая история сотрудников" в ЗУП 3.1 есть такой запрос с представлением:
ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ
Сотрудники.Ссылка КАК Сотрудник,
&НачалоПериода КАК НачалоПериода,
&ОкончаниеПериода КАК ОкончаниеПериода
ПОМЕСТИТЬ ВТСотрудники
ИЗ
Справочник.Сотрудники КАК Сотрудники
{ГДЕ
Сотрудники.Ссылка.* КАК Сотрудник,
Сотрудники.Код КАК ТабельныйНомер,
Сотрудники.ФизическоеЛицо.*,
Сотрудники.ГоловнаяОрганизация.*,
Сотрудники.ТекущийПроцентСевернойНадбавки КАК ПроцентСевернойНадбавки,
Сотрудники.ФизическоеЛицо.Пол КАК Пол,
Сотрудники.ФизическоеЛицо.ДатаРождения КАК ДатаРождения,
Сотрудники.ФизическоеЛицо.ИНН КАК ИНН,
Сотрудники.ФизическоеЛицо.СтраховойНомерПФР КАК СтраховойНомерПФР,
Сотрудники.ФизическоеЛицо.МестоРождения КАК МестоРождения}
;
//////////////////////////////////////////////////////////// ////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
Сотрудники.Сотрудник КАК Сотрудник,
Сотрудники.НачалоПериода КАК ДатаНачала,
ДОБАВИТЬКДАТЕ(Сотрудники.ОкончаниеПериода, ДЕНЬ, 1) КАК ДатаОкончания
ПОМЕСТИТЬ ВТИзмеренияДатыДляНабораЗаписей
ИЗ
ВТСотрудники КАК Сотрудники
;
//////////////////////////////////////////////////////////// ////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
ДАТАВРЕМЯ(1, 1, 1) КАК Период,
ДАТАВРЕМЯ(1, 1, 1) КАК ПериодЗаписи,
ЗНАЧЕНИЕ(Справочник.Сотрудники.ПустаяСсылка) КАК Сотрудник,
ЗНАЧЕНИЕ(Документ.ПриемНаРаботу.ПустаяСсылка) КАК Регистратор,
ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка) КАК ГоловнаяОрганизация,
ЗНАЧЕНИЕ(Справочник.ФизическиеЛица.ПустаяСсылка) КАК ФизическоеЛицо,
ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка) КАК Организация,
ЗНАЧЕНИЕ(Справочник.ПодразделенияОрганизаций.ПустаяСсылка) КАК Подразделение,
ЗНАЧЕНИЕ(Перечисление.ВидыКадровыхСобытий.ПустаяСсылка) КАК ВидСобытия,
ЗНАЧЕНИЕ(Справочник.ШтатноеРасписание.ПустаяСсылка) КАК ДолжностьПоШтатномуРасписанию,
0 КАК КоличествоСтавок,
ЗНАЧЕНИЕ(Справочник.Должности.ПустаяСсылка) КАК Должность
ПОМЕСТИТЬ Представления_ТаблицаРегистра_КадроваяИсторияСотрудников
ИЗ
ВТИзмеренияДатыДляНабораЗаписей КАК ИзмеренияДатыДляНабораЗаписей
ГДЕ
"ТолькоРазрешенные" = ИСТИНА
И "ПараметрыПостроения_ВключатьЗаписиНаНачалоПериода" = ИСТИНА
И "ЛевоеЗначение" = "ЭтоГоловнойСотрудник"
И "ВидСравнения" = "="
И "ПравоеЗначение" = ИСТИНА
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
NULL,
NULL,
NULL,
ЗНАЧЕНИЕ(Документ.КадровыйПеревод.ПустаяСсылка),
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
NULL,
NULL,
NULL,
ЗНАЧЕНИЕ(Документ.Увольнение.ПустаяСсылка),
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL
;
//////////////////////////////////////////////////////////// ////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
КадроваяИсторияСотрудников.Период КАК Период,
КадроваяИсторияСотрудников.Регистратор КАК Регистратор,
КадроваяИсторияСотрудников.Сотрудник КАК Сотрудник,
КадроваяИсторияСотрудников.ГоловнаяОрганизация КАК ГоловнаяОрганизация,
КадроваяИсторияСотрудников.ФизическоеЛицо КАК ФизическоеЛицо,
КадроваяИсторияСотрудников.Организация КАК Организация,
КадроваяИсторияСотрудников.Подразделение КАК Подразделение,
КадроваяИсторияСотрудников.ВидСобытия КАК ВидСобытия,
КадроваяИсторияСотрудников.ДолжностьПоШтатномуРасписанию КАК ДолжностьПоШтатномуРасписанию,
СУММА(КадроваяИсторияСотрудников.КоличествоСтавок) КАК КоличествоСтавок,
КадроваяИсторияСотрудников.Должность КАК Должность,
СУММА(1) КАК Количество
ПОМЕСТИТЬ ВТВсяКадроваяИстория
ИЗ
Представления_ТаблицаРегистра_КадроваяИсторияСотрудников КАК КадроваяИсторияСотрудников
ГДЕ
НАЧАЛОПЕРИОДА(КадроваяИсторияСотрудников.Период, ДЕНЬ) = &НачалоПериода
И (&ТолькоСобытияТекущегоПериода = ЛОЖЬ
ИЛИ ВЫБОР
КОГДА КадроваяИсторияСотрудников.ВидСобытия = ЗНАЧЕНИЕ(Перечисление.ВидыКадровыхСобытий.Увольнение)
ТОГДА ДОБАВИТЬКДАТЕ(КадроваяИсторияСотрудников.ПериодЗаписи, ДЕНЬ, -1)
ИНАЧЕ КадроваяИсторияСотрудников.ПериодЗаписи
КОНЕЦ >= &НачалоПериода)
И НЕ КадроваяИсторияСотрудников.ВидСобытия В (ЗНАЧЕНИЕ(Перечисление.ВидыКадровыхСобытий.НеподтвержденныеДанные))
СГРУППИРОВАТЬ ПО
КадроваяИсторияСотрудников.Период,
КадроваяИсторияСотрудников.Регистратор,
КадроваяИсторияСотрудников.Сотрудник,
КадроваяИсторияСотрудников.ГоловнаяОрганизация,
КадроваяИсторияСотрудников.ФизическоеЛицо,
КадроваяИсторияСотрудников.Организация,
КадроваяИсторияСотрудников.Подразделение,
КадроваяИсторияСотрудников.ВидСобытия,
КадроваяИсторияСотрудников.ДолжностьПоШтатномуРасписанию,
КадроваяИсторияСотрудников.Должность
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
ВЫБОР
КОГДА КадроваяИсторияСотрудников.ВидСобытия = ЗНАЧЕНИЕ(Перечисление.ВидыКадровыхСобытий.Увольнение)
ТОГДА ДОБАВИТЬКДАТЕ(КадроваяИсторияСотрудников.Период, ДЕНЬ, -1)
ИНАЧЕ КадроваяИсторияСотрудников.Период
КОНЕЦ,
КадроваяИсторияСотрудников.Регистратор,
КадроваяИсторияСотрудников.Сотрудник,
КадроваяИсторияСотрудников.ГоловнаяОрганизация,
КадроваяИсторияСотрудников.ФизическоеЛицо,
КадроваяИсторияСотрудников.Организация,
КадроваяИсторияСотрудников.Подразделение,
КадроваяИсторияСотрудников.ВидСобытия,
КадроваяИсторияСотрудников.ДолжностьПоШтатномуРасписанию,
СУММА(КадроваяИсторияСотрудников.КоличествоСтавок),
КадроваяИсторияСотрудников.Должность,
СУММА(1)
ИЗ
Представления_ТаблицаРегистра_КадроваяИсторияСотрудников КАК КадроваяИсторияСотрудников
ГДЕ
НАЧАЛОПЕРИОДА(КадроваяИсторияСотрудников.Период, ДЕНЬ) > &НачалоПериода
И (НАЧАЛОПЕРИОДА(КадроваяИсторияСотрудников.Период, ДЕНЬ) <= &ОкончаниеПериода
ИЛИ КадроваяИсторияСотрудников.ВидСобытия = ЗНАЧЕНИЕ(Перечисление.ВидыКадровыхСобытий.Увольнение))
И НЕ КадроваяИсторияСотрудников.ВидСобытия В (ЗНАЧЕНИЕ(Перечисление.ВидыКадровыхСобытий.НеподтвержденныеДанные))
СГРУППИРОВАТЬ ПО
КадроваяИсторияСотрудников.Регистратор,
КадроваяИсторияСотрудников.Сотрудник,
КадроваяИсторияСотрудников.ГоловнаяОрганизация,
КадроваяИсторияСотрудников.ФизическоеЛицо,
КадроваяИсторияСотрудников.Организация,
КадроваяИсторияСотрудников.Подразделение,
КадроваяИсторияСотрудников.ВидСобытия,
КадроваяИсторияСотрудников.ДолжностьПоШтатномуРасписанию,
КадроваяИсторияСотрудников.Должность,
ВЫБОР
КОГДА КадроваяИсторияСотрудников.ВидСобытия = ЗНАЧЕНИЕ(Перечисление.ВидыКадровыхСобытий.Увольнение)
ТОГДА ДОБАВИТЬКДАТЕ(КадроваяИсторияСотрудников.Период, ДЕНЬ, -1)
ИНАЧЕ КадроваяИсторияСотрудников.Период
КОНЕЦ
;
ПоказатьВопрос: по идее при указании дат периода в первом запросе мы настраиваем фильтр для представления и представление должно выдать движения из этого периода. Но оно так не работает! И это видно даже по тому, что они в последнем запросе в ГДЕ указали отбор по дате. Кто знает в чем прикол? Это баг или фича?
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот