Начисление оклада по табелю
После того, как вы разберетесь со счетчиками - все остальное будет несложным.
Здесь вы создадите расчет оклада по табелю. У каждого сотрудника есть оклад. Оклад выплачивается полностью, если в течении месяца сотрудник работал во все рабочие дни. Если сотрудник по тем или иным причинам не работал, то оклад уменьшается пропорционально отработанному времени.
Естественно, в реальной работе надо создавать еще виды зарплат, чтобы в систему попала информация по всему рабочему времени. Так, если сотрудник не работал из-за болезни, то должен быть вид зарплаты "Болезнь". Если сотрудник просто не работал , то должен быть вид зарплаты "Прогул". И т.п. но в данном совете рассмотрим только один вид зарплаты по табелю - оклад.
Как обычно, надо создать новый вид зарплаты и ставку для каждого сотрудника.
- Создайте вид зарплаты Оклад. Все параметры пусть остаются по умолчанию. Никаких галочек включать не нужно.
Главное меню \ Расчеты с персоналом \ Настройки \ Расчет \ Виды зарплаты
- Создайте ставку с кодом Оклад. Тип этой ставки - Сотрудник. Тип Значения - Число.
Главное меню \ Расчеты с персоналом \ Настройки \ Расчет \ Ставки
Теперь будем долго и упорно настраивать табели, но наши усилия будут вознаграждены.
- Создайте номерную серию зпТабель и укажите ее в параметрах модуля Управление Персоналом.
Главное меню \ Основное \ Настройки \ Серии документов \ Серии документов
Главное меню \ Расчеты с персоналом \ Настройки \ Параметры \ Номерные серии \ Личность
- В параметрах учета рабочего времени укажите режим учета по дням.
Главное меню \ Управление персоналом \ Учет рабочего времени \ Настройки \ Параметры
- Создайте основную форму оплаты с кодом Осн
Главное меню \ Расчеты с персоналом \ Учет рабочего времени \ Настройки \ Табель учета рабочего времени \ Формы оплаты

Добавте группу процедур расчета. Чтобы сохранить последовательность переименуйте название 2ой группу в "По табелю", и создайте новую группу с наименованием Прочее
Главное меню \ Расчеты с персоналом \ Настройки \ Расчет \ Группы процедур расчета
Что? Что за фигня с кодом? Я же просил не спрашивать... Ну, хорошо. Это оттого, что человек, который все это делал, очень любит программировать. Он стремился сделать хорошо. В целом, получилось интересно и очень остроумно. Если вы программист - обязательно посмотрите, там безусловно есть чему поучиться. Но если руководитель проекта и хотите уложиться в ваш бюджет, не повторяйте этого дома, не программируйте.

Исправьте в процедурах расчета код на группу процедур расчета. Пусть Премии так и считаются в первую очередь. Пусть процедура расчета RPayTbl, которая отвечает за работу с табелем, считаетеся во вторую очередь, а остальные в третью.
Главное меню \ Расчеты с персоналом \ Настройки \ Расчет \ Процедуры расчета
- Укажите название Оклад в справочнике времен для кода Time1. Укажите, что учитывать будем дни и часы. Внимание! на закладке разное установите последовательность! Пусть это будет 2ая последовательность (код процедуры RPayTabl)
Главное меню \ Расчеты с персоналом \ Учет рабочего времени \ Настройки \ Справочник времен
Что? Да, можно создавать новый, но код должен содержать только английские буквы и цифры. Пока вы обучаетесь, лучше не создавать здесь ничего нового (и не переименовывать существующее!). Если у вас нет лицензии на средства разработки и административного доступа к СУБД, то создавать здесь новые записи просто опасно для жизни. Почему? Отдельная и большая тема, из-за которой так мало статей по модулю Расчеты с персоналом. Я бы сказал, просто огромная тема... Если в двух словах - не программируйте!
- Создайте коды времен. Этот справочник для того, чтобы определить для каждого вида оплаты какие времена нужно вводить. Укажите для формы оплаты Осн и по группе времен Time1 краткое наименование Оклад.
Главное меню \ Расчеты с персоналом \ Учет рабочего времени \ Настройки \ Табель учета рабочего времени \ Коды времен

Создайте стандартный шаблон рабочего времени с кодом Осн. Укажите на закладках с понедельника по пятницу, что по группе времен Time1 (Это у нас оклад, не забыли?) сотрудники должны отработать 8 часов ежедневно с 10:00 по 18:00.
Главное меню \ Расчеты с персоналом \ Учет рабочего времени \ Календарь \ Стандартные шаблоны
- Теперь создайте сам календарь на основании шаблона. Зайдите в форму календарей. Создайте строчку, укажите тип календаря - 5 дней, Код календаря - Осн, Название - Основной, Шаблон - Осн.
Главное меню \ Расчеты с персоналом \ Учет рабочего времени \ Календарь \ Календари
- Создайте список рабочих дней в календаре. Для этого надо нажать на кнопку Расписания. В появившемся окне на кнопку Создание. Укажите с какой по какую дату вы хотите создать список. Для определенности, создадим список с 01.01.2004 по 31.12.2004.
- Укажите праздничные дни в календаре на закладке Праздники.
- Обратите внимание на количество часов и дней на закладке Времена. Именно это число считается нормативным.
- Теперь укажите у сотрудников форму оплаты и календарь.
Главное меню \ Расчеты с персоналом \ Карточка сотрудника \ Закладка Зарплата \ Группа полей Форма оплаты
Уф, табель настроили. Теперь ставка.

Зайдите в Процедуры расчета, установите курсор на процедуру RPayTbl, нажмите на кнопку Последовательности, чтобы перейти к последовательностям по данной процедуре. Создайте последовательность "Оклад по табелю"
Главное меню \ Расчеты с персоналом \ Настройки \ Процедуры расчета
- Нажмите на кнопку Счетчики. Создайте счетчик. Код счетчика - Оклад, Наименование - Оклад по Табелю, Вид зарплаты - Оклад.
- Введите алгоритм расчета счетчика. Предлагаю вам просто списать алгоритм со скриншота (щелкните на него, чтобы увидеть более подробно).
Кратко о назначении строк:
- Первая строка получает оклад для сотрудника из ставки сотрудника.
- Вторая строка умножает оклад на количество фактически отработанных часов.
- Третья строка делит полученное значение на количество нормативных часов.
Таким образом, алгоритм в счетчике следующий: Счетчик = Оклад * Факт-часы / Нормо-часы.
Ура-ура! Настройки закончены. Теперь осталось ввести данные в табель.

Создайте новую строку в журнале табелей. Укажите Подразделение Основное, форма оплаты - осн.
Главное меню \ Расчеты с персоналом \ Учет рабочего времени \ Журнал табелей
- Строки табеля можно вводить суммарно, а можно вводить информацию за каждый день. Введите строки табеля с типом Ежедневный учет при помощи кнопки Добавление строк.
Все, данный вид зарплаты начислен. Можно прямо в табеле нажать на кнопку Строки зарплаты, а можно открыть расчетный листок по каждому сотруднику и убедиться, что начисления уже выполнены. Посмотреть можно в запросе по сотруднику Главное меню \ Расчеты с персоналом \ Карточка сотрудника \ Кнопка Зарплата \ Оплаты и удержания или в отчете Главное меню \ Расчеты с персоналом \ Отчеты \ Листки зарплаты.
Буду рад Вашим замечаниям и предложениям.
mazzy@mazzy.ru, Мазуркин Сергей
Введение · Предварительные настройки · Премия суммой · Начисление по тарифу · Премия за большое количество выездов · Начисление оклада по табелю

