Имя: Пароль:
1C
1С v8
Выдает сообщение Несоответствие типов
0 alpha78
 
18.04.15
11:13
Хочу вызвать обычную форму из формы списка документов.
Создал кнопку и Написал команду:
&НаКлиенте
Процедура ВызовОбычнойФормы(Команда)
Форма = ПолучитьФорму("ФормаДокОбычная","Документ.ПриходнаяНакладная.ФормаОбъекта");
Форма.Открыть();
КонецПроцедуры

Выдает сообщение Несоответствие типов
Как правильно кто подскажет. Заранее благодарен!!!
1 GROOVY
 
18.04.15
11:17
7.9.1. Открытие формы

Для того чтобы открыть форму, существуют два способа:

? Воспользоваться методом ОткрытьФорму()/ОткрытьФормуМодально().

? Воспользоваться комбинацией метода ПолучитьФорму() и метода Открыть() или ОткрытьМодально() объекта УправляемаяФорма.

В любом из перечисленных случаев можно передать в открываемую форму параметры формы.

Использовать метод ОткрытьФорму() рекомендуется во всех случаях, кроме необходимости открыть форму в модальном режиме и затем получить результат работы формы через реквизиты открываемой формы.

Такая особенность связана с тем, что в качестве значения возврата модальной формы будут выступать те данные, которые возвращает сама форма, и у разработчика не будет доступа к объекту УправляемаяФорма, чтобы получить реквизиты формы. Если предварительно получить форму методом ПолучитьФорму(), доступ к реквизитам можно будет получить после завершения работы метода ОткрытьМодально().

Пример 1:

Копировать в буфер обмена
// Откроем форму списка справочника товары
// в режиме "только просмотр"
Параметры = Новый Структура("ТолькоПросмотр", Истина);
ОткрытьФорму("Справочник.Товары.ФормаСписка", Параметры);
Пример 2:

Копировать в буфер обмена
// Открыть модальную форму и после закрытия
// получить доступ к реквизитам формы
Форма = ПолучитьФорму("ОбщаяФорма.ВыборПериода");
Результат = Форма.ОткрытьМодально();
Если Результат = КодВозвратаДиалога.Да Тогда
    ДатаНачала = Форма.ДатаНачала;
    ДатаОкончания = Форма.ДатаОкончания;
КонецЕсли;