Как из обработки получить параметр?
07.09.2008
02:51
#1
Из документа посредством обработки модально открывается форма, как из нее обратно в документ получить параметры?
07.09.2008
23:12
#2
Опять же: ТЕЛЕПАТОВ НА ФОРУМЕ НЕТ!!!
Вы что, НЕ можете сообщить платформу, конфигурацию, номер релизов!
В "семерке" , например:
СохранитьЗначение()
ВосстановитьЗначение()
Вы что, НЕ можете сообщить платформу, конфигурацию, номер релизов!
В "семерке" , например:
СохранитьЗначение()
ВосстановитьЗначение()
08.09.2008
09:02
#3
"Что подразумевается под словом "форма" в вопросе?
Ответ наугад: если про 7.7, то так
В документе:
СписокПараметров=СоздатьОбъект("СписокЗначений");
СписокПараметров.Установить("Контекст",Контекст);
СписокПараметров.Установить("Параметр1",ЧтоНибудь);
ОткрытьФормуМодально("Обработка.КакаяТоОбработка",СписокПараметров);
Если СписокПараметров.Получить("СтатусВозврата")=1 Тогда
РезультатИзОбработки=СписокПараметров.Получить("КакойТоРезультат");
...
КонецЕсли;
В открывающейся обработке Обработка.КакаяТоОбработка:
Перем Парам;
Процедура ПриОткрытии()
Парам=Форма.Параметр;
Если ПустоеЗначение(Парам)=1 Тогда
СтатусВозврата(0);
Возврат;
КонецЕсли;
КонецПроцедуры
Процедура ПриВыполнить()
Парам.Установить("КакойТоРезультат",ТаблицаДанных);
Парам.Установить("СтатусВозврата",1);
Форма.Закрыть();
КонецПроцедуры"
Ответ наугад: если про 7.7, то так
В документе:
СписокПараметров=СоздатьОбъект("СписокЗначений");
СписокПараметров.Установить("Контекст",Контекст);
СписокПараметров.Установить("Параметр1",ЧтоНибудь);
ОткрытьФормуМодально("Обработка.КакаяТоОбработка",СписокПараметров);
Если СписокПараметров.Получить("СтатусВозврата")=1 Тогда
РезультатИзОбработки=СписокПараметров.Получить("КакойТоРезультат");
...
КонецЕсли;
В открывающейся обработке Обработка.КакаяТоОбработка:
Перем Парам;
Процедура ПриОткрытии()
Парам=Форма.Параметр;
Если ПустоеЗначение(Парам)=1 Тогда
СтатусВозврата(0);
Возврат;
КонецЕсли;
КонецПроцедуры
Процедура ПриВыполнить()
Парам.Установить("КакойТоРезультат",ТаблицаДанных);
Парам.Установить("СтатусВозврата",1);
Форма.Закрыть();
КонецПроцедуры"
08.09.2008
19:41
#4
"Спасибо за ответ!
А вы говорите нет ТЕЛЕПАТОВ)))
Да 7.7. ПУБ 306.
Форма - это диалог в обработке.
На самом деле дурацкий вопрос, видно к трем ночи мозг уже спал. Утром сделал все сам:
(кстати, забыл сказать, что из документа в обработку тоже передается параметр)
В документе:
Конт = ЧётоТам;
ОткрытьФормуМодально("Обработка.ВыборДоговора", Конт);
Если ТипЗначенияСтр(Конт) = "СписокЗначений" Тогда
Параметр1= Конт.Получить("Параметр1");
Параметр2=Конт.Получить("Параметр2");
КонецЕсли;
В обработке:
Процедура ПриОткрытии(Передача)
Здесь не важно, что происходит.
КонецПроцедуры
Процедура Выполнить()
Передача = СоздатьОбъект("СписокЗначений");
Передача.ДобавитьЗначение(Чё-тоТам1, "Парам1");
Передача.ДобавитьЗначение(Чё-тоТам2, "Парам2");
Форма.Параметр = Передача;
Форма.Закрыть(0);
КонецПроцедуры
Все работает, правда может выглядит не так красиво, как со СтатусамиВозрата."
А вы говорите нет ТЕЛЕПАТОВ)))
Да 7.7. ПУБ 306.
Форма - это диалог в обработке.
На самом деле дурацкий вопрос, видно к трем ночи мозг уже спал. Утром сделал все сам:
(кстати, забыл сказать, что из документа в обработку тоже передается параметр)
В документе:
Конт = ЧётоТам;
ОткрытьФормуМодально("Обработка.ВыборДоговора", Конт);
Если ТипЗначенияСтр(Конт) = "СписокЗначений" Тогда
Параметр1= Конт.Получить("Параметр1");
Параметр2=Конт.Получить("Параметр2");
КонецЕсли;
В обработке:
Процедура ПриОткрытии(Передача)
Здесь не важно, что происходит.
КонецПроцедуры
Процедура Выполнить()
Передача = СоздатьОбъект("СписокЗначений");
Передача.ДобавитьЗначение(Чё-тоТам1, "Парам1");
Передача.ДобавитьЗначение(Чё-тоТам2, "Парам2");
Форма.Параметр = Передача;
Форма.Закрыть(0);
КонецПроцедуры
Все работает, правда может выглядит не так красиво, как со СтатусамиВозрата."
Читают тему
(гостей: 1)