Передача и возврат значений

1. Devilion 10.01.21 12:57 Сейчас в теме
Добрый день, нужна помощь, подскажите как я могу с основной формы передать нужные мне значения во вторую форму, и после обработав их, вернуть назад на первую форму? УФ, Открыть нужно с сервера
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Xershi 1484 10.01.21 13:24 Сейчас в теме
(1) при закрытии написать оповещение и затем написать обработку оповещения в указанной форме.
А так есть и другие варианты.
3. Devilion 10.01.21 13:27 Сейчас в теме
(2)Подскажите пожалуйста, как я могу с сервера открыть форму?
я уже полдня сижу и не могу понять, при изменении реквизита у идёт запрос, при разных условиях разные действия, при соблюдении одного из условий, нужно чтобы открывалась другая форма
4. Xershi 1484 10.01.21 13:29 Сейчас в теме
(3) на сервере форма не открывается. Форма это клиентский объект.
На сервере ее можно заполнить только.
5. Devilion 10.01.21 13:30 Сейчас в теме
(4)а как я могу открыть форму вообще в моём случае? к клиенту я обратиться с сервера не смогу, а проверку могу сделать только на сервере
6. Xershi 1484 10.01.21 13:31 Сейчас в теме
(5) форму на сервере открыть нельзя потому что на сервере она не существует.
Вы можете заполнить форму, а на клиенте открыть.
7. Devilion 10.01.21 13:32 Сейчас в теме
(6)это я понял уже, у меня проблема такая, что при изменении реквизита, либо он заполняется, либо пользователю даётся возможность выбрать тот или иной заполненный вариант, я не пойму как мне это сделать (((
8. Xershi 1484 10.01.21 13:35 Сейчас в теме
(7) на сервере никак, там нет пользователя.
Переписывайте логику на клиент, если заполнять не нужно, то на клиенте выполнится проверка и алгоритм уйдет на сервер работать дальше.
11. Devilion 10.01.21 13:39 Сейчас в теме
(8)Проблема в том, что он должен будет заполниться 100%, я просто не понимаю, как мне сделать так, чтобы после выполнения кода на сервере, когда будет допустим истина у условия(которое должно открывать форму другую), оно сделает возврат структуры на клиент, а на клиенте проверится, если не пустая структура тогда котроется форма, если пустая то завершит работу?
12. Xershi 1484 10.01.21 13:40 Сейчас в теме
(11) проверку нужно делать до закрытия.
Или предусматривать отмену заполнения.
Devilion; +1 Ответить
9. viplelik 34 10.01.21 13:36 Сейчас в теме
(1)
// В вызывающей форме
&НаКлиенте
Процедура ВашаПроцедура()
	ПараметрыФормы = ВашиДанные;
	ОбработчикОповещения = Новый ОписаниеОповещения("ИмяПроцедурыЗавершение", ЭтотОбъект);
	ОткрытьФорму("Ваша форма",ПараметрыФормы,ЭтаФорма,,,,ОбработчикОповещения);
КонецПроцедуры


&НаКлиенте
Процедура ИмяПроцедурыЗавершение(Результат, ДополнительныеПараметры) Экспорт
	ДанныеПолучены = Результат;
КонецПроцедуры


// В новой форме
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	ВашиДанные = Параметры;
КонецПроцедуры

&НаКлиенте
Процедура ЗакрытьФорму(Команда)
	Результат = ОбработанныеДанные;
	ЭтаФорма.Закрыть(Результат);
КонецПроцедуры
Показать


Примерно так
10. Xershi 1484 10.01.21 13:38 Сейчас в теме
(9) криво но работать должно.
13. Devilion 10.01.21 14:01 Сейчас в теме
(9) у меня такой вопрос, после закрытия формы, как я к данным обращаться смогу?
14. viplelik 34 10.01.21 14:08 Сейчас в теме
(13) передавайте данные в структуре.

Результат = Новый Структура;
Результат.Вставить("Данные1", Данные1);
Результат.Вставить("Данные2", Данные2);

При получении
МоиДанные1 = Результат.Данные1;
15. Devilion 10.01.21 14:14 Сейчас в теме
(14)Я правильно понимаю, что после закрытия формы, я смогу спокойно создать новую процедуру(нажатие кнопки) и как я там смогу обращаться к ним? что-то немного не понял пример выше, форма закрывается, мне нужно мои данные, которые были переданы из 2й формы уже вставить в процедуре кнопки
16. Devilion 10.01.21 14:16 Сейчас в теме
(14)и еще последний вопрос, при создании на сервере, я передавал структуру, а там допустим 10 значений в Номенклатуре(колонка), как мне их все перебрать и сразу добавить куда мне нужно?
17. viplelik 34 10.01.21 14:26 Сейчас в теме +1 $m
(16) в список значений или через массив. Можно во ВременноеХранилище
СписокНоменклатуры = Новый Массив;
// или
СписокНоменклатуры = Новый СписокЗначений; 


СписокНоменклатуры.Добавить(Номенклатура1);
СписокНоменклатуры.Добавить(Номенклатура2);

ПараметрыФормы.Вставить("СписокНоменклатуры", СписокНоменклатуры);
Показать
18. Devilion 10.01.21 14:32 Сейчас в теме
(17)Спасибо, пойду дальше разбираться как всё работает
19. viplelik 34 10.01.21 14:36 Сейчас в теме
(18) Пожалуйста.
Колонку можно выгрузить всю сразу, если Таблица значений например.
СписокНоменклатуры = ТЗ.ВыгрузитьКолонку("Номеннклатура");


Либо в цикле
Для Каждого Строка Из ТЗ Цикл
	СписокНоменклатуры.Добавить(Строка.ИмяПоля)
КонецЦикла;
Devilion; +1 Ответить
20. Devilion 10.01.21 14:43 Сейчас в теме
Оставьте свое сообщение

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