Здравствуйте. Имеет документ начисление премии(штрафа). В документе есть реквизит типа перечисление "ПериодОплаты" со значениями : -единовременно и ежемесячно.
При проведении документа со значением "единовременно" в отчете отображается сумма начисления, но со значением ежемесячно, данных нет.
При проведении документа со значением "единовременно" в отчете отображается сумма начисления, но со значением ежемесячно, данных нет.
//{{__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
// регистр НачисленныеШтрафыИПремии Приход
Движения.НачисленныеШтрафыИПремии.Записывать = Истина;
Для Каждого ТекСтрокаШтрафы Из Штрафы Цикл
//Движение = Движения.НачисленныеШтрафыИПремии.Добавить();
Если ТекСтрокаШтрафы.ШтрафИлиПремия = Перечисления.ШтрафИлиПремия.Надбавка Тогда
Если ТекСтрокаШтрафы.ПериодОплаты = ОбщегоНазначения.ПолучитьВидНачисления(2) Тогда
Для сч = 0 По ТекСтрокаШтрафы.ВыплатаВМесяц -1 Цикл
Движение = Движения.НачисленныеШтрафыИПремии.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
Движение.Период = ДобавитьМесяц(Дата,сч);
Движение.Сотрудник = ТекСтрокаШтрафы.Сотрудник;
Движение.Причина = ТекСтрокаШтрафы.Основание;
Движение.ВидДенежнойВыплаты = Перечисления.ШтрафИлиПремия.Надбавка;
Движение.ПроцентОтОбшейСуммы = ТекСтрокаШтрафы.Проценты;
КонецЦикла;
Иначе
Движение = Движения.НачисленныеШтрафыИПремии.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
Движение.Период = Дата;
Движение.Сотрудник = ТекСтрокаШтрафы.Сотрудник;
Движение.Причина = ТекСтрокаШтрафы.Основание;
Движение.ВидДенежнойВыплаты = Перечисления.ШтрафИлиПремия.Надбавка;
Движение.Сумма = ТекСтрокаШтрафы.Итог;
КонецЕсли;
ИначеЕсли ТекСтрокаШтрафы.ШтрафИлиПремия = Перечисления.ШтрафИлиПремия.Снижение Тогда
Если ТекСтрокаШтрафы.ПериодОплаты = ОбщегоНазначения.ПолучитьВидНачисления(2) Тогда
Для сч = 0 По ТекСтрокаШтрафы.ВыплатаВМесяц -1 Цикл
Движение = Движения.НачисленныеШтрафыИПремии.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.расход;
Движение.Период = ДобавитьМесяц(Дата,сч);
Движение.Сотрудник = ТекСтрокаШтрафы.Сотрудник;
Движение.Причина = ТекСтрокаШтрафы.Основание;
Движение.ВидДенежнойВыплаты = Перечисления.ШтрафИлиПремия.Снижение;
Движение.ПроцентОтОбшейСуммы = ТекСтрокаШтрафы.Проценты;
КонецЦикла;
Иначе
Движение = Движения.НачисленныеШтрафыИПремии.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
Движение.Период = Дата;
Движение.Сотрудник = ТекСтрокаШтрафы.Сотрудник;
Движение.Причина = ТекСтрокаШтрафы.Основание;
Движение.ВидДенежнойВыплаты = Перечисления.ШтрафИлиПремия.Снижение;
Движение.Сумма = ТекСтрокаШтрафы.Итог;
КонецЕсли;
КонецЕсли;
КонецЦикла;
//}}__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
ПоказатьПрикрепленные файлы:
По теме из базы знаний
- Как сдать экзамен 1С:Специалист по платформе?
- 7 капканов на правой стороне стола
- Расчет зарплаты в 1С:Управление торговлей 11
- Типичные ошибки при совершенствовании бизнес-процессов, или Почему автоматизация не всегда помогает достичь реальной эффективности
- Фишки нематериальной мотивации, которые работают в «Софт-Юнион»
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот