Как из одной формы внешней обработки открыть другую внешнюю обработку, передав значения нескольких полей

1. ranis888 104 25.09.18 09:32 Сейчас в теме
1)Как из одной формы внешней обработки открыть другую внешнюю обработку, передав значения нескольких полей?
2) как программно закрыть открытую обработку
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. PhoenixAOD 62 25.09.18 09:43 Сейчас в теме
(1)передаешь через параметры которые есть структура свои поля, после получить форму, пишешь обработка.закрыть()
3. ranis888 104 25.09.18 09:51 Сейчас в теме
(2)
ОткрытьФорму("Обработка",ТЗ,"C:\Users\Fin\Documents\Для 7.7\Вход.ert")

не передает таблицу
4. ranis888 104 25.09.18 09:57 Сейчас в теме
5. PhoenixAOD 62 25.09.18 10:51 Сейчас в теме
(4)Насколько я помню в клюшке как и в 8 параметры не работают с таблицами, они работают со структурой или массивом.
7. rusmm93 30 25.09.18 11:24 Сейчас в теме
(4)
ПараметрыОткрываемойФормы = Новый Структура("ТЗ",ТЗ);
ОткрытьФорму("Обработка.ИмяОбработки.Форма.ИмяФормы",ПараметрыОткрываемойФормы );
6. Fox-trot 158 25.09.18 11:03 Сейчас в теме
(1)обычно в линуксах так круто не заморачиваются, а передают через файлы
возможно такой вариант и тебе подойдет
8. user856012 13 25.09.18 12:07 Сейчас в теме
(1)
1)Как из одной формы внешней обработки открыть другую внешнюю обработку, передав значения нескольких полей?
Курить Синтакс-Помощник:
ОткрытьФорму(<?>,,)
Синтаксис:
ОткрытьФорму(<ОписательОбъекта>,<КонтекстФормы>,<ИмяФайла>)
Назначение:
Открывает визуальную форму внешнего отчета.
Возвращает: 1 - если действие выполнено, 0 - иначе.
Параметры:
<ОписательОбъекта> - строковое выражение. ''Отчет'';
<КонтекстФормы> - имя переменной, куда можно задать значение любого типа для передачи в открываемую форму. Данное значение будет доступно в открытой форме как атрибут Форма.Параметр. После исполнения данного метода система вернет в данную переменную контекст открытой формы (необязателен).
<ИмяФайла> - cтроковое выражение - полное имя файла внешнего отчета.
На пальцах: в первой обработке из "нескольких полей" формируем список значений, который передаем во вторую обработку как КонтекстФормы.

2) как программно закрыть открытую обработку
Это - сложнее, тут СП не отделаешься, тут надо из гуглобана выйти: http://1c-pro.ru/threads/kak-zakryt-formu-obrabotki.24578/
Форма.Закрыть(0);
10. ranis888 104 26.09.18 08:05 Сейчас в теме
(8)

ОткрытьФорму("Обработка",ТЗ,"C:\Users\Fin\Documents\Для 7.7\Вход.ert")

Не передается же
11. user856012 13 26.09.18 09:35 Сейчас в теме
(10)
ОткрытьФорму("Обработка",ТЗ,"C:\Users\Fin\Documents\Для 7.7\Вход.ert")
Чукча не читатель, чукча писатель? Писатель кода?
<ОписательОбъекта> - строковое выражение. ''Отчет'';
Откуда взялась "Обработка"?
Не передается же
Может и передается, а вы толком принять не можете? Откуда мне знать, что вы там еще накосячили? С вашими-то способностями...
9. Raskad 10 25.09.18 13:44 Сейчас в теме
Товарищ обработку 7.7 пытается открыть)
12. user1070412 5 17.10.18 11:08 Сейчас в теме
Можно оправить через СписокЗначений
код в отправляющей форме

Парам = СоздатьОбъект("СписокЗначений");
Парам.Установить("ВыгружатьЦены", 1);
Парам.Установить("Склад", Склад);
Парам.Установить("Товар", ГруппыДляВыгрузкиАвто); //ГруппыДляВыгрузкиАвто - список значений, может быть и таблица значений
Если ОткрытьФормуМодально("Отчет", Парам, КаталогИБ()+"\ExtForms\сайт\ВыгрузкаДляСайта.ert") = 0 Тогда
	    сообщить("Ошибка открытия формы "+КаталогИБ()+"\ExtForms\сайт\ВыгрузкаДляСайта.ert", 60);
КонецЕсли;
Показать


В принимающей форме:
//*******************************************
Процедура ПриОткрытии()
	
	Парам = Форма.Параметр;
	Если ТипЗначенияСтр(Парам) = "СписокЗначений" Тогда
		ВыгружатьЦены = Парам.Получить("ВыгружатьЦены");
		ВыбСклад		 = Парам.Получить("Склад");
		ГруппыДляВыгрузки = Парам.Получить("Товар");
	КонецЕсли;

КонецПроцедуры
Показать
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот