Нарушения

Вопрос задал Ольга К. (Kazn)

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

Здравствуйте, помогите пожалуйста. В организации ведется отдельный документ «Нарушения» в программе 1С ЗУП свежих релизов. Дописанный соответственно. Где хранится информация «фио, период, вид нарушения….и виды (процент) штрафов за нарушение»: например 20 процентов от премии «А», 50 процентов от премии «В», 35 процентов от премии «С». Как можно связать эти показатели с разными видами оплат этих премий и начислить сотруднику. Допустим если указать в «шаблонах ввода исходных данных» показатель процент премии и изменить формулу премии с учетом этого показателя и сотруднику сделать плановое начисление-то это в программе я умею делать, а вот как сделать так, что бы этот процент цеплять еще за вид оплат (они разные все как проценты) — но в регистр эту общую информацию мы собираем.

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

  1. Здравствуйте!

    Скажите, я правильно понимаю, что в документе «Нарушения» у Вас фигурируют сами виды начислений (Премия А, Премия В и т.д.), а значение показателей премий (уменьшение % Премии А, уменьшение % Премии В и т.д.) Вам приходится вводить вручную и хотелось бы автоматизировать этот процесс. Все верно?

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

  2. Здравствуйте, правильно вы меня поняли, в документе «Нарушения» закладываем процент удержания с конкретных видов оплат.
    Табличная часть документа: сотрудник, период, процент удержания, вид оплат (с какого вида оплат удерживаем). Соответственно данные при проведении попадают в регистр нарушения.
    Делаем шаблон ввода исходных данных с двумя показателями: процент удержания и вид оплат, создаем обработку, которая заполнит наш документ из данных в регистре нарушения, фио, процент, вид оплат, останется как-то прописать формулу в видах оплат так, что бы 1С поняла какой процент схватить и прикрутить его к конкретному показателю конкретного вида оплат.
    Виды оплат фигурируют всегда разные, соответственно в каждом виде оплат свой процент (показатель). Нужно что б 1с поняла, что 50 процентов от премии А -это показатель премии А, 20 процентов от премии В -это показатель премии В и так далее.

    1. Формулу можно настроить по принципу «макс((Постоянный процент премии — Процент депремирования),0) / 100 * Расчетная база». Причем Процент депремирования будет свой для каждой премии: Процент депремирования А, Процент депремирования В и т.д.

      Я так понимаю, что дальше у Вас задача, как в обработке заполнения данных для расчета связать начисление Премия А с показателем Процент депрмирования А. Так? Мы конечно не программисты, но, на мой взгляд, тут придется решать не очень удобно и не очень явно. Программисты называют такие решения «костылями» 🙂

      Проблема в том, что показатели для начисления хранятся физически в табличной части начисления. Отюсда возникает вопрос, как именно выделить нужный показатель (Процент депремирования, а не сам процент премии или не расчетную базу). Какие могут быть варианты:
      1. поставить условия на запрос к табличной части, что нужны показатели не постоянный процент и не расчетная база. Или наоборот, что нужно выбрать показатель из списка и в тот список на этапе написания обработки сразу заложить все возможные показатели депремирования. Минусы — если состав премий и показателей депремирования поменяется, придется каждый раз допиливать обработку;
      2. ориентироваться на наименование показателя. Например, что оно содержит слово «депремирование» — тут риск, что пользователи поменяют наименование. Даже если обращаться к специальному наименовнанию показателя для разработчиков, которое на форме настроек показателя не редактируется — его все равно можно поменять через обработку группового изменения реквизитов. Если делаете на длительную перспективу — все-таки не очень надежный метод;
      3. предусмотреть свой доп. реквизит для начисления. Например «Показатель депремирования» и в нем указывать уже конкретный показатель депремирования (А, В и т.д.). Он будет у начисления 1, тогда можно будет написать в обработку запрос к этому доп. реквизиту начисления. Но тут тоже свои минусы:
      — нельзя в качестве значения доп. реквизита указать сам показатель. Придется создавать доп. значения и их как-то связывать с самими показателями в обработке.
      — пользователи, которые настраивают начисления, могут забывать указывать значение доп. реквизита. Или создавать начисление копирование и доп. реквизит будет такой же, что у исходного начисления. Если его не поменять, будут ошибки.

      В целом, если стараться делать универсально и «на века» лучше все же вернуться к документу «Нарушения» и изменить в нем значение колонки «вид оплаты»: вместо начисления указывать показатель. Тогда можно будет и записи регистров учета показателей даже прописать на основании этого документа. Данные для расчета зп вообще не потребуется создавать. Ну или даже если захотите создавать отдельный документ Данные для расчета зп — заполнить его будет уже не сложно.

      Если же требуется в движениях документа прописывать именно начисления и вводить в документе и начисление и показатель не хочется, то найти начисление по показатель будет значительно проще. Тут не возникнет такой проблемы, как при поиске показателей. Т.к. конкретному показателю будет соответствовать только 1 начисление (напомню, что основная проблема определения показателя по начислению в том, что для 1 начисления предусмотрено сразу несколько показателей и нужно как-то выбрать конкретный).

  3. спасибо большое за ответ, очень подробно и понятно, попробуем реализовать

    1. Пожалуйста 🙂

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