Поиск  Пользователи  Правила  Войти
RSS
ЗиК 277 - элементарно теряется оклад после двойного пересчета
 
Наконец-то смоделировала вашу ситуацию.
Кроме того что уже было обнаружено раньше,( принятие сотрудника задним числом и дальнейший пересчет),  есть такой глюк.
Вводя начисления з/платы  с указанием пересчета в целом за период, программа не отлавливает если за этот период вводились пересчеты по конкретному документу( отсюда и удвоение расчетов).
Так что или менять конфигурацию или, для подстраховки, не вводить пересчеты по конкретному документу, а пользоваться только пересчетами за период.
Мне в это плане ссудить сложно,насколько актуальна эта проблема,
так за все время что я работаю (а это все-таки довольно длительное время), пересчетами как-то не приходилось пользоваться.
Вы писали, что пересчеты законны (для правильного отражения налогов), но по-моему, если это недоработка(ошибка) отдела кадров- то какой может быть закон. В этом случае только пересчет в своем периоде и сдача уточненных деклараций.

И все-таки интересно, как эти ситуации отслеживаются в ЗУП .

P.S.  Жалко что нет ( и не планируется) учебной версии по ЗУП.
 
Вот теперь, в релизе 286, ошибка переначисления, описанная в этой ветке, оказалась исправленной.
 
Вот здорово нарвались на ошибку 1С, указанную в Вашем сообщении, и до сих пор не исправленную!

Короче, если (1) сотрудника приняли предыдущим месяцем (с полным пересчетом того месяца), затем (2) дали расчет за тот же месяц, например, Доплату за совмещение суммой (с пересчетом по документу), и потом (3) перепровели снова полный пересчет того месяца, то после пункта (3) вылезает повторная запись расчета, которая даст удвоение результата.

Ошибка, а скорее, недоработка и так перемудренного механизма начислений - в модуле документа для НачислениеЗаработнойПлаты.

Исправление занимает 23 строки, если заинтересует, могу выслать.
 
А может просто выложите здесь? Для всех, кто с этим столкнулся и еще столкнется.
 
"Хорошо. Проверяйте:

- в модуле документа для НачислениеЗаработнойПлаты найти строку

ЖурналРасчетовЗарплата.УстановитьРеквизит("НомерСтрокиДокумента",ТаблицаДействующихРасчетов.Строка);

и перед ней вставить следующие строки;

ПодчДок=СоздатьОбъект("Документ"); //=+//-2йРсч
Если ПодчДок.ВыбратьПодчиненныеДокументы(КТП,КТП,ДокументОсн)=1 Тогда //=+//-2йРсч
 НадоВыйти=0; //=+//-2йРсч
 Пока ПодчДок.ПолучитьДокумент()=1 Цикл //=+//-2йРсч
   Если ПодчДок.Вид()<>"НачислениеЗаработнойПлаты" Тогда //=+//-2йРсч
     Продолжить; //=+//-2йРсч
   КонецЕсли; //=+//-2йРсч
   Если ПодчДок.ПометкаУдаления()=1 Тогда //=+//-2йРсч
     Продолжить; //=+//-2йРсч
   КонецЕсли; //=+//-2йРсч
   Если ПодчДок.Проведен()=0 Тогда //=+//-2йРсч
     Продолжить; //=+//-2йРсч
   КонецЕсли; //=+//-2йРсч
   Если ПодчДок.СпособНачисленияЗарплаты<>2 Тогда //=+//-2йРсч
     Продолжить; //=+//-2йРсч
   КонецЕсли; //=+//-2йРсч
   НадоВыйти=1; //=+//-2йРсч
   Прервать; //=+//-2йРсч
 КонецЦикла; //=+//-2йРсч
 Если НадоВыйти=1 Тогда //=+//-2йРсч
   Продолжить; //=+//-2йРсч
 КонецЕсли; //=+//-2йРсч
КонецЕсли; //=+//-2йРсч

Комментарии лучше оставить, чтобы отличаться от оригинального 1С-овского текста.
"
Читают тему

Читайте нас: