Имя: Пароль:
1C
1С v8
УФ и Сообщить()
,
0 Name2006
 
19.08.13
13:20
УТ11.
В документе "Реализация" требуется при проведении проверять условие, и при его выполнении информировать пользователя. При этом отказ от проведения не требуется, требуется только сообщить пользователю.

Раньше, до появления УФ, достаточно было написать Сообщить(ТекстСообщения).
Сейчас, на УФ, написать так тоже можно. И если в форме документа нажать кнопку "Провести", то сообщение появится в окне сообщений.
Но если нажать кнопку "Провести и закрыть" - окно сообщений закроется вместе с формой документа.

И как теперь правильно делать ?
1 andreymongol82
 
19.08.13
13:26
СообщениеПользователю (UserMessage)
Свойства:

ИдентификаторНазначения (TargetID)
КлючДанных (DataKey)
Поле (Field)
ПутьКДанным (DataPath)
Текст (Text)

Методы:

Сообщить (Message)
УстановитьДанные (SetData)

Конструкторы:

По умолчанию

Описание:

Предназначен для хранения параметров сообщения, которые необходимо вывести пользователю.
Если сообщение еще не было показано пользователю (такое может быть при работе на стороне сервера, в фоновом задании, внешнем соединении или Web-сервисах), можно получить накопленные сообщения методом ПолучитьСообщенияПользователю.
2 jj369
 
19.08.13
13:28
Сделать свою подписку на событие РеализацияПриПроведении, где будет сообщение:

        Сообщение = Новый СообщениеПользователю;
        Сообщение.Текст = СокрЛП("что-то сообщить");
        Сообщение.Поле = СокрЛП(Источник);
        Сообщение.УстановитьДанные(СокрЛП(Источник));
        Сообщение.Сообщить();
3 olegves
 
19.08.13
13:30
(0) проверяй перед закрытием наличие окна сообщений
4 Name2006
 
19.08.13
13:42
(1),(2) Это все замечательно.
Но если нажимаешь "Провести и закрыть" - сообщение закрывается вместе с формой документа.

(3) Спасибо, но не в тему.
5 andreymongol82
 
19.08.13
13:49
6 Name2006
 
19.08.13
13:56
(5) Вот это гораздо лучше. Спасибо.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.