Имя: Пароль:
1C
1С v8
УФ: как передать реквизит формы на сервер
0 ATI_MSC
 
27.01.14
09:13
Подскажите,пожалуйста, как  передать реквизит (Таблица Значений) формы на сервер?
я недавно занимаюсь управляемыми формами, проконсультируйте пожалуйста.
1 Поpyчик-4
 
27.01.14
09:16
(0) ПоместитьВоВременноеХранилище
2 jsmith82
 
27.01.14
09:17
(1) так ему же на сервер и все дела
3 ATI_MSC
 
27.01.14
09:18
(2) мне нобходимо потом эту таблицу значений в запрос отправить,а я не могу перебрать даже строки её
4 jsmith82
 
27.01.14
09:18
а в чём проблема-то?
код в студию
5 jsmith82
 
27.01.14
09:19
в серверной процедуре формы выгружаешь реквизит в ТЗ и передаёшь
что тут сложного-то
6 Wobland
 
27.01.14
09:19
&НаСервере
Процедура ОбходДерева(Рекурсивно)
    Дуб=РеквизитФормыВЗначение("Дерево");
    Дуб=Новый ДеревоЗначений;
    Если Рекурсивно Тогда
        ЗапускайтеБерлагу(Дуб);
    Иначе
    КонецЕсли;
    ЗначениеВРеквизитФормы(Дуб, "Дерево");
КонецПроцедуры
7 ATI_MSC
 
27.01.14
09:20
(4)  не получается код, потому пыталась и выгрузить реквизит в таблицу значений, и сразу передавать реквизит формы....
вот пример:

{Документ.ут_РегистрацияРеестровНП.Форма.ФормаДокумента.Форма(60)}: Ошибка при вызове метода контекста (Выгрузить)
    тз_данные=ВТ_РеестрыИзФайла.Выгрузить();
по причине:
Метод недоступен на клиенте
8 jsmith82
 
27.01.14
09:21
(7) ну дк раз недоступна на клиенте, из клиента вызывай серверную процедуру
включи логику
9 ATI_MSC
 
27.01.14
09:23
я на клиенте вызываю серверную процедуру, но на сервере я должна обработать данный реквизит формы
10 jsmith82
 
27.01.14
09:24
(9) >>Метод недоступен на клиенте
ни фига не вызываешь
11 jsmith82
 
27.01.14
09:26
&НаКлиенте
Процедура Проц1()
Проц2();
КонецПроцедуры

&НаСервере
Процедура Проц2()
ТЗ = Реквизит1.Выгрузить();
ОбщегоНазначенияСервер.РасхерачитьТЗ(ТЗ);
КонецПроцедуры
12 jsmith82
 
27.01.14
09:27
либо через РеквизитФормыВЗначение
ТЗ = РеквизитФормыВЗначение("Реквизит1");
13 Infsams654
 
27.01.14
09:27
(0) ввобще отказаться от таблицы значений, т.к. в тонком все равно не прокатит
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн