Имя: Пароль:
1C
 
При установке отбора в журнале не создается документ
0 prilforreal
 
12.12.17
15:03
Доброго дня волшебникам! Есть журнал - ДилЗаказ, если устанавливаю в нем отбор (любой отбор) при попытке создать документ выскакивает ошибка :
Ошибка при выполнении обработчика - 'ОбработкаЗаполнения'
по причине:
{Документ.ДилЗаказ.МодульОбъекта(316)}: Поле объекта не обнаружено (Ссылка)

Иду к 316 строке модуля документа, врезаемся в условие:

если ЗначениеЗаполнено(ДанныеЗаполнения) тогда
        ДокОснование = ДанныеЗаполнения.Ссылка;
    конецесли;

Но я же просто документ создаю, причем здесь основание? и как но привязано к отбору?
1 Happy Bear
 
12.12.17
15:06
У самописцев руки не оттуда растут)
2 Табуретко
 
12.12.17
15:09
(0) а при отключенном отборе значит создается без проблем?
3 prilforreal
 
12.12.17
15:13
(2) Так точно) к тому же закомментировал эти строки и все работает нормально)
(1) Писал это добро не я)
4 Табуретко
 
12.12.17
15:15
а теперь попробуй ввести этот док на основании...
5 prilforreal
 
12.12.17
15:17
(4) Не до конца корректно формируется, пропало поле выбора виновника..
6 prilforreal
 
12.12.17
15:18
(4) Чувствую ИСТИНА где то рядом...
7 tesseract
 
12.12.17
15:20
А что прилетает в саму процедуру? Возможно туда вместо документа попадает выбранная колонка из журнала. Из формы списка все нормально создается?
8 Fragster
 
гуру
12.12.17
15:21
(7) туда прилетает структура с отбором
9 Fragster
 
гуру
12.12.17
15:21
прав (1)
10 prilforreal
 
12.12.17
15:23
Из формы списка без отбора создается как надо, с отбором ошибка и почему он вообще пытается документ на основании создавать не ясно.
11 prilforreal
 
12.12.17
15:26
(8) Верно, в данных заполнения структура отбора
12 Табуретко
 
12.12.17
15:28
так попробуй...

Если Документы.ТипВсеСсылки().СодержитТип(ТипЗнч(ДанныеЗаполнения) Тогда
        ДокОснование = ДанныеЗаполнения.Ссылка;
    КонецЕсли;
13 perester
 
12.12.17
15:37
Оттуда данные заполнения? Отладчиком смотрите останавливается ли он там при создании без отбора, потом от ситуации
14 prilforreal
 
12.12.17
15:44
(12) Спасибо, с этим кодом все работает, также думал проверку типа значение сделать, только на структуру проверять)
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший