Имя: Пароль:
1C
1С v8
Мутабельные значения
0 Мойдодыр
 
28.09.20
16:17
А что в толстом клиенте список с табличными документами является мутабельным?
1 Asmody
 
28.09.20
16:29
А почему нет?
2 Answer42
 
28.09.20
16:37
(0) Просто сообщение об ошибке давно уже не соответствует действительности.
Таблица значений тоже мутабельная, но передавать её можно.
Да собственно почти всё мутабельное, исключения - примитивные типы, ссылки и ещё пара/тройка штук типа цвета (при этом не факт что их можно передавать между толстым клиентом и сервером).
3 Мойдодыр
 
28.09.20
17:07
(1) потому что в тонком оно не мутабельное.
на этом печать в БСП работает
4 Web00001
 
28.09.20
17:07
Насколько я помню, таблицу значений передавать было нельзя. Как раз была ошибка указывающая на мутабельный тип значения. Примитивные типы и ссылки в принципе не могут быть мутабельными(или может быть ты
подскажешь как?). Про остальное ничего сказать не могу.
5 Web00001
 
28.09.20
17:08
(4) к (2)
6 Мойдодыр
 
28.09.20
17:14
(3) кстати в БСП начали обходить этот косяк
например, там есть 2 процедуры в модуле УправлениеПечатью
СформироватьПечатныеФормыДляБыстройПечати
СформироватьПечатныеФормыДляБыстройПечатиОбычноеПриложение

но до конца так и не обошли
7 polosov
 
28.09.20
17:20
(6) Что значит "начали обходить"?
Всегда так было, что с сервера на клиент нельзя передавать мутабельные значения. Проснулся только?
8 Мойдодыр
 
28.09.20
17:21
(7) см (3) еще раз
9 polosov
 
28.09.20
17:23
(8) Ты разницу понимаешь в передаче значений между клиентскими процедурами и между клиентскими и серверными?
10 RomanYS
 
28.09.20
17:25
(0) Может в расшифровки ТД что-то засунул мутабельное?
11 Мойдодыр
 
28.09.20
17:39
(10) так на тонком то все норм отрабатывает. если бы что то было, то и на тонком бы валилось
12 RomanYS
 
28.09.20
17:48
(11) тоже верно
13 Cyberhawk
 
28.09.20
18:05
Ну это норма.
Список типов объектов встроенного языка, которые будут ругаться на попытку передачи мутабельного значения между клиентом и сервером, для толстого клиента и для тонкого клиента различается.
14 polosov
 
28.09.20
18:08
(11) Ты бы код поазал.
15 RomanYS
 
28.09.20
18:08
(13) Так и есть. Осталось понять, что можно передать с тонкого и нельзя с толстого. На вскидку такого быть не должно
16 RomanYS
 
28.09.20
18:08
(14) +1 и полный текст ошибки
17 Сияющий в темноте
 
28.09.20
19:36
Для тонкого клиента понятие Мутабельное нет,есть сериализуемые и несериалищуемые,первые передаются,а вторые нет,хотя,среди первых могут быть и мутабельные.
и еще,делаем массив,в два перввх элемента кладем один и тот же список значений,и айда на сервер(ну или на клиента с сервера)-все передается как часы,но,опа и в массиве у нам два разных списка значений-как это называется,если не из 4 букв!?
18 Жан Пердежон
 
28.09.20
19:47
(17) при клиент-серверном вызове передача всегда идет по значению
19 Web00001
 
29.09.20
04:00
(18)+1 контекст разный. Никак не связан между собой. По ссылке передать нельзя ибо объект куда указывает ссылка может быть на другом компьютере. При вызове серверной процедуры из клиента и передаче параметра по ссылке вызывающая процедура просто получает параметр с сервера обратно.