HelpF.pro

Как вывести всплывающее сообщение пользователю?

В 8.2 нужно воспользоваться функцией ПоказатьОповещениеПользователя
Код 1C v 8.2 УП
 ПоказатьОповещениеПользователя("Документ не записан!", 
                                                      "http://doc.ru", 
                                                       "О правилах заполнения документа, читайте здесь!", 
                                                       БиблиотекаКартинок.Важно);   


Код 1C v 8.х
 #Если Клиент Тогда
			Форма = Источник.ПолучитьФорму();
			Если Форма.Открыта() Тогда
				ПоказатьОповещениеПользователя("Ошибка", ПолучитьНавигационнуюСсылку(Источник.Ссылка), "Не указана организация. Невозможно распределить платежи по документам расчетов с контрагентом", БиблиотекаКартинок.Ошибка32);
			КонецЕсли;
		#КонецЕсли
   



В 7.7 и 8.1 всплывающие окна отсутствуют, но это легко решается использованием:
Код 1C v 7.x
 WshShell=СоздатьОбъект("WScript.Shell");
WshShell.Popup("Текст сообщения",,"Текст заголовка",20);

или внешних компанент, например:
MiracleV8: Универсальная компонента для 1С 7.7 и 1С 8.x
[Tray1C] Сворачивание 1С в системный трей


Вывод иконки с восклицательным знаком в трей! Используя AutoHotkey:
Код 1C v 8.х
  //Процедура выводит или убирает сообщение мессенджера и иконку, в зависимости от бПарам
Процедура ВывестиСообщениеМессенджера(бПарам = Истина) Экспорт
#Если Клиент Тогда    
 
    сКаталог = СокрЛП(Константы.КаталогПолногоДоступа.Получить())+"БП\MessageService";
    ИмяФайла    = сКаталог + "\autohotkey.exe";
    Файл        = Новый Файл(ИмяФайла);
    
    ИмяФайлаИНИ = сКаталог + "\autohotkey.ini";
    
    Если бПарам Тогда
        ИмяФайлаИНИ_Задачи = сКаталог + "\autohotkey_Yes.ini";
    Иначе
        ИмяФайлаИНИ_Задачи = сКаталог + "\autohotkey_No.ini";
    КонецЕсли;
    
    ФайлИНИ_Задачи = Новый Файл(ИмяФайлаИНИ_Задачи);
    
    Если Файл.Существует() И ФайлИНИ_Задачи.Существует() Тогда
        
        Попытка                                                                      
            КопироватьФайл(ИмяФайлаИНИ_Задачи,ИмяФайлаИНИ);
            ЗапуститьПриложение(ИмяФайла, сКаталог);
            Если бПарам Тогда 
                ПараметрыСеанса.бСостояниеМессенджера = Истина;
            Иначе
                ПараметрыСеанса.бСостояниеМессенджера = Ложь;
            КонецЕсли;
        Исключение
            
        КонецПопытки;
        
    КонецЕсли;
#КонецЕсли 
КонецПроцедуры   

Опубликовано на сайте: https://HelpF.pro
Прямая ссылка: https://HelpF.pro/faq82/view/951.html