Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Как из УФ элемента открыть подчиненную форму и получить из нее нужные значения.

Как из УФ элемента открыть подчиненную форму и получить из нее нужные значения.
Я
   Беата Смит
 
05.04.19 - 12:58
Есть некий справочник, у него есть форма элемента Форма1 и просто форма - Форма2 (она не меняет никаких реквизитов справочника, там просто куча всяких элементов формы.
На Форме1 есть поле ввода Поле1 с кнопкой выбора и запретом на изменение текста. Мне надо, чтобы при начале выбора открывалась Форма2, туда передавалось значение из Поле1, дальше происходила всякая магия)), для которой эта форма2 и создавалась, и потом, при закрытии Формы2 некое (измененное) значение передавалось обратно в Поле1 Формы1.
Это скорее всего, какая-то совсем тривиальная задача, но я застряла в самом начале.

&НаКлиенте
Процедура Поле1НачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    Форма = ПолучитьФорму("Справочник.Клиенты.Форма2",,ЭтаФорма);
        Форма.Открыть();
КонецПроцедуры

Выдает ошибку "Неизвестное имя формы.". Решила, что на клиенте эта форма по какой-то причине не видна. Сделала через сервер:

&НаСервереБезКонтекста
Процедура РВТ_СписокГрафиковГрафикНачалоВыбораНаСервере()
    Форма = Справочники.Клиенты.ПолучитьФорму("Форма2");
        Форма.Открыть();
КонецПроцедуры

&НаКлиенте
Процедура Поле1НачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    Поле1НачалоВыбораНаСервере();
КонецПроцедуры

Выдает ошибку "Интерактивные операции недоступны". Не понимаю, что делать, короче. Помогите, пожалуйста!
 
 
   RomanYS
 
1 - 05.04.19 - 13:12
ОткрытьФорму("Справочник.Клиенты.Форма.Форма2",,ЭтаФорма);

Естественно только на клиенте
   RomanYS
 
2 - 05.04.19 - 13:14
(0) >> Выдает ошибку "Неизвестное имя формы.". Решила, что на клиенте эта форма по какой-то причине не видна.
Л = Логика)
   Лодырь
 
3 - 05.04.19 - 13:16
Парам = Новый Структура("Параметр1",ЗначениеПараметра1);
ОписаниеОповещенияОЗакрытииПодчиненнойФормы  = Новый ОписаниеОповещения("ИмяПроцедурыОбработчикаОповещения",ЭтаФорма);
ОткрытьФорму("Документ.ИмяДокумента.Форма.ИмяФормы",Парам,ЭтаФорма,,,,ОписаниеОповещенияОЗакрытииПодчиненнойФормы,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
   DrWatson
 
4 - 05.04.19 - 13:26
(0) Из справки:
ОткрытьФорму(<ИмяФормы>, <Параметры>, <Владелец>, ...)
Имя формы образуется как полный путь к объекту метаданных Форма (например, "Справочник.Контрагенты.Форма.ФормаОбъекта".
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, толстый клиент, мобильное приложение(клиент).
   Беата Смит
 
5 - 05.04.19 - 13:28
(2) ну да, туплю. Я просто проверяла, запуская так же ФормаЭлемента, ФормаВыбора - оно срабатывало. Я не знала, каюсь, что для открытия произвольной формы, к стандартным типам не относящейся, надо Форма.Форма2 писать. Спасибо)
   Беата Смит
 
6 - 05.04.19 - 15:06
(3) Спасибо большое, разобралась! Работает.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.