Имя: Пароль:
1C
 
Открытие обычной формы из управляемой
0 simol
 
28.02.11
17:49
У документа есть управляемая форма документа и произвольная обычная форма.

Из управляемой хочу открыть обычную.
Делаю привычную манипуляции в процедуре клиента:
   Форма = ПолучитьФорму("ФормаЗагрузки");

Но получаю сообщение:
Неизвестное имя формы. Имя: "ФормаЗагрузки"


Что не так?
1 mikecool
 
28.02.11
17:51
ФормаДокумента = ПолучитьФорму("Документ.ХХХ.Форма.ФормаУправляемая", Новый Структура("Основание", <ДокОснование>), ЭтаФорма, ЭтаФорма.УникальныйИдентификатор);
2 mikecool
 
28.02.11
17:51
+1 продам СП, дорого
3 simol
 
28.02.11
17:52
(2)СП это не пишет, спасибо, пробую
4 mikecool
 
28.02.11
17:53
(3) да ну )

Глобальный контекст.ПолучитьФорму (Global context.GetForm)
Глобальный контекст (Global context)
ПолучитьФорму (GetForm)
Синтаксис:

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

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

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


Имена ФормаЗагрузкиПользовательскихНастроекОтчетов, ФормаСохраненияПользовательскихНастроекОтчетов, ФормаЗагрузкиВариантовОтчетов, ФормаСохраненияВариантовОтчетов, ФормаЗагрузкиНастроекДанныхФорм и ФормаСохраненияНастроекДанныхФорм нужно использовать без имени объектов метаданных.
Для внешних отчетов и обработок имя формы задается следующим образом:
ВнешнийОтчет.<имя отчета>.Форма.<имя формы>;
ВнешнийОтчет.<имя отчета>.<имя стандартной формы>;
ВнешняяОбработка.<имя обработки>.Форма.<имя формы>;
ВнешняяОбработка.<имя обработки>.<имя стандартной формы>.
При этом внешний отчет или обработка должны быть предварительно зарегистрированы в системе.
<Параметры> (необязательный)

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


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

Владелец формы - форма или элемент управления другой формы.
<Уникальность> (необязательный)

Тип: Произвольный. В данном параметре может быть задан некоторый ключ, значение которого будет использоваться для поиска уже открытых форм. Если будет найдена форма с таким же ключом уникальности, вместо открытия новой формы будет активизирована найденная форма.
Ложь - искать форму с ключом уникальности по умолчанию, Истина - не искать форму вообще, любое другое значение устанавливает ключ уникальности, по которому будет произведен поиск.
Значение по умолчанию: Ложь
<Окно> (необязательный)

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

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

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

Доступность:

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

Примечание:

В тонком и веб-клиенте получает только управляемую форму.
Обычные формы внешних обработок не поддерживаются.
Если при получении обычной формы в параметре ИмяФормы указано не стандартное имя формы, передаваемые параметры не обрабатываются.
См. также:

Глобальный контекст, метод ОткрытьФорму
Глобальный контекст, метод ОткрытьФормуМодально
Глобальный контекст, метод ПолучитьОбщуюФорму
5 simol
 
28.02.11
17:54
Да, так:
ПолучитьФорму("Документ._ОтчетПоТопливнымКартам.Форма.ФормаЗагрузки")

Интересно почему в управляемых заставляют писать полный путь к форме

Спасибо.

Кстати в СП просто написано "Как задано в конфигураторе"
6 simol
 
28.02.11
17:56
(4)хм, я не ту ветку читал. Но все же обычное
ПолучитьФорму("ФормаЗагрузки");
понимает
7 simol
 
28.02.11
17:57
(6)Я это воспринимал
как ЭтотОбъект.ПолучитьФорму("ФормаЗагрузки");
И читал
ДокументОбъект.<Имя документа> (DocumentObject.<Имя документа>)
ПолучитьФорму (GetForm)
8 mikecool
 
28.02.11
18:00
это для нового документа
для существующего можно
ФормаДокумента = <ДокСсылка>.ПолучитьФорму("ФормаУправляемая", ЭтаФорма, ЭтаФорма.УникальныйИдентификатор)
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn