Как получить данные одной формы, находясь на другой?
Например, на 1 форме есть поле ввода. Как поместить данные этого поля ввода на форму 2, используя внешние обработки?
Самый простой способ — инициировать открытие формы программно и программно получить данные с нее после закрытия:
Второй вариант — переподключить обработчик событий:
Но в этом случае процедура ПриНоменклатуре(РасшифровкаСобытия) должна находиться в модуле открываемой формы.
Стандартных способов 1С для других видов обработки событий не существует. Т.к. в 1С все процедуры-обработчики событий должны находиться в модуле этого элемента и никак иначе из внешней обработки процедуру не подключишь.
Похожие FAQ
Еще в этой же категории
Заполнение списка значений в элементе поле выбора на форме 9
//Заполнение списка перебором данных // Элемент формы МетаданныеВыбор имеет тип — Произвольный, Использование — Режим выбора из Списка, кнопка списка Для Каждого Метаданное из Метаданные.РегламентныеЗадания Цикл ЭлементыФормы.МетаданныеВыбор.Спи Форма
Программное создание таблицы значений с условным оформлением 6
Как создать на форме таблицу и сделать для нее подсветку содержимого колонки в строке по условию? Итак для начала нам надо добавить реквизиты в форму. Для этого у нас есть метод: ИзменитьРеквизиты(). Перед тем как его использовать мы сформируем ма Форма
Как активизировать, перевести фокус на необходимый элемент на форме? 6
//Текущему Элементу формы присваиваем элемент котровый необходимо активизировать ЭтаФорма.ТекущийЭлемент = ЭлементыФормы.ТабличноеПоле; Форма
Программное добавление элементов на форму 6
ЭлементыФормы (Controls) . Добавить (Add) — Добавляет элемент управления на форму. Синтаксис: Добавить( Тип , Имя , Видимость , ПоместитьНа ) Параметры: Тип (обязательный) Тип: Тип. Тип добавляемого элемента управления: Индикатор; П Поле выбора
Как ограничить список выбора? 5
Ограничим список элементов, установив отбор в открываемой форме //Пример 1 Процедура СтатьяПДРНачалоВыбора(Элемент, СтандартнаяОбработка) ФормаВыбора = Справочники.ПрочиеДоходыИРасходы.ПолучитьФормуВыбора(, Элемент); ЭлементОтбораВидПДР = Форма Посмотреть все в категории Работа с Формой (Диалог) и её элементами
Возвращает форму по имени
Синтаксис
Функция ПолучитьФорму() имеет следующий синтаксис:
А также альтернативный англоязычный синтаксис:
Параметры
Описание параметров процедуры ПолучитьФорму() :
Имя параметра | Тип | Описание |
---|---|---|
ИмяФормы | Строка | Имя формы, образованное как полный путь к объекту Форма в дереве метаданных (например, «Справочник.Сотрудники.Форма.ФормаОбъекта», «ОбщаяФорма.ФормаВопроса») или как полный путь к прикладному объекту, дополненный именем формы по умолчанию (например, «Справочник.Сотрудники.ФормаОбъекта»). Поддерживаются следующие формы по умолчанию:
|
Параметры (необязательный) | Структура | Параметры формы. Ключ структуры — имя параметра, а значение — значение параметра формы |
Владелец (необязательный) | ВладелецФормы | Форма или элемент управления формы. |
Уникальность (необязательный) | Произвольный | Ключ уникальности формы. В данном параметре может быть задан некоторый ключ, значение которого будет использоваться для поиска уже открытых форм. Если будет найдена форма с таким же ключом уникальности, вместо открытия новой формы будет активизирована найденная форма |
Окно (необязательный) | ОкноКлиентского-Приложения | Окно приложения, в котором будет открыта форма. Окном может быть только основное окно приложения или вспомогательное окно формы.
Применимо только для управляемой формы. |
НавигационнаяСсылка (необязательный) | Строка; Неопределено |
Если содержит значение, отличное от Неопределено , то это значение присваивается свойству НавигационнаяСсылка формы, полученной в результате вызова данного метода, и свойство АвтоНавигационнаяСсылка этой формы устанавливается в Ложь. Значение по умолчанию: Неопределено .
Применимо только для управляемой формы. |
Жирным шрифтом выделены обязательные параметры |
Возвращаемое значение
Описание
Функция ПолучитьФорму() получает форму по имени и возвращает ее. Перед этим осуществляется поиск ранее открытой формы того же типа и совпадающими параметрами: значениям ключевых параметров формы, владельца формы, пользовательского ключа уникальности. Для форм ФормаОбъекта , ФормаЗаписи , ФормаНабораЗаписей , ФормаКонстант при поиске ранее открытых форм, владелец не учитывается.
Доступность
Тонкий клиент, веб-клиент, мобильный клиент, толстый клиент, мобильное приложение(клиент).
Пример использования
Пример кода с использованием процедуры ПолучитьФорму() :
Если справочник подчиненный (т.е. имеет владельца), то обычно на форме списка или на форме выбора, автоматически сгенерированной системой 1С, прописан отбор по владельцу.
Вопрос — как в модуле формы узнать, какой владелец установлен для списка?
Далее приведен код, выясняющий владельца списка справочника. Код надо размещать в модуле формы. Предполагается, что на форме автоматически был создан реквизит Список, который содержит данные справочника.
Для каждого ПолеОтбора Из КоллекцияПолейОтбора Цикл
Если Строка(ПолеОтбора.ЛевоеЗначение)=»Владелец» Тогда