Имя: Пароль:
1C
1С v8
Проблемы передачи ТЗ в УФ
, ,
0 kkka
 
26.12.12
09:23
Здравствуйте. Нужно реализовать следующую задачу: для заполнения таб.части документа по кнопке "заполнить" вызывается обработка, которая формирует ТЗ и возвращает ее посредством метода ОповеститьОВыборе(СформированнаяТЗ). В обычных формах все корректно отрабатывало, и эта сформированная ТЗ садилась в ТЧ документа. В УФ ТЗ недоступно на клиенте, а метод ОповеститьОВыборе - клиентский. Подскажите как быть, пожалуйста.
1 Prikum
 
26.12.12
09:25
Так и сади ТЗ на сервере в табл.часть
2 kkka
 
26.12.12
09:26
А там это каким методом сделать?
3 HouseCD
 
26.12.12
09:30
ПоместитьВоВременноеХранилище() и ПолучитьИзВременногоХранилища()
в оповестить передаешь адрес
4 Prikum
 
26.12.12
09:32
ОбъектДокумента = РеквизитФормыВЗначение("Объект",Тип("ДокументОбъект.КачественноеУдостверение"));
5 kkka
 
26.12.12
10:03
Вы имеете в виду так?

на клиенте:

АдресХранилища = СформироватьТаблицуСерий();
ОповеститьОВыборе(ПолучитьИзВременногоХранилища(АдресХранилища));

В таком случае он ругается на то, что между клиентом и сервером передаются недопустимые данные.
6 ChAlex
 
26.12.12
10:06
ОповеститьОВыборе(АдресХранилища);
7 kkka
 
26.12.12
10:06
Если писать ОповеститьОВыборе(АдресХранилища), то в таком случае вообще ничего не происходит - ТЧ остается пуста.
8 kible
 
26.12.12
10:07
&НаКлиенте
Процедура Сохранить(Команда)
   
АдресПоказанийВХранилище = ПоместитьПоказанияВХранилище();
Структура = Новый Структура("АдресПоказанийВХранилище", АдресПоказанийВХранилище);
ОповеститьОВыборе(Структура);

КонецПроцедуры


&НаСервере
Функция ПоместитьПоказанияВХранилище()
   
   Структура = Новый Структура;
   Структура.Вставить("Показания",Показания.Выгрузить());

   АдресПоказанийВХранилище = ПоместитьВоВременноеХранилище(Структура, УникальныйИдентификатор);
   
   Возврат АдресПоказанийВХранилище;
   
КонецФункции
9 ChAlex
 
26.12.12
10:09
а чего она должна быть чем-то заполнена. Во-первых: а нафиг на клиента передавать таблицу, заполнение должно производится на сервере. А на сервере таблица доступна и можно не морочиться с извращениями как передать и что получить. Все равно с таблицей на клиенте работать нельзя
10 kkka
 
26.12.12
10:11
Вопрос тогда в том, как на сервере заполнить ТЧ документа, из которого вызвана обработка. На клиенте это можно было бы сделать методом ОповеститьОВыборе.
11 kible
 
26.12.12
10:13
Ну в ОповеститьОВыборе вызови сервер передай туда Адрес хранилища и заполни тч в этой серверной процедуре.