УТ 11.3.2. Оператор Выполнить в веб-клиенте не поддерживается

1. 576 10.01.17 16:26 Сейчас в теме
Имеется доработанная УТ 11.3.2. В журнале регистрации в серверном режиме есть такая ошибка:
Оператор Выполнить в веб-клиенте не поддерживается
Кто знает как исправить ее?

У нас такие вызовы встречается аж 65 раз. Как натравить "Вычислить" на процедуру?

Предлагали такое решение:
Я: Поиском найти все вызовы оператора Вычислить() и заменить их текстом процедур, которые передавались в виде параметра.
Н: Так Выполнить как раз и использовалась, что бы из вне формы вызвать любой неэкспортируемый формой метод. Ты предлагаешь отказаться от такого подхода и насовать в формы дополнительные методы для каждого случая?
Я: Да, создать экспортные методы для каждого случая.
Как пишут в документации:
"В режиме запуска веб-клиент оператор не поддерживается, при его вызове будет сгенерировано исключение."
Н: Не, ну так каждый может. Это решение означает переписать все неуниверсально. А очень не хочется неуниверсально переписывать. В конфигурации куча форм. И так эти процедуры во многие формы вставлены. А теперь их еще больше делать - не хочется очень.

Есть у кого еще идеи?
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. корум 285 10.01.17 16:57 Сейчас в теме
(1)
Есть у кого еще идеи?

просто вызвать сервер, а в нем - выполнить...
3. ZhokhovM 576 10.01.17 17:29 Сейчас в теме
(2)На сервере то проблемы нет. С клиентскими непонятно что делать.
4. корум 285 11.01.17 09:08 Сейчас в теме
(3) переписать на вызов сервера, например.
5. ZhokhovM 576 11.01.17 09:32 Сейчас в теме
(4)не, вы не поняли. как я перепишу на вызов сервера, если нужно вызвать клиентскую процедуру формы?
6. корум 285 11.01.17 11:14 Сейчас в теме
(5)
И так эти процедуры во многие формы вставлены.

вытащить код в общий модуль, например.

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

Лёгкого пути нет, серебряные пули кончились :(
7. ekaruk 5763 17.01.17 00:08 Сейчас в теме
(1) Никак.
Клиентский код, который выполняется в браузере, это по определению JavaScript.
Поэтому произвольный код там выполнить нельзя.
Ибо платформе нужно перевести 1С-ный код в JavaScript.
Только уходить на сервер и выполнять там.
8. marochkin 13 10.07.19 12:05 Сейчас в теме
Если сделать вызываемую процедуру экспортной, то можно так:

Оп = Новый ОписаниеОповещения(Процедура, ЭтаФорма, Элемент);
ВыполнитьОбработкуОповещения(Оп, Элемент);
Огонек; +1 Ответить
Оставьте свое сообщение
Вакансии
Программист, аналитик, эксперт 1С
Санкт-Петербург
По совместительству

Автор новостей об 1С, налогах и бухучете на INFOSTART.RU
Санкт-Петербург
По совместительству

Программист 1С
Екатеринбург
зарплата от 50 000 руб.
По совместительству

Ведущий разработчик 1С (техлид внутреннего учета)
Новосибирск
зарплата от 230 000 руб.
Полный день

Программист 1С
Рязань
зарплата от 150 000 руб. до 250 000 руб.
Полный день