Настройка формулы в виде начисления

Вопрос задал Елена В. (Санкт-Петербург)

Ответственный за ответ: Змиевская Светлана (★9.93/10)

Здравствйте!
//ЗУП КОРП 3 1 10
Заработок сотрудника зависит от суммы продаж. Есть Оклад(пропорционально отработанному времени). Если он наторгует больше Оклада, то надо рассчитать разницу (Оклад — СуммаПродаж).
Настраиваю новый вид начисления «Заработок продавца»: Повременная оплата труда и надбавки; Ежемесячно; Формула .
Делаю Шаблон для ввода данных (копирую его из типового «Сдельные работы»).
Сотруднику назначаю два плановых начисления — «Оплата по окладу (по часам)» и «Заработок продавца».
По шаблону регистирую разные виды работ (их м.б. три-четыре) с суммами сотрудника.
Всё и не плохо. Однако выясняется, что если сотр работает в подразделении с РК и СН, тогда из значения показателя надо выкручивать эти надбавки.
Например, Оклад = 20т.р. Наторговал на 50т.р. РК=1,2. СН=30%.
В «Данные для расчета зарплаты» ввожу 50т.р.
Как настроить формулу вида начисления «Заработок продавца» что бы 50т.р. уменьшались на РК и СН?
Если такой фортель возможен, научите меня пожалуйста как это сделать.
Буду очень благодарна за науку!

Метки вопроса: —

Все комментарии (13)

  1. Здравствуйте, Елена!

    Скажите, я правильно понимаю, что в расчете Заработка продавца должны участвовать фактически начисленные суммы Оклада, РК и СН?

    Если так, то можно настроить формулу так: «МАКС(СдельныйЗаработок — РасчетнаяБаза,0)», а в расчетную базу включить оплату по окладу, РК и СН.

    В тексте вопроса Вы пропустили формулу начисления, поэтому я могу ошибаться по поводу показателя «Сдельный заработок», возможно у Вас используется другой показатель. По сути это сумма продаж.

  2. Здравствуйте, Светлана!
    У сотрудника два плановых начисления: «Оплата по окладу (по часам)» и то что я назвала «Заработок продавца» с формулой

  3. //вот ведь, формула опять в сообщени исчезла после отправки ( ? )// ну я скрин прикрепила

  4. если формулу менять, получается что то вроде циклической ссылки

    1. Я так понимаю, у Вас начисление «Бонусы и мотивация» входит в базу РК и СН. А при расчете бонусов исключить нужно РК и СН в полном размере (в т.ч. и начисленные с «Бонусов и мотиваций») или только, начисленные с оклада?

  5. Мотивации приходят из сторонней системы (как некая сумма) в док. «Данные для расчета зарплаты».
    В базу РК/СН входят оба плановых начислени сотра: и Оклад и (Мотивация -Оклад).
    Поэтому и хочется уменьшить сдельную оплату на РК/СН.

    1. Можно рассмотреть такие варианты:

      1. Можно применить, если у сотрудников кроме оклада и сдельной оплаты больше нет начислений входящих в базу РК и СН (премии, надбавки). Или если такие начисления есть, но РК и СН, начисленные с них, не нужно отнимать при расчете доплаты «Мотивация — Оклад». Этот метод предполагает учет РК и СН сразу в формуле:
      «МАКС((СдельныйЗаработок — Оклад*ВремяВчасах/НормаЧасов * (РайонныйКоэффициент + СевернаяНадбавка/100)),0)/(РайонныйКоэффициент + СевернаяНадбавка/100)»
      Формула получилась сложновата. По-хорошему в нее я бы еще включила проверку того, что РК и СН <>0, чтобы не получить ошибку деления на 0, если будут такие сотрудники, у которых нет РК и СН. Но пока не стала усложнять. Если решите выбрать этот метод, потестируйте ее пока в таком виде. Честно, на данных не проверяла, могла что-то упустить.

      2. Метод лучше подойдет, когда у сотрудников много начислений и РК и СН нужно учесть в полном размере (рассчитанный со всех этих начислений). Ну и сам метод наверное попроще в реализации, по крайней мере, формула. Нужно настроить отдельные начисления для РК и СН, рассчитываемых только с начисления «Бонусы и Мотивации» с назначением «Прочие начисления и выплаты» (т.к. типовые назначения программа задублировать не даст) и включить в базу этих дублей РК и СН только начисление «Бонусы и Мотивации», а из базы типовых начислений РК и СН «Бонусы и Мотивации» удалить. Это позволит нам использовать первоначально предложенную мной методику с расчетной базой. Формула только чуть изменится (чтобы учесть РК и СН с самого начисления, которое настраиваем). Формула будет выглядеть так:
      «МАКС(СдельныйЗаработок — РасчетнаяБаза,0)/(РайонныйКоэффициент + СевернаяНадбавка/100)»
      В расчетную базу включаем оклад и типовые РК и СН.

      Надеюсь, не очень сложно описала все. Сама читаю и понимаю, что трудновато вникнуть 🙂 Отпишитесь, пожалуйста, как потестируете.

  6. перед тем как Вам написать, я сдела такую формулу Макс((СдельныйЗаработок — (СдельныйЗаработок*(Макс(РайонныйКоэффициент, 1) — 1))- (СдельныйЗаработок * СевернаяНадбавка / 100) — (Оклад*ВремяВЧасах/НормаЧасов)),0)
    Но, она мне вернула 0
    Вчитаюсь в Вашу рекомендацию. Отпишусь

    1. Вы применяли РК и СН к исходной сумме сдельного заработка и отнимали эти значения и еще оклад просто от сдельного заработка, в результате всегда получалось отрицательное значение. А т.к. в формуле стоит проверка на отрицательное значение (макс(наша формула, 0)), то она возвращала 0.

  7. а вот такая сработала
    Макс(((СдельныйЗаработок/(1 + (Макс(РайонныйКоэффициент, 1) — 1)+ (СевернаяНадбавка / 100) )) — (Оклад*ВремяВЧасах/НормаЧасов)),0)
    РК и СН типовые.
    Правда, затрудняюсь проверить правильность расчета.
    Задумка была такая:
    Загружено значение показателя П (оно с РК и СН). А надо П_безРКСН
    Делаю уравнение П= П_безРКСН + (П_безРКСН * РК) + (П_безРКСН * СН).
    Тогда П_безРКСН = П / (1 + РК + СН)

    1. Доброе утро! Думаю, Ваша формула должна работать корректно, т.к. свою формулу я проверяла (не в программе, просто цифры подставляла) и она дала мне корректный результат. Свою формулу я тоже делала через уравнение (только составила его немного по-другому) и ее можно привести к Вашей.

      Я для себя сразу упростила конструкцию: 1 + (Макс(РайонныйКоэффициент, 1) — 1 = 1 + РайонныйКоэффициент — 1 = РайонныйКоэффициент. Чтобы не перегружать визуально формулу. Но в принципе проверка сравнением (МАКС) РК с 1 мне нравится, ее лучше оставить.

      Вот моя формула:
      «МАКС((СдельныйЗаработок — Оклад*ВремяВчасах/НормаЧасов * (РайонныйКоэффициент + СевернаяНадбавка/100)),0)/(РайонныйКоэффициент + СевернаяНадбавка/100)»

      выносим равнение МАКС на всю формулу, а не только на числитель
      «МАКС((СдельныйЗаработок — Оклад*ВремяВчасах/НормаЧасов * (РайонныйКоэффициент + СевернаяНадбавка/100))/(РайонныйКоэффициент + СевернаяНадбавка/100),0)»

      разделяем общую дробь на 2 (разделяем числители)
      «МАКС(СдельныйЗаработок/(РайонныйКоэффициент + СевернаяНадбавка/100)— (Оклад*ВремяВчасах/НормаЧасов * (РайонныйКоэффициент + СевернаяНадбавка/100))/(РайонныйКоэффициент + СевернаяНадбавка/100),0)»

      во 2й дроби сокращаем конструкцию (РайонныйКоэффициент + СевернаяНадбавка/100), т.к. она есть и в числителе и в знаменателе
      «МАКС(СдельныйЗаработок/(РайонныйКоэффициент + СевернаяНадбавка/100) — (Оклад*ВремяВчасах/НормаЧасов),0)»

      если заменим конструкцию с РК, о которой я писала, получим как раз Вашу формулу.

  8. Светлана, огромное спасибо!
    Математика победила. Три головы лучше одной (уравнение решал сын).
    Закрываем тему.

    1. ))))) Рада была помочь Вам!

Комментарии закрыты.