Есть мнение, что нужно реализовывать так:
1. Заводим график 15 минутками, то есть не по 1 записи на каждый день, а 32, в каждой по 0.25 (для 8-ми часового рабочего дня). Соответственно тип измерения "Дата"РС ГрафикиРаботы меняем на Дата, состав Дата+Время.
Делаете на форме реквизиты ВремяНачала и ВремяОкончания типа Дата, состав Время.
Вот модуль обработки Заполнение графика:
Процедура ЗаполнитьГрафик(ДатаНачала, ДатаОкончания, ВыходныеДни, Сотрудник, Подразделение, ВремяНачала, ВремяОкончания) Экспорт
Набор = РегистрыСведений.ГрафикиРаботы.СоздатьНаборЗаписей();
Набор.Отбор.Сотрудник.Установить(Сотрудник);
Набор.Отбор.Подразделение.Установить(Подразделение);
Набор.Прочитать();
Дат = ДатаНачала;
Пока Дат <= ДатаОкончания Цикл
Врем = дата(1,1,1)+ (Дат - НачалоДня(Дат));
Если Врем >=ВремяНачалаРаботы и Врем <= ВремяОкончанияРаботы Тогда
Запись = Набор.Добавить();
Запись.Дата = Дат;
Запись.Сотрудник = Сотрудник;
Запись.Подразделение = Подразделение;
Если Найти(ВыходныеДни, Строка(ДеньНедели(Дат))) Тогда
Запись.Значение = 0;
Иначе
Запись.Значение = 0.25;
КонецЕсли;
КонецЕсли;
Дат = Дат + 900;
КонецЦикла;
Набор.Записать();
КонецПроцедуры
2. ВР Оклад и ВР Опоздание оба в ПВР Основные начисления, у которого ПД. Опоздание вытесняет Оклад. Однако, тут подводный камень: ХЗ как правильно - должно ли Опоздание вытеснять Оклад или нет? По логике, ты получаешь как обычно, а потом из этого "обычно" вычитают штраф... Но! Это ж экзамен, надо продемонстрировать умение работать с вытеснением.. так что я на экзамене сделаю Опоздание вытесняющим
)
3. Соответственно, в документе НЗ тип реквизитов ДатаНачала и ДатаОкончания не просто Дата, а Дата+Время.
4. Вводите, скажем: Иванов, Оклад, с 01.01.2016 09:00:00 по 31.01.2016 23:59:59
5. Ну и Иванов, Опоздание, с 05.01.2016 09:00:00 по 05.01.2016 09:59:59
6. Дальше в Расчете считаете Оклад, ДанныеГрафика.ЗначениеФактическийПериодДействия, у вас там получится меньше, вытеснение будет Опозданием.
7. Ну и Опоздания тоже, ДанныеГрафика.ЗначениеФактическийПериодДействия, делите на 0.25, умножаете на 100 руб
P.S. Сам я этот алгоритм в бою не испробовал, так как сам первый раз иду сдаваться в эту пятницу...
Попалось на экзамене именно это условие, не смог его реализовать.
А что, за не реализацию всего лишь одного этого условия уже сразу несдача?