gifts2017

Список сотрудников, работавших в подразделении организации в указанный период. ЗУП 2.5

Опубликовал Ваган Григорян (Vagan1972) в раздел Программирование - Универсальные функции

Запрос, позволяющий выбрать всех сотрудников подразделения, числившихся в нём в указанном периоде хотя бы день (с учётом временных кадровых перемещений).

Зачастую бывает необходимо получить список сотрудников, работавших в некоем подразделении в определённый период времени. Простые запросы к регистру "Сотрудники организаций.СрезПоследних" дают лишь сведения на определённый момент времени. Сопоставление срезов на начало периода и на конец периода не даёт сведений о сотрудниках, принятых в подразделение после начала периода и при этом ушедших из него до конца периода. И прочая, прочая...

Разные варианты запроса, лишённого этих недостатков, приведены в публикуемой обработке. Эти варианты выполнены в виде отдельных функций, которые вы можете вставлять в свои общие модули. Функции возвращают таблицы значений. Я специально сделал 6 разных функций с неразрывным текстом запроса, чтобы запрос можно было легко изменить в конструкторе под ваши нужды.

Небольшие пояснения.
1. Переключатель "Учитывать подчинённые подразделения" позволяет вам выбирать сотрудников либо из одного конкретного подразделения, либо из всей ветки подразделения и его подчинённых подразделений. Собственно, запросы отличаются лишь условием "Подразделение ВИерархии" или "Подразделение =".

2. Переключатель "Результат запроса" позволяет вам получить в итоге:
а) Наглядную таблицу всех, кто "отметился" в заданном подразделении за указанный период с разбивкой по периодам. С колонками "Сотрудник", "ДатаНачала", "ДатаОкончания", "ПодразделениеОрганизации", "Должность", "График работы" и "ЗанимаемыхСтавок" (ибо кадровое перемещение с изменением одного из этих параметров порождает строку в регистре "РаботникиОрганизаций"). Это для наглядности;
б) Только одну колонку "Сотрудник" с неповторяющимся списком сотрудников, работавших в этом подразделении хотя бы сутки. Можно затем выгрузить в массив или список значений, передать в другую процедуру и т.п.
в) Только одну колонку "Физлицо" с неповторяющимся списком физлиц, работавших в этом подразделении хотя бы сутки. Можно затем выгрузить в массив или список значений, передать в другую процедуру и т.п.

Проверены следующие возможные варианты кадровых перемещений сотрудников (курсивом выделены не попадающие в результат):

 1. Увольнение и приём
1.1. Сотрудник принят до начала отчётного периода и до сих пор без изменений работает в подразделении
1.2. Сотрудник принят в отчётном периоде и до сих пор без изменений работает в подразделении
1.3. Сотрудник принят до начала отчётного периода и уволен в середине отчётного периода
1.4. Сотрудник принят до начала отчётного периода и уволен после окончания отчётного периода
1.5. Сотрудник принят в середине отчётного периода и уволен в середине отчётного периода
1.6. Сотрудник принят после окончания отчётного периода и работает до сих пор
1.7. Сотрудник принят до начала отчётного периода и уволен до начала отчётного периода
1.8. Сотрудник принят после окончания отчётного периода и уволен после окончания рабочего периода

2. Временный перевод сотрудника ИЗ указанного подразделения
2.1. Сотрудник временно работал в другом подразделении до начала отчётного периода
2.2. Сотрудник временно ушёл в другое подразделение и вернулся оттуда в середине отчётного периода
2.3. Сотрудник временно работал в другом подразделении после окончания отчётного периода
2.4. Сотрудник временно ушёл в другое подразделение до начала периода и вернулся оттуда в середине отчётного периода
2.5. Сотрудник временно ушёл в другое подразделение в середине периода и вернулся оттуда после окончания периода
2.6. Сотрудник временно ушёл в другое подразделение до начала периода и вернулся оттуда после окончания периода

3. Временный перевод сотрудников других подразделений В указанное подразделение
3.1. Сотрудник другого подразделения временно пришёл в указанное подразделение и вернулся обратно до начала периода
3.2. Сотрудник из другого подразделения временно пришёл в указанное подразделение и ушёл из него в середине периода
3.3. Сотрудник другого подразделения временно пришёл в указанное подразделение и вернулся обратно после окончания периода
3.4. Сотрудник другого подразделения временно пришёл в указанное подразделение до начала периода и вернулся обратно в середине периода
3.5. Сотрудник другого подразделения временно пришёл в указанное подразделение в середине периода и вернулся обратно после окончания периода
3.6. Сотрудник другого подразделения временно пришёл в указанное подразделение до начала периода и вернулся обратно после окончания периода

4. Уход сотрудника указанного подразделения на постоянную работу в другое подразделение
4.1. Сотрудник ушёл до начала периода
4.2. Сотрудник ушёл в периоде
4.3. Сотрудник ушёл после окончания периода

5. Переход сотрудника другого подразделения на постоянную работу в указанное подразделение
5.1. Сотрудник пришёл в указанное подразделение до начала периода
5.2. Сотрудник пришёл в указанное подразделение в периоде
5.3. Сотрудник пришёл в указанное подразделение после окончания периода

6. Перевод на другую постоянную должность внутри указанного подразделения
6.1. Сотрудник сменил должность до начала периода
6.2. Сотрудник сменил должность в середине периода
6.3. Сотрудник сменил должность после окончания периода

7. Временный перевод на другую должность внутри указанного подразделения
7.1. Сотрудник сменил должность и вернулся на прежнюю до начала периода
7.2. Сотрудник сменил должность и вернулся на прежнюю в середине периода
7.3. Сотрудник сменил должность и вернулся на прежнюю после окончания периода
7.4. Сотрудник сменил должность до начала периода и вернулся на прежнюю в середине периода
7.5. Сотрудник сменил должность до начала периода и вернулся на прежнюю после окончания периода
7.6. Сотрудник сменил должность в середине периода и вернулся на прежнюю после окончания периода

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
СписокСотрудниковВПериоде_v1
.epf 14,33Kb
28.10.15
25
.epf 1 14,33Kb 25 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Галина Афанасьева (galyna) 07.06.16 15:52
Спасибо, отчет очень помог. Добавила разность дат между датой окончания и датой начала, посчитала дни работы в подразделении. При работе в данных подразделениях должен считаться северный стаж.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа