1. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление

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

Тема в разделе "1C и всё что с ней связано", создана пользователем roddik, 6 авг 2008.

  1. roddik

    roddik Гость

    Репутация:
    0
    Привет! Хочу из кода, при выполнении некоторых условий, вызывать отображение формы, на ней нужно прописать нужный текст, считать, какая кнопка была нажата и закрыть форму. Форму в обработках создал, как ее показывать, менять на ней текст и считывать ответ? Спасибо!
     
  2. Hryv

    Hryv Гость

    Репутация:
    0
    Если нужен просто текст и ответ в виде нажатой кнопки, то есть функция Вопрос()
     
  3. roddik

    roddik Гость

    Репутация:
    0
    Нет, к сожалению, вариантов ответа больше: в формочке наверху написано, что не найдено контрагента с таким-то названием, есть варианты - выбрать существующего, для этого есть поле, кнопка для создания нового - нужно еще потом как-то узнавать, кого создали, и кнопка "пропустить"..
     
  4. GRblSHA

    GRblSHA Гость

    Репутация:
    0
    Для того, чтобы открыть существующую в конфигурации форму (документ к примеру) надо прописать:

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

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

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

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

    Тоже самое во внешней обработке можно любые кнопочки сделать!
     
  5. roddik

    roddik Гость

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

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

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

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

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

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

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

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

    Hryv Гость

    Репутация:
    0
    Для 7.7 изучи подробно ОткрытьФорму() и ОткрытьФормуМодально()
    Они с разными параметрами работают для любых форм (Док, Справочник, Отчет, Журнал ...)

    На их основе сделаешь то что тебе надо
     
  7. roddik

    roddik Гость

    Репутация:
    0
    Да, учу потихоньку..) Только вот самый главный вопрос, как проверять, что написал? Надеюсь, что сохранять конфиг, открывать предприятие и вызывать то, что написал - правильный способ
     
  8. KiR

    KiR НЕ шибка опытный програмер)

    Репутация:
    0
    Регистрация:
    11 сен 2007
    Сообщения:
    1.581
    Симпатии:
    0
    roddik
    Способ правельный. Но перед сохранением конфига можешь еще и синтаксис проверять чтобы избежать лишних ошибок
     
Загрузка...

Поделиться этой страницей