Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Как передать параметр из документа в обработку и получить результат?

Как передать параметр из документа в обработку и получить результат?
Я
   prazdnik4334
 
02.01.13 - 15:49
1С.8.2. Подскажите пожалуйста, как передать параметр в обработку и получить результат? И ещё, желательно, чтоб передаваемый в обработку параметр можно было использовать в процедуре ПриСозданииНаСервере() для выполнения запроса?
 
 
   ДенисЧ
 
1 - 02.01.13 - 15:52
в обработке создай реквизит и в него задавай.
   prazdnik4334
 
2 - 02.01.13 - 15:58
(1) Как это сделать?
   prazdnik4334
 
3 - 02.01.13 - 15:59
(1). Так?
Парам=Новый Структура;
Парам.Вставить("Склад", Объект.Склад);
ФормаОбработки=ОткрытьФорму("Обработка.ПодборНоменклатуры.Форма.Форма", Парам, ЭтаФорма);
   ДенисЧ
 
4 - 02.01.13 - 16:01
нет. В обрабтке реквизит создай.
потом 
обр = Обработки.Твоя.Создать();
обр.Реквизит = значение;
обр.ОткрытьМодально();
результат = обр.Реквизит;
   prazdnik4334
 
5 - 02.01.13 - 16:10
С первой частью я разобрался. Передаю параметр, как указал в (3). Потом в процедуре ПриСозданииНаСервере() достаю его так: ЭтаФорма.Параметры.Склад. Вторая часть: Как вернуть результат из обработки в документ?
   prazdnik4334
 
6 - 02.01.13 - 16:11
(4). Это для обычного приложения?
   ДенисЧ
 
7 - 02.01.13 - 16:14
(6) а пофиг
   prazdnik4334
 
8 - 02.01.13 - 16:24
(4). Проверил. Это для обычного приложения. А как сделать для управляемого?
   prazdnik4334
 
9 - 02.01.13 - 16:25
Как можно вернуть результат из формы обработки в форму документа?
   ДенисЧ
 
10 - 02.01.13 - 16:27
(8) точно так же. С учётом разницы вызовок клиент-сервер. (9) читай значение из реквизита объекта обработки
 
 Рекламное место пустует
   prazdnik4334
 
11 - 02.01.13 - 16:59
(4). Делаю так:

&НаСервереБезКонтекста
Функция ОбработкаОбработки(Склад)
    
    Обр=Обработки.ПодборНоменклатуры.Создать();
    Обр.Склад=Склад;
    Обр.ОткрытьМодально();
    Возврат Обр.Результат;
КонецФункции

Выдаёт ошибку: Метод объекта не обнаружен (ОткрытьМодально())
Что такое?
   GROOVY
 
12 - 02.01.13 - 17:04
(3) Все правильно делал.
   GROOVY
 
13 - 02.01.13 - 17:05
+12 только можно не открывать форму без надобности, в просто ПолучитьФорму()
   ДенисЧ
 
14 - 02.01.13 - 17:08
(11) Ты НаСервере пытаешься открыть форму....
   prazdnik4334
 
15 - 02.01.13 - 17:15
(14). Дык, я на клиенте не могу создать обработку.
   prazdnik4334
 
16 - 02.01.13 - 17:16
(13). А мне же надо в форме произвести выбор.
   prazdnik4334
 
17 - 02.01.13 - 17:16
Может, надо получить форму, а потом её открыть?
   GROOVY
 
18 - 02.01.13 - 17:31
Получи форму, укажи владельца формы (форму документа)
Открой ее.
При выборе в форме обработки вызови любую экспортную процедуру формы владельца и скинь туда выбранное значение.
   prazdnik4334
 
19 - 02.01.13 - 18:27
(18). Спасибо. Работает. Открыл форму, как в (3). Перед этим создал экспорт. Процедуру в форме-владельце, в которой присвоил её параметр (результат выбора в обработке) переменной. И вызвал эту процедуру из формы обработки. Всё работает, тут любопытство, можно ли это сделать через параметры форм?
   DirecTwiX
 
20 - 02.01.13 - 19:31
А зачем понадобилось открывать форму на сервере?

Список тем форума
Рекламное место пустует  Рекламное место пустует
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит Тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует