Перво-наперво надо убедиться, что ЗУП поддерживает расчет квартальных премий. Проверяем: Функции для технического специалиста - обработка "Начальная настройка программы" - смотрим на картинку.
Появится Начисление: Премия за квартал (процентом) ПРКП. Заходим в него и ставим Расчетная база=Текущий квартал
Также появится Показатель - Процент квартальной премии
Создать самим 2 показателя (настройки на скриншотах) :
Показатель - Норма дней в квартале
Показатель - Отработано дней в квартале
Подключаем расширение стандартным способом и в разделе Дополнительно находим документ "Квартальная премия"
Критика приветствуется, все-таки я делаю первые шаги в ЗУП )
Написано на платформе 1С:Предприятие 8.3 (8.3.18.1520) под конфигурацию Зарплата и управление персоналом, редакция 3.1 (3.1.22.86), но уверен, будет работать и на более высоких.
Код модуля Объекта
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
// Проведение документа
ПроведениеСервер.ПодготовитьНаборыЗаписейКРегистрацииДвижений(ЭтотОбъект);
ЗаписатьЗначенияПоказателейРасчетаЗарплаты(Движения, Отказ);
КонецПроцедуры
Процедура ЗаписатьЗначенияПоказателейРасчетаЗарплаты(Движения, Отказ)
ЗначенияПоказателей = Новый ТаблицаЗначений;
ЗначенияПоказателей.Колонки.Добавить("ПериодДействия", Новый ОписаниеТипов("Дата"));
ЗначенияПоказателей.Колонки.Добавить("Сотрудник", Новый ОписаниеТипов("СправочникСсылка.Сотрудники"));
ЗначенияПоказателей.Колонки.Добавить("Показатель", Новый ОписаниеТипов("СправочникСсылка.ПоказателиРасчетаЗарплаты"));
ЗначенияПоказателей.Колонки.Добавить("Значение", Новый ОписаниеТипов("Число"));
ПериодДействия = НачалоМесяца(КонецКвартала(Дата));
Для каждого СтрокаТЧ Из СписокСотрудников Цикл
НоваяСтрока = ЗначенияПоказателей.Добавить();
НоваяСтрока.ПериодДействия = ПериодДействия;
НоваяСтрока.Сотрудник = СтрокаТЧ.Сотрудник;
НоваяСтрока.Показатель = Справочники.ПоказателиРасчетаЗарплаты.НайтиПоНаименованию("Процент квартальной премии");
НоваяСтрока.Значение = СтрокаТЧ.ПроцентКвартальнойПремии;
НоваяСтрока = ЗначенияПоказателей.Добавить();
НоваяСтрока.ПериодДействия = ПериодДействия;
НоваяСтрока.Сотрудник = СтрокаТЧ.Сотрудник;
НоваяСтрока.Показатель = Справочники.ПоказателиРасчетаЗарплаты.НайтиПоНаименованию("Норма дней в квартале");
НоваяСтрока.Значение = СтрокаТЧ.НормаДнейВКвартале;
НоваяСтрока = ЗначенияПоказателей.Добавить();
НоваяСтрока.ПериодДействия = ПериодДействия;
НоваяСтрока.Сотрудник = СтрокаТЧ.Сотрудник;
НоваяСтрока.Показатель = Справочники.ПоказателиРасчетаЗарплаты.НайтиПоНаименованию("Отработано дней в квартале");
НоваяСтрока.Значение = СтрокаТЧ.ОтработаноДнейВКвартале;
КонецЦикла;
РасчетЗарплатыРасширенный.ЗарегистрироватьЗначенияРазовыхПоказателейСотрудников(Движения, Организация, ЗначенияПоказателей);
КонецПроцедуры