Имя: Пароль:
1C
1С v8
Передача массива с сервера на толстый клиент 8.2
0 Pendalff
 
06.05.13
07:05
в УПП 1.2, есть Процедура ОбщегоНазначения.СообщитьОбОшибке()
выполняется на сервере, в ней есть переменные
Заголовок и ТекстСообщения  мне очень нужно передать эти переменные на клиента. Пытаюсь в этой процедуре поместить их в структуру и в массив и потом нужно выполнить действия с этим массивом на клиенте.

НоваяСтруктура.Вставить(Заголовок,ТекстСообщения)
Массив.Добавить(НоваяСтруктура);

Как можно с сервера выполнить код в контексте клиента?
и можно ли вообще?
1 Wobland
 
06.05.13
07:11
Кнпока1Нажатие подойдёт?
2 1Сергей
 
06.05.13
07:14
такая штука прекрасно передаёт сообщение пользователю из процедуры на сервере:

           Сообщение = Новый СообщениеПользователю;
           Сообщение.Текст = "Редактирование документа запрещено. Документ открыт в режиме только просмотр";
           Сообщение.УстановитьДанные(Объект);
           Сообщение.Сообщить();
3 Pendalff
 
06.05.13
07:17
Сервер 1С и сервер приложений разные компы.
необходимо передать на клиента текст "Заголовок+ТекстСообщения" и там записать в текстовый файл.
Как вы понимаете на сервере другое окружение, и файловая система другого ПК...
4 Wobland
 
06.05.13
07:18
(3) можно передать файл
5 Pendalff
 
06.05.13
07:20
файл...
создавать, записывать, потом открывать читать....
во время пакетного перепроведения замедлится процесс :((
может можно как-то массив-шмассив, а?
6 Pendalff
 
06.05.13
07:22
Ладно всем спасибо, мне проще вообще убрать вывод сообщений на сервере, выводить все на клиенте...
7 1Сергей
 
06.05.13
07:23
(3) всё-равно не понимаю чем (2) не подходит. Да, разные компы, но Сообщение для этого и сделано ведь
8 Pendalff
 
06.05.13
07:28
(7) Такой способ просто выведет сообщение клиенту в окно сообщений, тоже самое прекрасно происходит и сейчас в ОбщегоНазначения.СообщитьОбОшибке()
Но мне нужно из контекста процедуры СообщитьОбОшибке() выполняемой на сервере выполнить код на клиенте, что, как выясняется невозможно :(
9 1Сергей
 
06.05.13
07:28
(8) а......
Ну, да. Тут логику менять надо
10 Pendalff
 
06.05.13
07:30
А вот если с клиента вызвать серверную функцию она по идее сможет вернуть массив примитивных типов или ссылок, верно?
11 1Сергей
 
06.05.13
07:30
(10) да
12 cw014
 
06.05.13
07:48
Сделай из процедуры функцию, и вызывай ее как функцию. Возвращай то что нужно
13 Pendalff
 
06.05.13
07:57
оч много обращений к этой процедурке переписывать в типовой придется, попробую писать лог из этой процедуры по сетевому пути...
14 cw014
 
06.05.13
08:25
(13) А сервер не знает, какой клиент его вдруг разбудил. Он выполняет и отплевывает
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.