![]() |
![]() |
skrimer 01.10.2004 - 18:10 | Озадачили бухи, в связи с началом выплачивания по белому хотят узнать какие ставить оклады если известно сколько должен получить сотр наруки! |
Шрам 1 - 01.10.2004 - 18:11 | Украина? |
skrimer 2 - 01.10.2004 - 18:12 | Да |
RuS 3 - 01.10.2004 - 18:16 | В "ЗиК для Украины" есть готовый алгоритм. |
skrimer 4 - 01.10.2004 - 18:17 | где именно |
skrimer 5 - 01.10.2004 - 18:19 | Может наводку дашь? |
RuS 6 - 01.10.2004 - 18:21 | (5)Не так быстро, ищу же |
skrimer 7 - 01.10.2004 - 18:22 | Я подожду! |
ЖеняБУМ 8 - 01.10.2004 - 18:22 |
x- на руки. удержание1=х*процент1; ... удержаниеN=х*процентN х=удержание1+...+удержаниеN+наруки, а разве не так? |
RuS 9 - 01.10.2004 - 18:26 |
(5) 1. в док-те "Нач. и уд списком" есть галочка в закладке "Дополнительные" Выполнить расчет от обратного. 2. В параметрах назначения сотр. есть галочка "Оклад чистыми". |
Шрам 10 - 01.10.2004 - 18:38 |
ПределВыпл = МаксБазаПенс*(1-стФонды-стНДФЛ+стНДФЛ*стФонды); //стФонды - сумма всех отч. в фонды (по-моему 0.035) //стНДФЛ = 0.13 БелыйОклад = Сотрудник.Оклад.Получить(КонецПериода); Если БелыйОклад > ПределВыпл Тогда Оклад = БелыйОклад/(1-стНДФЛ)+МаксБазаПенс*стФонды; Иначе Оклад = БелыйОклад/((1-стНДФЛ)*(1-стФонды)); КонецЕсли; ВычНачислено(); РассчитатьСтроку(); //ошибку округления я попытался устранить так: Если Начислено = Оклад Тогда // имеет смысл только если нет других начислений Ошибка = КВыплате - Окр(БелыйОклад,2); Если Ошибка > 0 Тогда // необходимо уменьшить Оклад Оклад = Оклад - Ошибка*((1-стНДФЛ)*(1-стФонды)); ВычНачислено(); РассчитатьСтроку(); ИначеЕсли Ошибка < 0 Тогда // необходимо увеличить Оклад Оклад = Оклад + Ошибка*((1-стНДФЛ)*(1-стФонды)); ВычНачислено(); РассчитатьСтроку(); КонецЕсли; КонецЕсли; //Назначение Процедур ВычНачислено() и РассчитатьСтроку() надеюсь всем понятен //алгоритм работает только если оклад > 540 грн |
skrimer 11 - 01.10.2004 - 20:25 | Спасибо |