INFOSTART EVENT 2018 EDUCATION

Второй тур голосования за доклады.
Окончание 5 сентября.

Белозеров Дмитрий | Системный архитектор | LMSoft

«Кодогенерация и метагенерация в 1С»

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

Материальное стимулирование для ЗУП 3.0, ЗиКГУ 3.1

Обработки - Обработка документов

0
Обработка по расчету материального стимулирования сотрудникам за произвольный период в документе "Разовое начисление" с исключением нескольких видов начислений в ЗиКГУ 3.1.

Инструкция:

- Подключаем обработку через: "Администрирование" - "Печатные формы, отчеты и обработки" - "Дополнительные отчеты и обработки". В обработке уже прописал добавление команды в документ "Премия".

- Создаем начисление с названием например: Материальное стимулирование.

- Добавляем в начислении формулу на закладке "Основное" - "Редактировать формулу". Необходимо создать два показателя, только обязательно с точными названиями, так как в обработке сделал поиск по точному названию показателей. В поле наименование пишем точные названия (без точек):

Первый показатель: Норма дней произвольный период.

Второй показатель: Отработано дней произвольный период.

Идентификатор заполняется автоматом, так что можно оставить. Остальные поля заполняем по своему усмотрению и настройке.

В поле "Формула" добавляем например: Оклад *КолДолОклМатСтим* ОтработаноДнейПроизвольныйПериод / ?(НормаДнейПроизвольныйПериод = 0, 1, НормаДнейПроизвольныйПериод)

Здесь: ?(НормаДнейПроизвольныйПериод = 0, 1, НормаДнейПроизвольныйПериод) - сделано для того чтобы программа не ругалась на деление на ноль. Формула может быть своя, главное значения ОтработаноДнейВКвартале, НормаДнейВКвартале

 - КолДолОклМатСтим - показатель для примера расчета

- Сохраняем начисление, выбираем в документе "Разовое начисление" созданное начисление.

- Заполняем в шапке документа период, "Дата начала", "Дата окончания". Обработка берет период из этих полей.

- Добавляем в табличное поле сотрудника(ов).

- Для корректного расчета необходимо нажать на кнопку "Заполнить показатели" (смотрите рисунок 2) выбираем добавленные показатели (Норма дней произвольный период, Отработано дней произвольный период), заполняем значениями например "1", для КолДолОклМатСтим заполним например "2". Нажимаем "ОК". Так уж устроен алгоритм работы ЗикГУ, что пока не заполнишь эти показатели, то в таблице начислений заполнение происходит не будет через обработку.

- Сохраняем документ через кнопку "Записать объект" (ctrl+s)? для корректного расчета через обработку.

- Нажимаем нашу добавленную команду "Расчет материальное стимулирование".

- Выходит окошко с выбором варианта расчета сотрудников. В окошке сделан вариант по следующему принципу. Если выбраны несколько сотрудников (больше одного) через выделение отдельных строк cочетанием клавиш Ctrl + левая кнопка мыши), то в окошке расчета установится флажок "Выделенных сотрудников" (рисунок 3), если выбрана только одна строка или вообще не выделяли сотрудников по которым необходимо расчет, то установится флажок "Всех сотрудников" (рисунок 4). Соответственно если необходимо рассчитать только одного сотрудника, устанавливаем курсор на этой строке и жмем команду "Расчет материального стимулирования". Далее в окошке выбираем флажок "Выделенных сотрудников" и жмем "Рассчитать".

Происходит заполнение показателей: количества рабочих дней и количества отработанных дней по сотрудникам за произвольный период. Ну и сразу рассчитывает сумму материального стимулирования.

Вычитаются дни по следующим начислениям: Больничный, Больничный за счет работодателя, Дополнительный учебный отпуск (оплачиваемый), Дополнительный учебный отпуск (сохр. денежное содержание), Отпуск за свой счет, Оплата дней ухода за детьми-инвалидами (сохр. ден. содержание), Пособие по уходу за ребенком до полутора лет, Пособие по уходу за ребенком до трех лет, Отпуск по беременности и родам.

 

Протестировано: Зарплата и кадры государственного учреждения, редакция 3.1 ((3.1.6.6)), Зарплата и управление персоналом КОРП, редакция 3.1 (3.1.6.37) платформа: 1С:Предприятие 8.3 (8.3.10.2561).

0

Скачать файлы

Наименование Файл Версия Размер
Материальное стимулирование в ЗиКГУ 3.1:
.epf 10,76Kb
20.04.18
4
.epf 10,76Kb 4 Скачать

См. также

Сортировка: Древо
В этой теме еще нет сообщений.
Оставьте свое сообщение