Как пропустить или обойти эту ошибку

1. RALik_Minsk 18.04.19 12:02 Сейчас в теме
Есть документ начисление отпуска. Раньше все шло на один счет затрат выбранный в шапке документа! Но теперь бухгалтерия хочет распределять отпуск по разным счетам! Все получилось хорошо кроме одного но. А именно материальной помощи к отпуску. Он выполнен галочкой и суммой.
Фото документа приложил
Если ЗначениеЗаполнено(ВыборкаПоСтрокамДокумента.СпособОтражения) тогда
		Движение.ОтражениеВУчете		= ВыборкаПоСтрокамДокумента.СпособОтражения;
		Иначе
			Если ЗначениеЗаполнено(СпособОтражения) и ОбщегоНазначения.ЗначениеНеЗаполнено(ВыборкаПоСтрокамДокумента.ВидРасчета.СпособОтраженияВБухучете) Тогда
				Движение.ОтражениеВУчете		= СпособОтражения;
			КонецЕсли;
	КонецЕсли;

ошибка;
Ошибка при выполнении обработчика - '{Документ.дНачислениеОтпускаРаботникамОрганизаций(1309)}: Поле объекта не обнаружено (СпособОтражения)'
по причине:
{Документ.дНачислениеОтпускаРаботникамОрганизаций(1309)}: Поле объекта не обнаружено (СпособОтражения)

Полный код процедуры
Процедура ДобавитьСтрокуОсновныхНачислений(ВыборкаПоШапкеДокумента, ВыборкаПоСтрокамДокумента, УчетнаяПолитикаПоПерсоналуОрганизации)
	
	//Если ВыборкаПоШапкеДокумента.СуммированныйУчетРабочегоВремени = Истина  Тогда
	//	ВидУчетаВремени = Перечисления.ВидыУчетаВремени.ПоЧасам;
	//Иначе
		ВидУчетаВремени = Перечисления.ВидыУчетаВремени.ПоДням;
	//КонецЕсли;
	
	Движение = Движения.ОсновныеНачисленияРаботниковОрганизаций.Добавить();

	// Свойства
	Движение.ПериодРегистрации          = ВыборкаПоШапкеДокумента.ПериодРегистрации;
	Движение.ПериодДействияНачало       = ВыборкаПоСтрокамДокумента.ДатаНачала;
	Движение.ПериодДействияКонец 	    = ВыборкаПоСтрокамДокумента.ДатаОкончания;
	Движение.ВидРасчета				    = ВыборкаПоСтрокамДокумента.ВидРасчета;
	Если ОтзывИзОтпуска Тогда 
		Движение.Сторно						= Истина;
	Иначе
		Движение.Сторно						= Ложь;
	КонецЕсли;
	
	// Измерения
	Движение.ФизЛицо                    = ВыборкаПоШапкеДокумента.ФизЛицо;
	Если УчетнаяПолитикаПоПерсоналуОрганизации[Организация].ПоддержкаВнутреннегоСовместительства Тогда
		Движение.Приказ						= ВыборкаПоШапкеДокумента.Приказ;
	КонецЕсли;
	Движение.Организация				= Организация;
	Движение.ГруппаСотрудников			= ВыборкаПоШапкеДокумента.ГруппаСотрудников;

	// Ресурсы
	Движение.Результат					= ВыборкаПоСтрокамДокумента.Результат;
	
	// ресурсы по норме времени
	//Если ВыборкаПоСтрокамДокумента.ЗачетНормыВремени Тогда
	//	Движение.НормаДней 					= ВыборкаПоСтрокамДокумента.НормаДней;
	//	Движение.НормаЧасов 				= ВыборкаПоСтрокамДокумента.НормаЧасов;
	//	Движение.НормаДнейПоПятидневке 		= ВыборкаПоСтрокамДокумента.НормаДнейПоПятидневке;
	//КонецЕсли;

	// ресурсы по отработанному времени
	//Если ВыборкаПоСтрокамДокумента.ЗачетОтработанногоВремени Тогда
		Движение.ОтработаноДней 			= ВыборкаПоСтрокамДокумента.ОтработаноДней;
		Движение.ОтработаноЧасов 			= ВыборкаПоСтрокамДокумента.ОтработаноЧасов;
		Движение.ОплачиватьЧасов 			= ВыборкаПоСтрокамДокумента.ОтработаноДней;
	//	Движение.ОтработаноДнейПоПятидневке = ВыборкаПоСтрокамДокумента.ОтработаноДнейПоПятидневке;
	//КонецЕсли; 
	
	// Реквизиты
	Движение.ПодразделениеОрганизации	= ВыборкаПоШапкеДокумента.ПодразделениеОрганизации;
	Движение.ОбособленноеПодразделение	= Организация;
	Движение.Размер						= ВыборкаПоСтрокамДокумента.Размер;
	//Движение.ДополнительныеДанные  	    = ВыборкаПоСтрокамДокумента.ДополнительныеДанные;
	Движение.ГрафикРаботы				= ВыборкаПоСтрокамДокумента.ГрафикРаботы;
	Движение.ВидУчетаВремени 			= ВидУчетаВремени;
	//Движение.ПериодРасчетаСреднегоЗаработкаНачало	= ВыборкаПоСтрокамДокумента.ПериодРасчетаСреднегоЗаработкаНачало;
	//Движение.ПериодРасчетаСреднегоЗаработкаОкончание= ВыборкаПоСтрокамДокумента.ПериодРасчетаСреднегоЗаработкаОкончание;
	Если ЗначениеЗаполнено(ВыборкаПоСтрокамДокумента.СпособОтражения) тогда
		Движение.ОтражениеВУчете		= ВыборкаПоСтрокамДокумента.СпособОтражения;
		Иначе
			Если ЗначениеЗаполнено(СпособОтражения) и ОбщегоНазначения.ЗначениеНеЗаполнено(ВыборкаПоСтрокамДокумента.ВидРасчета.СпособОтраженияВБухучете) Тогда
				Движение.ОтражениеВУчете		= СпособОтражения;
			КонецЕсли;
	КонецЕсли;
	
 	Движение.ДатаНачалаСобытия			= ПолучитьДатуНачалаСобытия();
	Движение.Авторасчет					= Истина;//ВыборкаПоСтрокамДокумента.Авторасчет;
	
КонецПроцедуры // ДобавитьСтрокуОсновныхНачислений
Показать
Прикрепленные файлы:
+
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
15. DrZombi 290 19.04.19 09:27 Сейчас в теме
(1) Ваш код непонятен

Где вы присвоили "СпособОтражения"?


Если ЗначениеЗаполнено(ВыборкаПоСтрокамДокумента.СпособОтражения) тогда
        Движение.ОтражениеВУчете        = ВыборкаПоСтрокамДокумента.СпособОтражения;
        Иначе
            Если ЗначениеЗаполнено(СпособОтражения) и ОбщегоНазначения.ЗначениеНеЗаполнено(ВыборкаПоСтрокамДокумента.ВидРасчета.СпособОтраженияВБухучете) Тогда
                Движение.ОтражениеВУчете        = СпособОтражения;
            КонецЕсли;
    КонецЕсли;
+
16. RALik_Minsk 19.04.19 10:05 Сейчас в теме
(15) Не здесь, а в другом месте. В этом коде шла обработка выбора какой СпособОтражения присвоить. Тот код не выкладывал только сточку в ответе написал
СтруктураПроведения.Вставить("СпособОтражения",);
А весь код наверно нет смысла выкладывать
+
2. maks_20 164 18.04.19 12:31 Сейчас в теме
Может реквизит объекта называется по-другому, а СпособОтражения - синоним? процедура проведения документа в модуле объекта или в отдельном модуле?
+
3. SedovSU@mail.ru 297 18.04.19 12:35 Сейчас в теме
У вас ошибка не в вашей добавленной галочки а в том что вы ссылаетесь на поле в котором нету.

ВыборкаПоСтрокамДокумента.СпособОтражения???. В отладке ставьте ВыборкаПоСтрокамДокумента там есть поле СпособОтражения????
+
4. ben19791010 18.04.19 12:39 Сейчас в теме
(3)
ВыборкаПоСтрокамДокумента
там то есть скорей всего, а вот мат пом то не в ТЧ и соотв там уже нету в доке
+
5. SedovSU@mail.ru 297 18.04.19 12:52 Сейчас в теме
(4) но ошибка именно на поле СпособОтражения

Ошибка при выполнении обработчика - '{Документ.дНачислениеОтпускаРаботникамОрганизаций(1309)}: Поле объекта не обнаружено (СпособОтражения)'
по причине:
{Документ.дНачислениеОтпускаРаботникамОрганизаций(1309)}: Поле объекта не обнаружено (СпособОтражения)
+
7. RALik_Minsk 18.04.19 14:06 Сейчас в теме
(3)Именно в мат.помощи этого поля нет поскольку добавить некуда(, а в обработке цикл добавления записей в регистр согласно т.ч. + если есть галочка то делается дополнительная запись по мат.помощи. Если галочку не ставить то все отрабатывает на ура.
+
8. SedovSU@mail.ru 297 18.04.19 14:19 Сейчас в теме
(7) Правиль ли я понимаю когда ставите галочку МатПомощь то дополнительно вызываете процедуру ДобавитьСтрокуОсновныхНачислений? Просто смотря на код у вас про матпомощь ни одного кода не написано, и сложно понять почему ошибка. Ошибка простая - нет поля способотражения. Не могу понять в каком именно месте в коде ошибка
+
9. RALik_Minsk 18.04.19 14:22 Сейчас в теме
(8)НЕт данная процедура общая но исходя из документа она отрабатывается 4 раза. Три из табличной части и четвертый раз по галочке.
+
11. SedovSU@mail.ru 297 18.04.19 14:28 Сейчас в теме
(9) хорошо а что вы тогда добавляете для 4 раза в качестве параметров в процедуру ДобавитьСтрокуОсновныхНачислений(ВыборкаПоШапкеДокумента, ВыборкаПоСтрокамДокумента, УчетнаяПолитикаПоПерсоналуОрганизации)

ВыборкаПоШапкеДокумента - какое значение передаете в качестве параметра для 4 раза?
ВыборкаПоСтрокамДокумента - какое значение передаете в качестве параметра для 4 раза ?
+
13. RALik_Minsk 18.04.19 14:40 Сейчас в теме
(11)Шапка одинаковая, а вот ВыборкаПоСтрокамДокумента разная все таки придется разбираться от куда и где формирует от эти строки и прописывать пустышку. Просто там так по написано что сам черт голову сломает
Прикрепленные файлы:
+
6. ben19791010 18.04.19 13:04 Сейчас в теме
скорей всего реквизит дока сп-б отраж, а реквизит тч подругому называется, хотя синоним совпадать может
+
10. RALik_Minsk 18.04.19 14:24 Сейчас в теме
Есть мысль глянуть как вообще формируется запись по мат.помощи и добавить там нужное мне поле (пустышку)
+
12. SedovSU@mail.ru 297 18.04.19 14:28 Сейчас в теме
(10) Как вариант для 4 раза не использовать эту процедуру а написать свой код добавления движения в данный регистр
+
14. RALik_Minsk 18.04.19 15:31 Сейчас в теме
Все! Всем спасибо нашел где формируется ВыборкаПоСтрокамДокумента и добавил пустой параметр СтруктураПроведения.Вставить("СпособОтражения",); но чувствую с нашими бухами придется мат.помощь делать чуть по другому))
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот