ПолучитьФорму (1Cv82) — различия между версиями

Материал из КинтВики
Перейти к: навигация, поиск
м
м
 
Строка 5: Строка 5:
 
==Доступность==
 
==Доступность==
  
[[Глобальный контекст]]
+
[[Глобальный контекст 1Cv8]]
  
 
===Синтаксис===
 
===Синтаксис===

Текущая версия на 16:41, 7 июля 2016

Доступность

Глобальный контекст 1Cv8

Синтаксис

ПолучитьФорму(<Имя формы>, <Параметры>, <Владелец>, <Уникальность>, <Окно>)

Параметры

<Имя формы> (обязательный)

Тип: Строка.

Имя формы. Образуется как полный путь к объекту метаданных Форма (например, "Справочник.Контрагенты.Форма.ФормаОбъекта") или как полный путь к прикладному объекту, дополненный именем формы по умолчанию (например, "Справочник.Товары.ФормаВыбора").

Имена форм по умолчанию:

  • ФормаОбъекта (ObjectForm) - форма объекта по умолчанию;
  • ФормаГруппы (FolderForm) - форма группы по умолчанию;
  • ФормаНабораЗаписей (RecordSetForm) - форма набора записей регистра по умолчанию;
  • ФормаЗаписи (RecordForm) - форма записи регистра по умолчанию;
  • ФормаСписка (ListForm) - форма списка по умолчанию;
  • ФормаВыбора (ChoiceForm) - форма выбора по умолчанию;
  • ФормаВыбораГруппы (FolderChoiceForm) - форма выбора группы по умолчанию;
  • ФормаКонстант (ConstantsForm) - форма констант по умолчанию;
  • Форма (Form) - форма отчета и обработки по умолчанию;
  • ФормаНастроек (SettingsForm) - форма настроек отчета по умолчанию;
  • ФормаЗагрузки (LoadForm) - форма загрузки настроек;
  • ФормаСохранения (SaveForm) - форма сохранения настроек;
  • ФормаВарианта (VariantForm) - форма редактирования варианта отчета;
  • ФормаЗагрузкиПользовательскихНастроекОтчетов (ReportUserSettingsLoadForm) - форма загрузки настроек отчета;
  • ФормаСохраненияПользовательскихНастроекОтчетов (ReportUserSettingsSaveForm) - форма сохранения настроек отчета;
  • ФормаЗагрузкиВариантовОтчетов (ReportVariantsLoadForm) - форма загрузки варианта отчета;
  • ФормаСохраненияВариантовОтчетов (ReportVariantsSaveForm) - форма сохранения варианта отчета;
  • ФормаЗагрузкиНастроекДанныхФорм (FormDataSettingsLoadForm) - форма загрузки настроек данных форм;
  • ФормаСохраненияНастроекДанныхФорм (FormDataSettingsSaveForm) - форма сохранения настроек данных форм.

<Параметры> (необязательный)

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

  • "Ключ" - значение, идентифицирующее объект редактируемой формы;
П = Новый Структура("Ключ", Поставщик);
Ф = ПолучитьФорму("Справочник.Контрагенты.ФормаОбъекта", П);
Ф.Открыть();

См. также: Параметры управляемой формы 1Cv8

<Владелец> (необязательный)

Владелец формы - форма или элемент управления другой формы.

<Уникальность> (необязательный)

Тип: Произвольный. В данном параметре может быть задан некоторый ключ, значение которого будет использоваться для поиска уже открытых форм. Если будет найдена форма с таким же ключом уникальности, вместо открытия новой формы будет активизирована найденная форма. Если параметр не указан, сначала всегда будет искаться уже открытая форма.

<Окно> (необязательный)

Тип: ОкноКлиентскогоПриложения. Окно приложения, в котором будет открыта форма. Применимо только для управляемой формы. Окном может быть только основное окно приложения или вспомогательное окно формы.

Возвращаемое значение:

Тип: Форма; УправляемаяФорма.

Описание:

Получает форму или управляемую форму. Перед открытием осуществляется поиск уже открытой такой же формы.

Поиск осуществляется по типу формы, значениям ключевых параметров формы, владельцу формы, пользовательскому ключу уникальности.

Если в параметре <Уникальность> передано значение Истина, то поиск уже открытых форм не осуществляется.

Доступность: клиент, тонкий клиент, веб-клиент.

Вызов метода выполняет обращение к серверу.

Примечание:

В тонком и веб-клиенте получает только управляемую форму.

Существует упрощённый аналог:

ОткрытьЗначение(Ссылка);

Особенности

Получение форм

Если нужно получить конкретную, созданную в конфигураторе форму, то нужен описатель в виде "Справочник.ФизическоеЛицо.Форма.ИмяКонкретнойФормы"

Например:

Форма = ПолучитьФорму("Справочник.Контрагенты.Форма.СпециальнаяФормаОбъекта");

Если же нужно получить форму, заданную как "Форма списка" в конфигураторе, или автоматически сгенерированную форму, то описатель не включает ".Форма."

Например:

Форма = ПолучитьФорму("Справочник.Контрагенты.ФормаСписка");

РежимОткрытияОкна

Режим открытия формы управляется специальным свойством – "Режим открытия окна".

Данное свойство описывает, каким образом будет открыто окно:

  • Независимый – форма открывается в немодальном окне, которое является вспомогательным окном приложения.
  • Блокировать окно владельца – форма открывается в немодальном окне, в режиме, когда работа с формой, из которой инициировано открытие текущей формы, блокируется.

Данный режим предназначен для форм, в которых вводится мало информации и работа с которыми не требует длительного времени, например, для ввода элементов справочников, содержащих небольшое количество реквизитов. Этот режим внешне аналогичен модальному открытию формы, однако при открытии из встроенного языка работа модуля не останавливается на время работы открываемой формы. При этом все остальное взаимодействие с формой выполняется как с другими немодальными формами. Такая форма также открывается во вспомогательном окне.

Этот режим по умолчанию установлен у следующих форм:

  • элемент и группа справочника,
  • узел плана обмена,
  • элемент и группа плана видов характеристик,
  • счет,
  • вид расчета,
  • задача,
  • запись независимого регистра сведений.

Свойство "Режим открытия окна" не оказывает влияния на открытие формы, если она открывается в модальном режиме; при открытии в уже существующем основном или вспомогательном окне.

ЗакрыватьПриЗакрытииВладельца

ЗакрыватьПриЗакрытииВладельца (CloseOnOwnerClose) Использование: Чтение и запись.

Описание:

Тип: Булево. Содержит признак того, что форма должна закрываться при закрытии формы-владельца.

Доступность: клиент, сервер, тонкий клиент, веб-клиент.

Примечание: Изменение свойства на клиенте не требует обращения к серверу. Изменение не влияет на производительность при вызовах сервера