Имя: Пароль:
1C
1С v8
Вызов процедуры глобального общего модуля в управляемом приложение
0 Kaidend
 
21.03.14
18:36
Добрый день.
Не совсем пойму один момент, связанный с работой управляемого приложения.

Толстый клиент запущен в режиме управляемого приложения. Есть обработка, у обработки обычная форма назначена в качестве основой. Разрешено использование обычных форм в управляемом приложении.

Есть общий модуль со следующими флажками - глобальный, сервер, вызов сервера.

В форме обработки вызывается процедура из модуля обработки, а в модуле обработки вызывается процедура из этого глобального общего модуля.

При попытке открыть эту обработку в режиме Предприятия платформа сообщает, что процедура глобального общего модуля не обнаружена.

Почему так? Форма обработки - обычная, значит, выполнение процедуры модуля обработки происходит на клиенте. По идее, с клиента он должен иметь возможность вызвать эту процедуру в глобальном серверном общем модуле. Но он этого не делает почему-то. Если глобальный общий модуль сделать не глобальным и обратится к его процедуре ОбщийМодуль.ИмяПроцедуры, то все работает.

Вроде само по себе это неочевидно и в документации ничего найти не могу. Может, кто-нибудь подскажет, где в документации есть упоминание этого ограничения или объяснить его очевидность?
1 rozer76
 
21.03.14
20:22
"глобальники" - зло :) А вообще видимо в данном случае "вызов сервера" не срабатывает для глобальника и поэтому нельзя с клиента вызвать серверный контекст. Хотя не "капитан очевидность" ...
2 H A D G E H O G s
 
21.03.14
20:34
(0) нет. читаем сп.
3 H A D G E H O G s
 
21.03.14
20:41
Директивы компиляции

&НаКлиентеНаСервереБезКонтекста (&AtClientAtServerNoContext) — определяет процедуру (функцию), исполняемую в модуле формы на клиенте и на сервере, не имеющую доступа к контексту формы, данным формы, переменным, но имеющую доступ к процедурам и функциям общих модулей – серверных, не глобальных и серверных и клиентских одновременно. Сама процедура (функция) доступна для клиентский, серверных контекстных и неконтекстных процедур и функций модуля формы. Из серверных внеконтекстных методов формы допускается вызов серверных методов общих модулей;

но имеющую доступ к процедурам и функциям общих модулей – серверных, не глобальных и серверных и клиентских одновременно.

не глобальных


вот так вот
4 rozer76
 
21.03.14
21:00
(3) А нечего что "...Есть обработка, у обработки обычная форма..."
5 rozer76
 
21.03.14
21:02
хотя там еще... "В форме обработки вызывается процедура из модуля обработки, а в модуле обработки вызывается процедура из этого глобального общего модуля." ну все равно в этом случае с клиента вызов
6 H A D G E H O G s
 
21.03.14
21:07
(4) управляемое приложение.

УФ, ОФ - это дело десятое
7 H A D G E H O G s
 
21.03.14
21:13