Имя: Пароль:
1C
1С v8
Как правильно работать с формой в общем модуле с учётом тонкого и толстого клиента.
0 МешочекЗнаний
 
03.02.20
11:21
Приветствую уважаемые.

Конфа УТ 11
Есть два справочника "Номенклатура" и "Характеристика". Далее программно создаётся реквизит ФОРМЫ типа булево "Есть уточнение", значение реквизита устанавливается программно в общем модуле. У модуля стоит галочка клиент. Код сокращаю для понимания:

На форме справочника:
&НаКлиенте
Процедура аситВыбранаСложнаяШирина(Элемент)
    РаботыСФормамиКлиент.УстановитьЗначениеРеквизитаЕстьУточнение(ЭтаФорма);
КонецПроцедуры

В общем модуле (Директивы & никакой не указываю):
Процедура УстановитьЗначениеРеквизитаЕстьУточнение(ЭтаФорма) Экспорт
    ЭтаФорма.ЕстьУточнение = Истина;
КонецПроцедуры

Эта конструкция работает хорошо в тонком клиенте. Когда я открываю инструменты разработчика в толстом клиенте и пытаюсь открыть форму справочника, то форма не открывается и выходит ошибка:
Переменная не определена (РаботыСФормамиКлиент)
    <<?>>РаботыСФормамиКлиент.УстановитьЗначениеРеквизитаЕстьУточнение(ЭтаФорма);    

Как правильно переписать конструкцию, чтобы она работала и в тонком и в толстом клиенте?
1 Cyberhawk
 
03.02.20
11:25
Поставить флажок компиляции для толстого клиента надо
2 Жан Пердежон
 
03.02.20
11:26
Поставить галочку "Толстый клиент"?)
3 Cyberhawk
 
03.02.20
11:26
https://its.1c.ru/db/v8std#content:469:hdoc
По факту это не единственный вариант организации общих модулей, но типа стандарт
4 Cyberhawk
 
03.02.20
11:27
"Клиент (обычное приложение)" если уж быть до конца точным
5 spiller26
 
03.02.20
11:27
(0) Зачем вам Толстый клиент?
6 Cyberhawk
 
03.02.20
11:28
Но учти, что нет ни одной современной типовой на УФ, которая бы полностью работала в толстом клиенте даже в режиме УП, не то что ОП
7 МешочекЗнаний
 
03.02.20
11:31
(4)  Что-то я туплю, Это галка в общем модуле "Сервер"?
8 Cyberhawk
 
03.02.20
11:36
(7) Я пас
9 spiller26
 
03.02.20
11:38
(7) В каком режиме вы работаете в УП или ОП?
10 Жан Пердежон
 
03.02.20
11:38
(7) да, тупишь
11 МешочекЗнаний
 
03.02.20
11:40
(9) По умолчанию работаю в Тонкий клиент, инструменты разработчика запускаются в Толстый клиент (обычное приложение)
12 МешочекЗнаний
 
03.02.20
11:51
(4) А, понял. У меня эта галочка в общих модулях была скрытая до тех пор пока я не поставил у конфигурации свойство "основной режим запуска" в значение "Обычное приложение"
Теперь в толостом клиенте работает, но по умолчанию открывается толстый клиент, что мне не подходит.
13 Cyberhawk
 
03.02.20
11:54
(12) Что-то мешает радиокнопку переключить обратно?
14 Cyberhawk
 
03.02.20
11:54
А, так ты корень конфигурации изнасиловал. Так делать не нужно было)
Достаточно в настройках конфигуратора обратить внимание на радиокнопку.
15 Cyberhawk
 
03.02.20
11:55
16 spiller26
 
03.02.20
11:57
(11) А потом пользователи пишут, что не работает у них, а программист такой - "Это что-то у вас, у меня всё работает".
17 МешочекЗнаний
 
03.02.20
12:00
(14) Впервые эту функцию вижу. С ней всё работает как надо, буду теперь знать. Спасибо.
(16) Я наоборот хочу сделать как лучше, поэтому на копии провожу опыты. Как доведу до ума сделаю на боевой.
18 spiller26
 
03.02.20
12:07
(17) А какая разница, запускай в режиме "Клиент-сервера".
"Обычное приложение" - для Бух2.0, КА 1.0 и подобных.
Основная теорема систематики: Новые системы плодят новые проблемы.