Имя: Пароль:
1C
1С v8
Перевод 8.0-8.2 Как выполнить интерактивную процедуру из модуля объекта?
,
0 Puzoter
 
17.01.19
13:53
В модуле документа в экспортной процедуре (вызывается из формы) используется процедура Состояние(). Как при переводе из 8.0 на 8.2  переделать вызов этой процедуры с минимальными изменениями?
1 mistеr
 
17.01.19
13:56
Процедура Состояние() в 8.2 никуда не делась.
2 Puzoter
 
17.01.19
13:59
(1) Надо, чтобы внешнее соединение не ругалось
3 Puzoter
 
17.01.19
14:01
Из формы должно нормально работать, я тут ошибся.
4 mistеr
 
17.01.19
14:05
(2) Из внешнего и 8.0 будет ругаться, ибо во внешнем нет строки состояния.

Убери вызов под #Если.
5 SUA
 
17.01.19
14:05
Или в Сообщить()
если мешать не будет
6 Puzoter
 
17.01.19
14:11
(4) Может вот так?:
#Если НЕ ВнешнееСоединение Тогда
    Состояние("1%");
#Если
7 ДенисЧ
 
17.01.19
14:11
(6) Нет
#Если Клиент Тогда
  Сообщить(....);
#КонецЕсли
8 ДенисЧ
 
17.01.19
14:12
Не сообщить(), а Состояние()
пардон за опчечатку
9 Puzoter
 
17.01.19
14:14
(7) Почему только клиент? С сервера сообщения тоже приходят. Процедура может и с клиента и с сервера вызываться.
10 Конструктор1С
 
17.01.19
14:14
Книга
https://its.1c.ru/db/pubmanagedui

Очень нужный мануал
https://its.1c.ru/docs/v8nonmodal/
11 mistеr
 
17.01.19
14:16
(9) Потому что только на клиенте Состояние() не будет ругаться.
12 Puzoter
 
17.01.19
14:17
(11) Да, точно, перепутал с Сообщить.
13 Puzoter
 
17.01.19
14:18
Тут еще задача - вынести такие вызовы в общий модуль и вызывать типа ОМ_ПереходНа82.Состояние(). Для этого, если я все правильно понимаю, модуль должен быть клиент-серверным, но инструкции препроцессора в таких модулях вызывать не рекомендуется. Собственно вопрос, как этот вызов все-таки организовать?
14 mistеr
 
17.01.19
14:22
(13) >но инструкции препроцессора в таких модулях вызывать не рекомендуется

Однако в типовых на ОФ есть, как раз для сообщений. Так что норм. :)