Расчет заработной платы

Терминология

Номинальный период начисления
Период, за который осуществляется начисление. Обычно, это - календарный месяц.

Актуальный период начисления
Для конкретного штатного назначения период работы может не совпадать с номинальным периодом начисления. Например, человек был принят на работу в течении месяца начисления, либо был уволен или переведен на другую должность в течении этого периода. Для того, чтобы отличать этот период от периода начисления, собственно, и введены понятия актуального и номинального периодов.

Проекция штатного календаря
Часто бывает необходимо сопоставить один штатный календарь с другим. Например, если сотрудник болел в течении 7 дней, а его рабочий график не включает воскресенье, то в действительности, он пропустил по болезни только 6 дней. Для правильного вычисления последней цифры необходимо наложить календарь болезни сотрудника на его регулярный штатный календарь. Такое наложение календарей называется проекцией календаря X на календарь Y.

Штатные начисления

Основным объектом, определяющим правила начислений заработной платы, является штатное начисление. Как правило, в базе данных определено множество штатных начислений так как схемы расчета заработной платы весьма сложны и включают целый ряд правил. Штатное начисление определяется следующими атрибутами:

  • Идентификатор
  • Символ
  • Наименование
  • Формула
  • Тип суммы для списания
  • Вид операции списания
  • Символ служит для идентификации вида начисления в формулах и при обмене данными. Формула - наиболее существенный атрибут вида начисления. Именно она определяет расчет суммы начисления. Тип суммы для списания используется при формировании документов, соответствующих начислению по этому виду. Вид операции списания задает вид документа, генерируемого при начислении по этому виду. Если последние два атрибута не определены, то документы по этому начислению формироваться не будут.

    Администрирование штатных начислений

    Список штатных начислений доступен через пункт меню Справочники→ Зарплата и кадры→ Штатные начисления.В этом списке доступны следующие команды:

    Редактировать
    Открывает диалог редактирования выбранной записи штатного начисления. Если пользователь имеет право на просмотр объекта Штатные начисления, но не имеет прав на редактирование, то диалог откроется с заблокированной кнопкой [ОК].

    Добавить
    Открывает диалог создания новой записи штатного начислений. Функция доступна при наличии у пользователя прав на создание объектов типа Штатные начисления.

    Добавить группу
    Открывает диалог редактирования новой группы штатных начислений. Функция доступна при наличии у пользователя прав на создание объектов типа Штатные начисления.

    Удалить
    Удаляет выбранную запись. Функция доступна только в том случае, если пользователь обладает правом на удаление записей объектов типа Штатные начисления.

    Передать Charry
    Формирует файл Charry по всем записям из списка. Эта функция полезна для переноса сконфигурированных данных из одной базы данных в другую.

    События
    Открывает таблицу просмотра системных событий по выбранной записи.
    Закрыть
    Закрывает диалог.

    Диалог редактирования записи штатного начислений

    Диалог редактирования штатного начисленийВнешний вид диалога показан на рис. link. Далее перечислены управляющие элементы диалога.

    Наименование
    Наименование начисления. Эта строка должна быть уникальна среди все записей.
    Символ
    Символьное обозначение штатного начисления, используемое в формулах и для ссылок на запись из внешних приложений.

    Эта строка должна быть односложной и уникальной среди всех записей справочника. Мы настоятельно рекомендуем использовать латинские символы для этого обозначения. Символ можно не указывать вовсе, однако при этом не удастся сослаться на данную запись из формул расчета заработной платы.

    ИД
    Справочное поле, отображающее идентификатор записи.

    Тип объекта для перечисления

    ▼Дополнительный параметр для перечисления

    ▼Тип суммы для списания

    ▼Вид операции списания

    ✓Списывать все начисления одним документом

    Формула

    [Выбор символа]

    Формула штатного начисления

    Специальные символы, используемые в формулах начисления

    sckName
    Вид начисления с символом Name.
    evName
    Вид персональной операции с символом Name
    samtName
    Тип штатной суммы с символом Name.
    amtName
    Тип суммы документов с символом Name.
    prLastMonth
    Последний календарный месяц до периода начисления.
    prLastQuart
    Последний календарный квартал до периода начисления.
    prLastYear
    Последний календарный год до периода начисления.
    prNextMonth
    Следующий за периодом начисления календарный месяц.
    prNextQuart
    Следующий за периодом начисления квартал.
    prNextYear
    Следующий за периодом начисления календарный год.
    prThisMonth
    Целый календарный месяц, соответствующий верхней границе номинального периода начисления. Например, если период начисления май 2009 года, то и prThisMonth будет равен 1/5/2009..31/5/2009.

    Если же период начисления - 2-й квартал 2009 года, то prThisMonth будет равен 1/6/2009..30/6/2009.

    prThisQuart
    С начала квартала до конца месяца, соответствующего номинальному периоду начисления.

    Например, если период начисления июнь 2009 года, то prThisQuart будет равен 1/3/2009..30/6/2009.

    prThisYear
    С начала года до конца месяца, соответствующего номинальному периоду начисления.

    Например, если период начисления июнь 2009 года, то prThisYear будет равен 1/1/2009..30/6/2009.

    prNominal
    Номинальный период начисления.

    prActual
    Актуальный период начисления.
    tagName
    Значение тега персоналии с символом Name.

    evName
    Вид персональной операции с символом Name. Например, evILL - вид персональной операции с символом ILL. Такие символы применяются в функциях, рассчитываемых по персональным событиям, например evcount.

    evdate
    Дата персонального события, по которому рассчитывается начисление. Эту переменную можно использовать только для видов начислений, которые имеют тип объекта для перечисления ○Персональные операции.

    evpairdate
    Дата персонального события, парного тому, по которому рассчитывается данное начисление. Если расчетное событие не имеет пары, то результатом подстановки этой переменной будет дата расчетного события. Эту переменную можно использовать только для видов начислений, которые имеют тип объекта для перечисления ○Персональные операции.

    Функции формулы начисления

    Следующие 6 функций аналогичны по смыслу символам с перфиксом pr (например, prLastMonth) с той разницей, что могут принимать в качестве аргумента дату, относительно которой и вычисляется период.

    LastMonth
    LastQuart

    LastYear
    NextMonth

    NextQuart
    NextYear

    ThisMonth
    ThisQuart

    ThisYear
    cday
    Количество дней в штатном календаре за период начисления.
    Параметры:
    Arg1
    Символ календаря, для которого рассчитывается количество дней.

    Arg2 (не обязательный)
    Символ календаря проекции. Если этому символу предшествует знак -, то вычисляется инверсия от проекции.
    Arg3 (не обязательный)
    Период, за который следует рассчитать количество дней штатного календаря.

    По умолчанию, это - актуальный период начисления.

    Предположим, мы имеем два типа календарей: фактически отработанные дни work и регулярный календарь (общий календарь рабочих дней) с символом reg. Далее, для определенности, положим, что в регулярном календаре следующие дни: 2, 3, 4, 5, 6, 9, 10, 11, 12, 13, 16, 17, 18, 19, 20, 24, 25, 28. Итого, 18 дней. Сотрудник фактически выходил на работу в следующие дни: 2, 3, 4, 5, 6, 9, 10, 11, 12, 13, 16, 17, 18, 19, 20, 23, 24, 25, 28. Итого, 19 дней.

    cday(work)

    количество дней в расчетном периоде по календарю work. Для нашего примера результат будет равен 19.

    cday(work, reg)

    количество дней в расчетном периоде по календарю work в проекции на календарь reg. Для нашего примера результат будет равен 18 (один день 23 числа сотрудник работал в выходной день, но так как этот день не входит в регулярный календарь функция его не учла).

    cday(work, -reg)

    количество дней в расчетном периоде по календарю work в инвертированной проекции на календарь reg. В случае с описанным примером результатом этой функции будет 1. То есть, один раз сотрудник выходил на работу в день, не учтенный в регулярном календаре.

    chour
    Количество часов в штатном календаре за период начисления.
    Параметры:
    Arg1
    Символ календаря, для которого рассчитывается количество часов.
    Arg2 (не обязательный)
    Символ календаря проекции. Если этому символу предшествует знак -, то вычисляется инверсия от проекции.
    Arg3 (не обязательный)
    Период, за который следует рассчитать количество дней штатного календаря.

    По умолчанию, это - актуальный период начисления.

    Эта функция ведет себя точно так же, как и cday с той лишь разницей, что считает она не дни, а часы.

    evcday
    Количество дней в штатном календаре, соответствующих персональным событиям вида, заданного первым аргументом функции.
    Параметры:
    Arg1
    Символ вида персональной операции.
    Arg2 (не обязательный)
    Символ календаря проекции. Если этому символу предшествует знак -, то вычисляется инверсия от проекции.

    Arg3 (не обязательный)
    Период, за который следует рассчитать количество дней штатного календаря. По умолчанию, это - актуальный период начисления.

    Метод вычисления величины может быть описан так: за период, заданный третьим аргументом, извлекаются все персональные события заданного вида по персоналии, которой соответствует штатное назначение. Для каждого события извлекаются записи штатных календарей, если таковые имеются. В случае, если эти записи имеют определенную дату и не содержат признака ✓Пропуск, дата календаря сопоставляется с календарем проекции (если задан) и результат суммируется с общей величиной, которая после окончания обработки и возвращается функцией.

    evchour
    Количество часов в штатном календаре, соответствующих персональным событиям вида, заданного первым аргументом функции. Эта функция полностью аналогична по параметрам и алгоритму расчета функции evcday, но подсчитывает не дни, а часы.

    evcount
    Количество персональных операций заданного вида, приходящихся на период, заданный параметром.
    Параметры:
    Arg1
    Символ вида персональной операции.
    Arg2 (не обязательный)
    Период, за который следует рассчитать количество дней штатного календаря.

    По умолчанию, это - номинальный период начисления.

    thisevcday
    Количество дней в календаре, соответствующем текущему событию, по которому осуществляется начислений.

    Функция применима только для видов начислений, которые имеют тип объекта для перечисления ○Персональные операции. В противном случае функция вернет 0. Параметры:

    Arg1 (не обязательный)
    Символ календаря проекции.

    thisevchour
    Количество часов в календаре, соответствующем текущему событию, по которому осуществляется начислений. Функция применима только для видов начислений, которые имеют тип объекта для перечисления ○Персональные операции. В противном случае функция вернет 0.

    Параметры:

    Arg1 (не обязательный)
    Символ календаря проекции.
    charge
    Сумма начисления.
    Параметры:
    Arg1
    Вид начисления.
    Arg2
    Период (если не задан, то за период начисления).
    avgcharge
    Средняя величина начисления.
    Параметры:
    Arg1
    Вид начисления.
    Arg2
    Период (если период не задан, то равно charge(Arg1)).
    bill
    Сумма по документам за заданный период.
    Параметры:
    Arg1
    Ид вида операции.
    Arg2
    Одно из следующих значений:
    0
    документы поднимаются по персоналии, как контрагенту документа.
    1
    документы поднимаются по персоналии, как дополнительному объекту документа.
    2
    документы поднимаются по персоналии, как агенту по документу.
    Arg3
    период (если не задан, то за период начисления).
    paym
    Сумма оплат за заданный период по документам.
    Параметры:
    Arg1
    Ид вида операции документов, к которым привязаны оплаты.
    Arg2
    Одно из следующих значений:
    0
    документы поднимаются по персоналии, как контрагенту документа.
    1
    документы поднимаются по персоналии, как дополнительному объекту документа.
    2
    документы поднимаются по персоналии, как агенту по документу.
    Arg3
    Период (если не задан, то за период начисления).

    sieve
    Функция “решето”. Возвращает значение, зависящее от того, в какой из определенных диапазонов попадает величина аргумента. Например: sieve[0; 20000?0.15; 40000?0.18](x)

    round
    Функция округления результата до ближайшего значения.
    Параметры:
    Arg1
    Округляемое значение.
    Arg2 (не обязательный)
    Точность округления в десятичных знаках после точки. Отрицательное значение этого параметра округляет значение до соответствующего десятичного знака перед точкой. Если этот параметр не задан, то осуществляется округление до целого.

    Допустим, значение, возвращаемое такой конструкцией charge(sckSalary) равно 21023.175. Тогда следующие варианты применения функции round дадут показанные справа результаты:

    round(charge(sckSalary))

    21023.00

    round(charge(sckSalary), 2)

    21023.18

    round(charge(sckSalary), 1)

    21023.20

    round(charge(sckSalary), -3)

    21000.0

    roundup
    Функция округления результата до верхнего значения.
    Параметры:
    Arg1
    Округляемое значение.
    Arg2 (не обязательный)
    Точность округления в десятичных знаках после точки. Отрицательное значение этого параметра округляет значение до соответствующего десятичного знака перед точкой. Если этот параметр не задан, то осуществляется округление до целого.
    rounddown
    Функция округления результата до нижнего значения.
    Параметры:
    Arg1
    Округляемое значение.
    Arg2 (не обязательный)
    Точность округления в десятичных знаках после точки. Отрицательное значение этого параметра округляет значение до соответствующего десятичного знака перед точкой. Если этот параметр не задан, то осуществляется округление до целого.

    Анализ штатных начислений

    Отчет анализа штатных начислений позволяет просмотреть и начисления, сформированные суммы начислений по расчету заработной платы.

    Для доступа к отчету необходимо выбрать пункт меню Кадры→ Анализ начисления зарплаты.

    Фильтр таблицы штатных начислений

    Фильтр анализа штатных начисленийВид фильтра показан на рис. link. Далее приводится описание управляющих элементов этого диалога.

    Период
    Период, за который следует вывести отчет. Обратите внимание на то, что при автоматическом начислении записи датируются днем начала периода начисления. Таким образом, начисления за январь все будут иметь дату 1 января.

    ▼Работодатель

    Комбо-бокс позволяющий отфильтровать отчет по организации-работодателю.

    В списке этого комбо-бокса отображаются персоналии, принадлежащие виду Работодатели.

    ▼Подразделение

    Здесь можно выбрать подразделение предприятия, по которому необходимо отобразить записи начислений.

    В списке этого комбо-бокса отображаются подразделения, относящиеся к работодателю, выбранному в соответствующем поле (см. выше). Если работодатель не выбран, то отобразятся все подразделения, занесенные в базу данных, не зависимо от того, к какому предприятию они относятся.

    ▼Штатная должность

    Выбор штатной должности приведет к тому, что будут показаны только те начисления, которые относятся к штатным назначениям, принадлежащим выбранной должности.

    ▼Назначение

    Позволяет отобрать только те начисления, которые относятся к выбранному штатному назначению.

    ▼Вид начисления

    Выбор конкретного вида начисления ограничит отчет начислениями, относящимися только к этому виду.

    Таблица штатных начислений

    Таблица штатных начислений

    Типичный вид таблицы анализа штатных начислений показан на рис. link.В таблице присутствуют следующие колонки:

    От
    Дата начала периода начисления.
    До
    Дата окончания периода начисления.
    Персоналия
    Наименование персоналии, которой соответствует начисленная сумма.
    Должность
    Должность персоналии, которой соответствует начисленная сумма.
    Вид начисления
    Вид начисления, с которым сопоставлена сумма в строке.
    Сумма
    Сумма начисления. Обратим внимание на то, что сумма начисление не обязательно может быть выражена в денежных единицах. Многие виды начислений рассчитываются как вспомогательные для использования в последующих расчетах (например, величина “Количество рабочих дней (норма)”, показанная на рисунке, выражена в днях).
    Документ списания
    Если для вида начисления задана операция списания и при расчете был сформирован документ списания, то в этой колонке отображается номер и дата этого документа.

    Действия в таблице штатных начислений

    Редактировать
    <Enter> Открывает диалог редактирования выбранного начисления.

    Так как большинство начислений формируется автоматически, не рекомендуется модифицировать записи вручную.

    Добавить
    <Insert> Позволяет создать запись штатного начисления вручную.

    Удалить
    <Delete> Позволяет удалить выбранную запись штатного начисления.
    Удалить всю выборку
    <Ctrl-F8> Удаляет все выборку записей, соответствующих фильтру. При выборе этой функции система выдает диалог строгого подтверждения.

    Персоналия
    <F2> Открывает диалог просмотра и редактирования персоналии, соответствующей выбранной записи штатного начисления.
    Штатная должность
    <F3> Открывает диалог просмотра и редактирования штатной должности, соответствующей текущей записи.

    Вид начисления
    <F4> Открывает диалог просмотра и редактирования записи вида начисления, по которому была сформирована текущая строка.
    Связанный документ
    <Ctrl-F3> Если выбранной строке соответствует документ списания, то эта функция открывает диалог редактирования такого документа.

    Начисление
    <F6> Вызывает процедуру автоматического формирования начислений. Параметры начисления будут отвечать условиям фильтрации текущей таблицы, однако, вы можете изменить эти параметры так, как считаете нужным.
    Печать
    <F7> Отправляет отчет на печать.

    Фильтр
    <Ctrl-V> Позволяет изменить параметры фильтрации отчета.