Как из кода отобразить форму?

  • Автор темы Автор темы roddik
  • Дата начала Дата начала
R

roddik

Привет! Хочу из кода, при выполнении некоторых условий, вызывать отображение формы, на ней нужно прописать нужный текст, считать, какая кнопка была нажата и закрыть форму. Форму в обработках создал, как ее показывать, менять на ней текст и считывать ответ? Спасибо!
 
Если нужен просто текст и ответ в виде нажатой кнопки, то есть функция Вопрос()
 
Нет, к сожалению, вариантов ответа больше: в формочке наверху написано, что не найдено контрагента с таким-то названием, есть варианты - выбрать существующего, для этого есть поле, кнопка для создания нового - нужно еще потом как-то узнавать, кого создали, и кнопка "пропустить"..
 
Для того, чтобы открыть существующую в конфигурации форму (документ к примеру) надо прописать:

ОткрытьФорму("Документ.ФормаДиалога"); //где ФормаДиалога имя документа!

А в том документе можешь делать любые кнопки))))

Можно использовать обработку:

ОткрытьФорму("Отчет",,"путь к внешней обработке");

Тоже самое во внешней обработке можно любые кнопочки сделать!
 
Спасибо! Еще нашел у них на сайте
Как из формы открыть другую форму и получить из нее выбранное значение?

Допустим, из первой формы нужно открыть вторую форму. Для этого следует открыть вторую форму как подчиненную первой форме (или нужному элементу управления первой формы) и затем выполнить интерактивный выбор во второй форме, или вызвать метод второй формы ОповеститьОВыборе(). Результат будет доступен в обработчике события ОбработкаВыбора() первой формы (или ее элемента управления, если вторая форма открывалась как подчиненная этому элементу управления).

В модуле первой формы:

Процедура КнопкаСформироватьНажатие(Элемент)
Форма = Отчеты.Отчет1.ПолучитьФорму("Форма2",ЭтаФорма);
Форма.Открыть();
КонецПроцедуры

Процедура ОбработкаВыбора(РезультатВыбора, ИсточникВыбора)
Сообщить(РезультатВыбора);
КонецПроцедуры

В модуле второй формы:

Процедура КнопкаСформироватьНажатие(Элемент)
ОповеститьОВыборе(ПолеВвода1);
КонецПроцедуры

Хотя, там оно, вроде как, касалось 8.1, в 7.7 заработает, надеюсь? Еще, я когда пробовал по аналогии с Отчеты.Отчет1.ПолучитьФорму, использовать Обработки.ВыбратьИлиНовый..., но получил ошибку - не существует переменной "Обработки", почему так?
 
Для 7.7 изучи подробно ОткрытьФорму() и ОткрытьФормуМодально()
Они с разными параметрами работают для любых форм (Док, Справочник, Отчет, Журнал ...)

На их основе сделаешь то что тебе надо
 
Да, учу потихоньку..) Только вот самый главный вопрос, как проверять, что написал? Надеюсь, что сохранять конфиг, открывать предприятие и вызывать то, что написал - правильный способ
 
roddik
Способ правельный. Но перед сохранением конфига можешь еще и синтаксис проверять чтобы избежать лишних ошибок
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!