Имя: Пароль:
1C
1С v8
Инструкции препроцессора
,
0 Chesnok
 
03.12.19
16:52
Доброго дня.
Если не сложно, объясните зачем модуль менеджера документа заключен в команды:

#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
...
#КонецЕсли

Т.е. если будет соединение через тонкий клиент, то, например, команды печати, которые есть в этом менеджере, работать не будут?
Зачем это надо?
1 RomanYS
 
03.12.19
16:55
(0) модуль менеджера на клиенте в УП недоступен, поэтому будет "Сервер".
А вот что такая конструкция исключает пока не соображу
2 Chesnok
 
03.12.19
17:00
(1) "модуль менеджера на клиенте в УП недоступен" - т.е. печать форм данного документа, при подключении через ТК, не будет работать?
и что значит: поэтому будет "Сервер"?
3 RomanYS
 
03.12.19
17:01
(2) будет работать через сервер
4 RomanYS
 
03.12.19
17:02
возможно проблемы будут при ТолстыйКлиентУправляемоеПриложение, но это не точно
5 Chesnok
 
03.12.19
17:07
(3) Модуль менеджера будет недоступен, но работать будет. Если не сложно, объясните подробнее.
6 RomanYS
 
03.12.19
17:10
(5) по такому вопросу сложно понять, откуда надо начинать объяснять).
В тонком клиенте модуль менеджера доступен только на сервере.
7 Chesnok
 
03.12.19
17:14
(6) Т.е. все его процедуры вызываются из серверных методов?
8 RomanYS
 
03.12.19
17:16
(7) В тонком клиенте - ДА.
Конструкция Справочники.КакойтоСправочник на клиенте вызовет ошибку.
9 D_E_S_131
 
03.12.19
17:24
ОбработкаПолученияФормы() на клиенте отрабатывает, для этого и нужна конструкция препроцессору. Чтобы всякие "запросы" для формирования печ.форм не приводили к ошибке на клиенте.
10 RomanYS
 
03.12.19
17:26
(9) Это бы объяснило "зачем", но СП говорит

"Описание:
Обработчик события вызывается на сервере при получении стандартной управляемой формы."
11 Cyberhawk
 
03.12.19
17:28
Такое обрамление нужно, чтобы код не пытался скомпилироваться в толстом клиенте УП
12 Timon1405
 
03.12.19
17:30
13 Franchiser
 
гуру
03.12.19
17:31
Если запустишь, например, Толстый клиент Обычное приложение то вероятно будет ошибка.
Для него код и не компилируется.
14 Cyberhawk
 
03.12.19
17:34
(13) Не тупи - для обычного приложения как раз компилируется
15 RomanYS
 
03.12.19
17:34
(13) почему?
"Или ТолстыйКлиентОбычноеПриложение"
16 Franchiser
 
гуру
03.12.19
17:38
(14) верно
17 Franchiser
 
гуру
03.12.19
17:39
(15) не знаю, нужно код смотреть почему так написано.
18 Franchiser
 
гуру
03.12.19
17:41
Скорее всего это все пишут в 1с по шаблону, даже если и инстуркции препроцессора в данном модуле не являются обязательными.
19 RomanYS
 
03.12.19
17:42
(18) ответ в (12). Но логика какая-то "ускользающая"))
20 Cyberhawk
 
03.12.19
17:45
(4) (19) Сразу видно, не работаешь с ИР в виде расширения
21 Жан Пердежон
 
03.12.19
17:46
(19) ускользает в прошлое вместе с толстым клиентом
22 Nikifforoff96
 
03.12.19
17:49
(1) Исключает МобильноеПриложениеСервер
23 Franchiser
 
гуру
03.12.19
17:52
(19) возможно используют EDT, которая контролирует  корректность использования конструкций препроцессора.
24 RomanYS
 
03.12.19
17:58
(20) С ИР не работаю. В (4) практически угадал.

(23) Это домыслы.
25 Chesnok
 
03.12.19
18:05
Всем спасибо.
26 Сияющий в темноте
 
03.12.19
19:20
модуль менеддера доступен в толстом клиенте на клиенте,но не все функции там доступны,и чтобы исключить ошибки компилляции ставится такая загородка.

на самом деле,там должно стоять,еслм сервер,но для внешнего соединения нужна отдельная директива,а также ыацловый вариант обычного приложения вообще все выполняет на клиенте.
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой