Каталог решений - Форма без объекта. Изобрел велосипед или нет?

Форма без объекта. Изобрел велосипед или нет?

Форма без объекта. Изобрел велосипед или нет?

В наличии

Вот таким кодом

НачатьТранзакцию();
  Справочники.Справочник1.СоздатьЭлемент().ПолучитьФорму().Открыть();
ОтменитьТранзакцию();

можно получить на экране форму без объекта.

Категория:

Описание

Вот таким кодом

НачатьТранзакцию();
  Справочники.Справочник1.СоздатьЭлемент().ПолучитьФорму().Открыть();
ОтменитьТранзакцию();

можно получить на экране форму без объекта.
Ее свойства:
— форма записывается, но не создает элемент справочника
— в процедуре ПриЗаписи() формы Ссылка.Пустая()=Истина только у таких форм
— в процедуре ПередЗаписью() формы ПустаяСтрока(СправочникОбъект)=Истина только у таких форм, причем реквизиты СправочникОбъект будут заполнены введенными в форму данными. 

Используя последнее ее свойство форму можно легко реанимировать вот таким кодом:

Процедура ПередЗаписью(Отказ)
  Если ПустаяСтрока(СправочникОбъект) Тогда
    СпрОбъект=Справочники.Справочник1.СоздатьЭлемент();
    СпрОбъект.Код=СправочникОбъект.Код;
    СпрОбъект.Наименование=СправочникОбъект.Наименование;
    Для Каждого Рекв Из СправочникОбъект.Метаданные().Реквизиты Цикл
     СпрОбъект[Рекв.Имя]=СправочникОбъект[Рекв.Имя];
    КонецЦикла;
    СправочникОбъект=СпрОбъект;
  КонецЕсли;
КонецПроцедуры

после этого форма ведет себя как обычно.

has been added to your cart:
Оформление заказа