|
Вопрос про получение объекта | ☑ | ||
---|---|---|---|---|
0
Nenau
01.09.16
✎
10:13
|
Добрый день. Столкнулась с проблемой, не могу понять в чем дело.
Есть документ "Док1". В модуле объекта есть экспортная процедура "ОбработкаДокумента". Есть обработка, в ней команда. После выполнения некоторых действий, у меня есть массив документов. При выполнении такого кода вылетает ошибка, что метод "ОбработкаДокумента" не обнаружен: Для Каждого Док Из МассивДокументов Цикл ДокОбъект = Док.ПолучитьОбъект(); ДокОбъект.ОбработкаДокумента(); КонецЦикла; Если же сздать новый документ, то этот метод есть: ДокОбъект = Документы.Документ1.СоздатьДокумент(); ДокОбъект.ОбработкаДокумента(); Что я делаю не так? |
|||
1
Defender aka LINN
01.09.16
✎
10:15
|
(0) Какие ваши доказательства, что в МассивДокументов нет пустых ссылок?
|
|||
2
Nenau
01.09.16
✎
10:16
|
Клянусь!!)) Точно нету.
|
|||
3
Зая Бусечка
01.09.16
✎
10:17
|
Для Каждого Док Из МассивДокументов Цикл
ДокОбъект = Док.ПолучитьОбъект(); Если ДокОбъект <> Неопределено Тогда ДокОбъект.ОбработкаДокумента(); КонецЕсли; КонецЦикла; |
|||
4
Nenau
01.09.16
✎
10:18
|
Смотрела отладчиком, в двух случаях получается ДокументОбъект, только в одном случае он пустой (при создании), а в другом случае он заполнен.
|
|||
5
shadow_sw
01.09.16
✎
10:18
|
(2) уже в (3) даж проверку написали :)
|
|||
6
vicof
01.09.16
✎
10:19
|
(3) Ужс.
Для Каждого Док Из МассивДокументов Цикл Если ЗначениеЗаполнено(Док) Если ТипЗнч(ДокОбъект) = Тип("Документ.Док1") Тогда ДокОбъект.ОбработкаДокумента(); КонецЕсли; КонецЕсли; КонецЦикла; |
|||
7
vicof
01.09.16
✎
10:19
|
(6) + Тогда*
|
|||
8
Nenau
01.09.16
✎
10:24
|
(6) Сдлала как Вы посоветовали, проверила на тип ДокументОбъект.Док1, в условие зашло, та же ошибка.
Приложение управляемое. |
|||
9
vicof
01.09.16
✎
10:27
|
А на заполненность проверила?
|
|||
10
vicof
01.09.16
✎
10:28
|
Включи остановку по ошибке и посмотри, что там в твоем ДОк сидит
|
|||
11
Nenau
01.09.16
✎
10:30
|
(10) Делала уже так, сравнивала в отладчике ДокОбъект в случае получения объекта уже созданного и в случае создания нового, и в том и в том случае ДокументОбъект, только в одном случае он не заполнен (и процедура вызывается), а во втором случае он заполнен и пишет что метод не обнаружен.
|
|||
12
vicof
01.09.16
✎
10:32
|
(11) Не верю
|
|||
13
Nenau
01.09.16
✎
10:35
|
(12) Александр, я бы Вам обязательно доказала, если бы знала как :) скриншоты тут вставить ведь нельзя.
В одном случае ДокументОбъект.Док1, он записан, есть ссылка, во втором случае ДокументОбъект.Док1 только он не записан и все поля пусты. |
|||
14
vicof
01.09.16
✎
10:37
|
(13) На файлообменник залей, сюда ссылку
|
|||
15
Nenau
01.09.16
✎
10:41
|
||||
16
vicof
01.09.16
✎
10:51
|
Если (11) правда, тогда чисть кэш
|
|||
17
Nenau
01.09.16
✎
10:54
|
(16) Попробую ради интереса, а так перенесла свою процедуру в модуль менеджера.
Спасибо, Александр, за участие и помощь :) |
|||
18
Torquader
02.09.16
✎
00:11
|
Битые ссылки, это когда ссылка есть, а ДокСсылка.ПолучитьОбъект() возвращает НЕОПРЕДЕЛЕНО.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |