Есть документ начисление отпуска. Раньше все шло на один счет затрат выбранный в шапке документа! Но теперь бухгалтерия хочет распределять отпуск по разным счетам! Все получилось хорошо кроме одного но. А именно материальной помощи к отпуску. Он выполнен галочкой и суммой.
Фото документа приложил
ошибка;
Ошибка при выполнении обработчика - '{Документ.дНачислениеОтпускаРаботникамОрганизаций(1309)}: Поле объекта не обнаружено (СпособОтражения)'
по причине:
{Документ.дНачислениеОтпускаРаботникамОрганизаций(1309)}: Поле объекта не обнаружено (СпособОтражения)
Полный код процедуры
Фото документа приложил
Если ЗначениеЗаполнено(ВыборкаПоСтрокамДокумента.СпособОтражения) тогда
Движение.ОтражениеВУчете = ВыборкаПоСтрокамДокумента.СпособОтражения;
Иначе
Если ЗначениеЗаполнено(СпособОтражения) и ОбщегоНазначения.ЗначениеНеЗаполнено(ВыборкаПоСтрокамДокумента.ВидРасчета.СпособОтраженияВБухучете) Тогда
Движение.ОтражениеВУчете = СпособОтражения;
КонецЕсли;
КонецЕсли;
ошибка;
Ошибка при выполнении обработчика - '{Документ.дНачислениеОтпускаРаботникамОрганизаций(1309)}: Поле объекта не обнаружено (СпособОтражения)'
по причине:
{Документ.дНачислениеОтпускаРаботникамОрганизаций(1309)}: Поле объекта не обнаружено (СпособОтражения)
Полный код процедуры
Процедура ДобавитьСтрокуОсновныхНачислений(ВыборкаПоШапкеДокумента, ВыборкаПоСтрокамДокумента, УчетнаяПолитикаПоПерсоналуОрганизации)
//Если ВыборкаПоШапкеДокумента.СуммированныйУчетРабочегоВремени = Истина Тогда
// ВидУчетаВремени = Перечисления.ВидыУчетаВремени.ПоЧасам;
//Иначе
ВидУчетаВремени = Перечисления.ВидыУчетаВремени.ПоДням;
//КонецЕсли;
Движение = Движения.ОсновныеНачисленияРаботниковОрганизаций.Добавить();
// Свойства
Движение.ПериодРегистрации = ВыборкаПоШапкеДокумента.ПериодРегистрации;
Движение.ПериодДействияНачало = ВыборкаПоСтрокамДокумента.ДатаНачала;
Движение.ПериодДействияКонец = ВыборкаПоСтрокамДокумента.ДатаОкончания;
Движение.ВидРасчета = ВыборкаПоСтрокамДокумента.ВидРасчета;
Если ОтзывИзОтпуска Тогда
Движение.Сторно = Истина;
Иначе
Движение.Сторно = Ложь;
КонецЕсли;
// Измерения
Движение.ФизЛицо = ВыборкаПоШапкеДокумента.ФизЛицо;
Если УчетнаяПолитикаПоПерсоналуОрганизации[Организация].ПоддержкаВнутреннегоСовместительства Тогда
Движение.Приказ = ВыборкаПоШапкеДокумента.Приказ;
КонецЕсли;
Движение.Организация = Организация;
Движение.ГруппаСотрудников = ВыборкаПоШапкеДокумента.ГруппаСотрудников;
// Ресурсы
Движение.Результат = ВыборкаПоСтрокамДокумента.Результат;
// ресурсы по норме времени
//Если ВыборкаПоСтрокамДокумента.ЗачетНормыВремени Тогда
// Движение.НормаДней = ВыборкаПоСтрокамДокумента.НормаДней;
// Движение.НормаЧасов = ВыборкаПоСтрокамДокумента.НормаЧасов;
// Движение.НормаДнейПоПятидневке = ВыборкаПоСтрокамДокумента.НормаДнейПоПятидневке;
//КонецЕсли;
// ресурсы по отработанному времени
//Если ВыборкаПоСтрокамДокумента.ЗачетОтработанногоВремени Тогда
Движение.ОтработаноДней = ВыборкаПоСтрокамДокумента.ОтработаноДней;
Движение.ОтработаноЧасов = ВыборкаПоСтрокамДокумента.ОтработаноЧасов;
Движение.ОплачиватьЧасов = ВыборкаПоСтрокамДокумента.ОтработаноДней;
// Движение.ОтработаноДнейПоПятидневке = ВыборкаПоСтрокамДокумента.ОтработаноДнейПоПятидневке;
//КонецЕсли;
// Реквизиты
Движение.ПодразделениеОрганизации = ВыборкаПоШапкеДокумента.ПодразделениеОрганизации;
Движение.ОбособленноеПодразделение = Организация;
Движение.Размер = ВыборкаПоСтрокамДокумента.Размер;
//Движение.ДополнительныеДанные = ВыборкаПоСтрокамДокумента.ДополнительныеДанные;
Движение.ГрафикРаботы = ВыборкаПоСтрокамДокумента.ГрафикРаботы;
Движение.ВидУчетаВремени = ВидУчетаВремени;
//Движение.ПериодРасчетаСреднегоЗаработкаНачало = ВыборкаПоСтрокамДокумента.ПериодРасчетаСреднегоЗаработкаНачало;
//Движение.ПериодРасчетаСреднегоЗаработкаОкончание= ВыборкаПоСтрокамДокумента.ПериодРасчетаСреднегоЗаработкаОкончание;
Если ЗначениеЗаполнено(ВыборкаПоСтрокамДокумента.СпособОтражения) тогда
Движение.ОтражениеВУчете = ВыборкаПоСтрокамДокумента.СпособОтражения;
Иначе
Если ЗначениеЗаполнено(СпособОтражения) и ОбщегоНазначения.ЗначениеНеЗаполнено(ВыборкаПоСтрокамДокумента.ВидРасчета.СпособОтраженияВБухучете) Тогда
Движение.ОтражениеВУчете = СпособОтражения;
КонецЕсли;
КонецЕсли;
Движение.ДатаНачалаСобытия = ПолучитьДатуНачалаСобытия();
Движение.Авторасчет = Истина;//ВыборкаПоСтрокамДокумента.Авторасчет;
КонецПроцедуры // ДобавитьСтрокуОсновныхНачислений
ПоказатьПрикрепленные файлы:
По теме из базы знаний
- Хранилище конфигурации: создание и использование
- Не спеша, эффективно и правильно – путь разработки. Часть 2. Теория
- Не спеша, эффективно и правильно – путь разработки. Часть 3. Практика
- Как поставить качество кода на поток и при этом не разориться? Какие шаги стоит сделать уже завтра, чтобы повысить планку качества?
- Как ускорить перенос изменений между хранилищами 1С?
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) Ваш код непонятен
Где вы присвоили "СпособОтражения"?
Где вы присвоили "СпособОтражения"?
Если ЗначениеЗаполнено(ВыборкаПоСтрокамДокумента.СпособОтражения) тогда
Движение.ОтражениеВУчете = ВыборкаПоСтрокамДокумента.СпособОтражения;
Иначе
Если ЗначениеЗаполнено(СпособОтражения) и ОбщегоНазначения.ЗначениеНеЗаполнено(ВыборкаПоСтрокамДокумента.ВидРасчета.СпособОтраженияВБухучете) Тогда
Движение.ОтражениеВУчете = СпособОтражения;
КонецЕсли;
КонецЕсли;
У вас ошибка не в вашей добавленной галочки а в том что вы ссылаетесь на поле в котором нету.
ВыборкаПоСтрокамДокумента.СпособОтражения???. В отладке ставьте ВыборкаПоСтрокамДокумента там есть поле СпособОтражения????
ВыборкаПоСтрокамДокумента.СпособОтражения???. В отладке ставьте ВыборкаПоСтрокамДокумента там есть поле СпособОтражения????
(4) но ошибка именно на поле СпособОтражения
Ошибка при выполнении обработчика - '{Документ.дНачислениеОтпускаРаботникамОрганизаций(1309)}: Поле объекта не обнаружено (СпособОтражения)'
по причине:
{Документ.дНачислениеОтпускаРаботникамОрганизаций(1309)}: Поле объекта не обнаружено (СпособОтражения)
по причине:
{Документ.дНачислениеОтпускаРаботникамОрганизаций(1309)}: Поле объекта не обнаружено (СпособОтражения)
(7) Правиль ли я понимаю когда ставите галочку МатПомощь то дополнительно вызываете процедуру ДобавитьСтрокуОсновныхНачислений? Просто смотря на код у вас про матпомощь ни одного кода не написано, и сложно понять почему ошибка. Ошибка простая - нет поля способотражения. Не могу понять в каком именно месте в коде ошибка
(9) хорошо а что вы тогда добавляете для 4 раза в качестве параметров в процедуру ДобавитьСтрокуОсновныхНачислений(ВыборкаПоШапкеДокумента, ВыборкаПоСтрокамДокумента, УчетнаяПолитикаПоПерсоналуОрганизации)
ВыборкаПоШапкеДокумента - какое значение передаете в качестве параметра для 4 раза?
ВыборкаПоСтрокамДокумента - какое значение передаете в качестве параметра для 4 раза ?
ВыборкаПоШапкеДокумента - какое значение передаете в качестве параметра для 4 раза?
ВыборкаПоСтрокамДокумента - какое значение передаете в качестве параметра для 4 раза ?
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот