ЗУП 3.1. Как получить данные графика работы сотрудника?
По теме из базы знаний
- Универсальные функции ЗУП 3.1 / ЗКГУ 3.1, которые помогут в разработке
- Пример создания кадрового отчета для ЗУП 3.1
- Перенос данных из ЗУП 2.5 в ЗУП 3.1
- Аналитический отчет по сверхурочным часам при суммированном учете рабочего времени для ЗУП 3.1
- Решения всех основных билетов для подготовки к Специалист ЗУП
Найденные решения
Достал из БСП
Функция ГрафикРаботы(ГрафикРаботы)
Понедельник = '20120514';
Дней = 0;
Выходные = Новый Массив;
Если ГрафикРаботы.СпособЗаполнения = Перечисления.СпособыЗаполненияГрафикаРаботы.ПоНеделям Тогда
Для Каждого СтрокаШаблонаЗаполнения Из ГрафикРаботы.ШаблонЗаполнения Цикл
Если СтрокаШаблонаЗаполнения.ДеньВключенВГрафик Тогда
Дней = Дней + 1;
Иначе
Выходные.Добавить(Формат(Понедельник + (СтрокаШаблонаЗаполнения.НомерСтроки - 1) * 86400, "ДФ=дддд"));
КонецЕсли;
КонецЦикла;
КонецЕсли;
Если Выходные.Количество() = 0 Тогда
Выходные.Добавить("без выходных");
КонецЕсли;
Возврат Новый Структура("Дней,Часов,Выходные", Дней, ГрафикРаботы.ДлительностьРабочейНедели, Выходные);
КонецФункции //ГрафикРаботы()
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) Если вам нужно знать сколько сотрудник должен был отработать и отдыхать по установленному для него графику (но далеко не факт что он именно столько отработал и отдыхал согласно его табеля) то как я понимаю нужно смотреть какой график ему назначен в регистре "График работы сотрудников" (например график1) после чего смотреть содержание этого графика в регистре "Графики работы по видам времени"
Достал из БСП
Функция ГрафикРаботы(ГрафикРаботы)
Понедельник = '20120514';
Дней = 0;
Выходные = Новый Массив;
Если ГрафикРаботы.СпособЗаполнения = Перечисления.СпособыЗаполненияГрафикаРаботы.ПоНеделям Тогда
Для Каждого СтрокаШаблонаЗаполнения Из ГрафикРаботы.ШаблонЗаполнения Цикл
Если СтрокаШаблонаЗаполнения.ДеньВключенВГрафик Тогда
Дней = Дней + 1;
Иначе
Выходные.Добавить(Формат(Понедельник + (СтрокаШаблонаЗаполнения.НомерСтроки - 1) * 86400, "ДФ=дддд"));
КонецЕсли;
КонецЦикла;
КонецЕсли;
Если Выходные.Количество() = 0 Тогда
Выходные.Добавить("без выходных");
КонецЕсли;
Возврат Новый Структура("Дней,Часов,Выходные", Дней, ГрафикРаботы.ДлительностьРабочейНедели, Выходные);
КонецФункции //ГрафикРаботы()
Показать
Внимание! Тема сдана в архив
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот