Имя: Пароль:
1C
1С v8
Внешние обработки 1С 8
0 kanalex
 
15.09.14
12:13
Доброго дня!

Странный глюк происходит в одной из баз БП:(
Есть внешняя обработка заполнения ТЧ. Все работало. Однако, с некоторых пор стали поступать жалобы, что при попытке вызова этой обработки пользователь получает сообщение об ошибке:

Значение не является значением объектного типа (Открыть)

Лезем в отладчик и видим, что кусок кода в процедуре Инициализировать(...) внешней обработки
<CODE>
    Форма = ПолучитьФорму();
    Форма.Открыть();
</CODE>
почему-то по-разному отрабатывает для разных пользователей.
Права пользователей тут не причем:(
У двух пользователей с одинаковыми полными правами - у одного отрабатывает, у другого нет.

В файловом варианте работает.
При удалении из базы всех пользователей тоже.
Как только добавляем в базу пользователей, получаем глюк:(

Куда копать? Кто-нибудь с таким сталкивался?
1 kanalex
 
15.09.14
12:15
Платформа на данный момент последняя. 8.3.5.1119
В предыдущей версии то же самое было. Обновление не помогло
2 kanalex
 
15.09.14
12:18
корректировка кода

Форма = ЭтотОбъект.ПолучитьФорму();

не спасает

Под одним пользователем Форма получается, под другим значение остается Неопределено:(
3 kanalex
 
15.09.14
12:22
Интересно, что запуск Мобильных инструментов разработчика под такими пользователями так же вызывает ошибку:(
Они не запускаются
4 kanalex
 
15.09.14
13:20
спасло только такое:(

    Форма = ЭтотОбъект.ПолучитьФорму();
    Если Форма = Неопределено Тогда
        Форма = ВнешниеОбработки.ПолучитьФорму(ЭтотОбъект.ИспользуемоеИмяФайла);
    КонецЕсли;
      Форма.Открыть();

но как-то оно не правильно...
5 Легат
 
15.09.14
13:23
Интересно, а  ОткрытьФорму() то же самое будет?
6 Nenaviwu1c20
 
15.09.14
13:30
(5) Там имя формы нужно указывать будет
7 kosts
 
15.09.14
13:34
Может как-то влияет, какие-то настройки, что программа не может определить тип клиента "Управляемый/обычный" и ищет управляемую форму, но не находит...
8 kanalex
 
15.09.14
13:35
чистил настройки пользователей.... не помогло
9 kanalex
 
15.09.14
13:35
такое ощущение, что это какой-то глюк платформы
10 Azverin
 
15.09.14
13:42
(9) то неловкое ощущение, когда ощущение является правдой)
11 Легат
 
15.09.14
13:45
Если в типовой конфе такие вещи - тут понятно. А в во внешней, это наверное ,сложно предъявить..
12 Легат
 
15.09.14
13:46
Выглядит как то так "Смотрите, я написал вещи, а она не работает" :)
13 kanalex
 
15.09.14
13:47
оно работало раньше.
Сложно сказать с какой версии платформы перестало работать, но так оно есть...
14 kanalex
 
15.09.14
14:26
в 8.2.19 работает
проверено...
15 kanalex
 
16.09.14
14:07
кроме того, остаются не инициализированными параметры процедуры
Инициализировать(ОбъектПриемник,ИмяТабличнойЧасти,ТабличноеПолеОбъекта)

т.ч. далее, в форме обратиться просто не к чему:(

Опять же проверено на релизах 8.2 - все работает.
На 8.3 не работает.

Отписал в 1С.... ждем реакции...
16 боксер
 
16.09.14
14:16
про кешь почисть было?
17 боксер
 
16.09.14
14:21
(15)а ну отладчиком проверь, обработку не из документа вызови(подправь), имя формы в параметр добавь, или модальный вызов
18 kanalex
 
16.09.14
14:59
(16) кэш чистился. не помогло.
(17) мне надо из документа. В отладчике смотрелось, естественно. Вся беда в том, что если удалить всех пользователей из базы и выполнить обработку, то все отрабатывает.
Добавляем пользователя с полными правами и пытаемся выполнить под ним - фиг....
19 kanalex
 
24.09.14
09:24
(0)
Накатили платформу, выпущенную вчера, и все заработало.
Косяк платформы 8.3.5...
Независимо от того, куда вы едете — это в гору и против ветра!