[РЕШЕНО] Вопрос по Диалогу с пользователем

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем Zerder, 25 июл 2015.

  1. TopicStarter Overlay
    Zerder
    Offline

    Zerder

    Регистрация:
    18 июл 2015
    Сообщения:
    9
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте.
    Совсем недавно начал изучать программирование в 1с, могу путаться в терминах))
    Нужно добиться следующего поведения формы:
    Перед записью элемента справочника сделать проверку реквизитов, если реквизит (телефон напр.) с типом данных строка не заполнен, спростить у пользователя, действительно записать элемент.
    Код как я понимаю должен быть примерно такой:
    Код:
    Если ПустаяСтрока(Объект.Телефон) Тогда
    
       Если Вопрос("Телефон не заполнен, продолжить?", РежимДиалогаВопрос.ДаНет) = КодВозвратаДиалога.Нет тогда
         Отказ = Истина;
       КонецЕсли;
    КонецЕсли;
    Но как это реализовать?Диалог можно вызвать только в клиенте, модуль объекта не подходит, при &На КлиетеПриЗаписи вызов модальных окон запрещен.Пробовал создать общий модуль, и в нем создать функцию с возвратом истина/ложь для отказа, но окно диалога так и не появляется.
  2. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.949
    Симпатии:
    149
    Баллы:
    104
    Вы идете в верном направлении. Клиентское событие "Перед записью" модуля формы - то, что Вам нужно.
    Разрешение/запрещение модальных окон настраивается на уровне свойств конфигурации (свойства корня дерева конфигурации).
    Если модальные окна запрещены (свойство "Режим использования модальности" установлено в значение "Не использовать"), тогда вместо функции "Вопрос()" следует использовать метод "ПоказатьВопрос()".

    FYI.
    http://v8.1c.ru/o7/201301nm/
    Zerder нравится это.

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