Групповое округление результата начислений 1С 8.2 ЗУП

Опубликовал Ольга (PatriziaRossi) в раздел Обработки - Обработка документов

На нашем предприятии главбух не особо любит начисления с копейками, поэтому настаивает на округлении всех начислений заработной платы до целых рублей, за исключением больничных листов. Так как штат сотрудников не маленький, ручное округление отнимает значительное время. Здесь нашла единственную обработку частично выполняющую необходимую функцию, немного подкорректировав данные, получила то что было необходимо. Быть может пригодится кому-либо.

Суть обработки:

 Допустим у работника установлен часовой тариф 82,240. Отработал он в текущем месяце 154 часа, 82,240*154=12664,96. Запустив обработку получим 12665. Все округления производятся по математическим правилам. 

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

В архиве предложены файлы для  округления оплаты по часовому тарифу и доплаты за ночные часы.

Создана на основе этой обработки http://infostart.ru/public/172259/

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

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

Наименование Файл Версия Размер
Округление начислений
.zip 5,75Kb
07.05.13
50
.zip 5,75Kb 50 Скачать

См. также

Добавить вознаграждение
Комментарии
1. Ruslan (rus128) 2 08.05.13 12:03 Сейчас в теме
Не уверен, что округление оплаты по почасовому тарифу корректно называть "округлением почасового тарифа" (как у вас на кнопке "Заполнить").
Наверное - первая обработка и первая публикация? :-)
2. Ольга (PatriziaRossi) 4 08.05.13 12:35 Сейчас в теме
(1) rus128, да, публикация первая, но много сторонних обработок доделывала под свои условия.
Кнопку "Округление почасового тарифа" можно переименовать, путем заполнения ячейки "Предоставление кнопки" при подключении обработки.
Да, такое наименование не совсем корректное, но так уж оно сформировалось ))
3. al petrov (petrov_al) 10 13.05.13 13:17 Сейчас в теме
А зачем, выплату можно также округлить типовым методом. А округлять начисление даже копеек как-то нехорошо, есть сотрудники которые за 10 округленных коп. сожрут с потрохами
4. Ольга (PatriziaRossi) 4 13.05.13 14:47 Сейчас в теме
(3) petrov_al, если округлять выплату, остается висят копеечные сальдо, которые не красят оборотную ведомость.
А округлять начисление даже копеек как-то нехорошо, есть сотрудники которые за 10 округленных коп. сожрут с потрохами

у нас ОП в маленьком провинциальном городке, зп начисляется удаленно. Поэтому мы лишены столь прекрасного общения с людьми :)
5. Евгений (tank219) 12.06.13 08:04 Сейчас в теме
Подскажите, как можно реализовать в типовой конфигурации (ЗУП 8.2) так. Чтоб начисления округлялись. Необходимо в виде расчета вносить изменения?
6. Евгений (tank219) 12.06.13 12:58 Сейчас в теме
вернее должны округляться по математическим правилам все значения в документе начисления зарплаты. по каждой строке отдельно. Кто может подсказать, кто это можно реализовать?
7. Ольга (PatriziaRossi) 4 21.06.13 16:55 Сейчас в теме
(6) tank219, какие именно начисления? оклады по дням и часам?
8. Евгений (tank219) 21.06.13 17:02 Сейчас в теме
оклады по дням, северная надбавка. районный коэффициент (каждый из расчетов должен округляться отдельно)
9. Ольга (PatriziaRossi) 4 21.06.13 17:44 Сейчас в теме
(8) tank219, значит на каждый вид начисления делается своя обработка ТЧ.
В модуле обработки меняете вид расчета.
Для оклада по дня заменяете строки в модуле на
ОбрабатываемыеВидыРасчетов = Новый Массив;
	ОбрабатываемыеВидыРасчетов.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.ОкладПоДням);
	
	Для Каждого СтрокаТЧ Из ТабЧасть Цикл
		
		Если ОбрабатываемыеВидыРасчетов.Найти(СтрокаТЧ.ВидРасчета) = Неопределено Тогда
			Продолжить;
		КонецЕсли; 
		
		СтарыйПоказатель1		= СтрокаТЧ.Показатель1;
		СтарыйРезультат			= СтрокаТЧ.Результат;		
		НовыйПоказатель1		= Окр(СтарыйПоказатель1, 2);
		НовыйРезультат			= Окр(СтарыйРезультат);
...Показать Скрыть


Для других начислений делаем все аналогично окладу
10. Евгений (tank219) 21.06.13 17:49 Сейчас в теме
Спасибо, а как для других ВР внести изменения? (северная над. и РК)
11. Ольга (PatriziaRossi) 4 21.06.13 17:54 Сейчас в теме
в строке кода
ОбрабатываемыеВидыРасчетов = Новый Массив;
   ОбрабатываемыеВидыРасчетов.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.ОкладПоДням);

вместо ОкладПоДням, укажите СевернаяНадбавка и РайонныйКоэффициент соответственно. пробуйте, все должно получиться.
Оклад округляет верно - проверила на своей базе, а вот про коэффициенты точно не скажу - я не использую эти начисления.
12. Евгений (tank219) 22.06.13 01:12 Сейчас в теме
(11) PatriziaRossi, Спасибо, попробую и отпишусь о результатах