Имя: Пароль:
1C
1С v8
ЗУП ошибка при вводе больничного
0 wms
 
18.06.21
11:03
Зарплата и управление персоналом КОРП, редакция 3.1 (3.1.18.46)  Патчи все установлены.
Платформа 8.3.18.1483
При вводе больничного в июне за 24-28 мая по сотруднику1 ошибка:

Значение не является значением объектного типа (ТребуютсяЗаПраздничныеДниПриОкончательномРасчете)
{Обработка.МенеджерРасчетаЗарплаты.МодульОбъекта(6901)}:    СтрокаФильтра.УчитыватьТолькоПраздничныеДни = ТребованияНачисления.ТребуютсяЗаПраздничныеДниПриОкончательномРасчете;


Ввожу такой же больничный по сотруднику2 и нет ошибки.

Отладчиком нахожу, что по сотруднику 2 находятся БазовыеНачисленияНормируемыеПоВремени
    СтруктураПоиска = Новый Структура("НеобходимоНормировать, НормироватьКаскадно", Истина, Ложь);
    БазовыеНачисленияНормируемыеПоВремени = ДанныеБазовыхНачислений.Записи.НайтиСтроки(СтруктураПоиска);

а по сотруднику1 БазовыеНачисленияНормируемыеПоВремени пустые. т.к. у него НеобходимоНормировать = Ложь

хотя 2 вида расчета одинаковые "Оплата по окладу в часах" и "Доплата за работу в праздничные и вых. дни"


Где возможна проблема?
1 wms
 
18.06.21
11:52
ошибка как я понял при пересчете начисленных за май начислений "Оплата по окладу в часах" и "Доплата за работу в праздничные и вых. дни"

Но, по сотруднику 2 тоже есть такие начисления в мае и нет ошибки
2 Фрэнки
 
18.06.21
13:05
(1) графики работы может как-то криво зацепились из-за вот этих "нерабочих рабочих" ?
3 BelikovS
 
30.06.21
11:30
Аналогичная ошибка. Я так понял проблема только в случае перерасчета начислений. Причем не всех. У меня это премия. А вот если был введен невыход - нормально. Я захватил в расширение метод обработки РасчетБазыНачисленийУдержаний.ТребованияНормируемыхПоВремениНачислений:
//При расчете больничного, который сторнирует записи начислений, может возникнуть ошибка в МенеджереРасчета: ТребованияНачисления.ТребуютсяЗаПраздничныеДниПриОкончательномРасчете
//Причина в том, что записи есть, а здесь по фильтру оказывается пусто. Что за фильтр, зачем и на что может повлиять - не знаю.
&ИзменениеИКонтроль("ТребованияНормируемыхПоВремениНачислений")
Функция Запл_ТребованияНормируемыхПоВремениНачислений()
    Если КэшТребованияНормируемыхПоВремениНачислений <> Неопределено Тогда
        Возврат КэшТребованияНормируемыхПоВремениНачислений;
    КонецЕсли;    

    СтруктураПоиска = Новый Структура("НеобходимоНормировать, НормироватьКаскадно", Истина, Ложь);
    #Вставка
    СтруктураПоиска.Удалить("НеобходимоНормировать");
    #КонецВставки
    БазовыеНачисленияНормируемыеПоВремени = ДанныеБазовыхНачислений.Записи.НайтиСтроки(СтруктураПоиска);

    ВидыРасчетаОтбор = ОбщегоНазначения.ВыгрузитьКолонку(БазовыеНачисленияНормируемыеПоВремени, "ВидРасчета");

    Если ДанныеВедущихЗаписейКаскадногоНормирования <> Неопределено Тогда
        ВидыРасчетаВедущихЗаписей = ОбщегоНазначения.ВыгрузитьКолонку(
        ДанныеВедущихЗаписейКаскадногоНормирования.Записи,
        "ВидРасчета");

        ОбщегоНазначенияКлиентСервер.ДополнитьМассив(ВидыРасчетаОтбор, ВидыРасчетаВедущихЗаписей, Истина);
    КонецЕсли;    

    КэшТребованияНормируемыхПоВремениНачислений = ПланыВидовРасчета.Начисления.ТребованияНачисленийТаблица(ВидыРасчетаОтбор);

    Возврат КэшТребованияНормируемыхПоВремениНачислений;
КонецФункции

Это помогло. Не знаю на сколько правильно, но пока так.
4 exitone
 
09.11.21
15:00
В ЗУП 3.1.18 при расчете Больничного листа и его загрузке, при проведении исправления Отпуска может возникать ошибка:

Значение не является значением объектного типа (ТребуютсяЗаПраздничныеДниПриОкончательномРасчете).

Это зарегистрированная в 1С ошибка 10232639.

Для ее обхода необходимо установить патч (исправление) — EF_10232639.
Программист всегда исправляет последнюю ошибку.