|
Как из модуля докмента вывести сообщение пользователю(тонкий клиент) | ☑ | ||
---|---|---|---|---|
0
Serega103
31.01.13
✎
11:41
|
При проведении документа программа должна сообщить пользователю о проделанных действиях, а в идеале вывести таблицу обработанных документов (при проведении программа смотрит были ли изменения по сравнению с подчиннными доками и при необходимости их меняет)
|
|||
1
Wobland
31.01.13
✎
11:41
|
сообщить, я так понимаю, не подходит?
|
|||
2
Serega103
31.01.13
✎
11:42
|
Процедура Сообщить("") ничего не выводит((
ТЗ.ВыбратьСтроку("Выбери") тоже не пашет(( |
|||
3
Evrepid
31.01.13
✎
11:51
|
СообщениеПользователю (UserMessage)
Свойства: ИдентификаторНазначения (TargetID) КлючДанных (DataKey) Поле (Field) ПутьКДанным (DataPath) Текст (Text) Методы: Сообщить (Message) УстановитьДанные (SetData) Конструкторы: По умолчанию Описание: Предназначен для хранения параметров сообщения, которые необходимо вывести пользователю. Если сообщение еще не было показано пользователю (такое может быть при работе на стороне сервера, в фоновом задании, внешнем соединении или Web-сервисах), можно получить накопленные сообщения методом ПолучитьСообщенияПользователю. В управляемых формах, в случае выполнения просмотра сообщения, выполняется следующий механизм обработки: Если у сообщения свойство КлючДанных заполнено и не совпадает с ключевым значением основного реквизита текущей формы (ссылкой объекта или ключом записи регистра сведений), то: открывается новая форма объекта, соответствующая значению свойства КлючДанных; если у сообщения свойство ПутьКДанным не заполнено, то в него проставляется имя основного реквизита открытой формы объекта; вызывается показ сообщения в только что открытой форме; выполняется перенос всех соответствующих сообщений из окна первой формы в новую форму (с таким же значением свойств КлючДанных, как у выбранного сообщения). При этом перенесенным сообщениям аналогичным образом проставляется свойство ПутьКДанным, если оно не установлено. Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение. |
|||
4
Smallrat
31.01.13
✎
11:53
|
// Формирует и выводит сообщение, которое может быть связано с элементом
// управления формы. // // Параметры // ТекстСообщенияПользователю - Строка - текст сообщения. // ОбъектИлиСсылка - Ссылка на объект ИБ или объект // Поле - Строка - наименование реквизита формы // ПутьКДанным - Строка - путь к данным (путь к реквизиту формы) // Отказ - Булево - Выходной параметр. // Устанавливается в этой процедуре в значение Истина. // // Примеры использования: // 1. Для вывода сообщения у поля управляемой формы, связанного с реквизитом объекта: // ОбщегоНазначенияКлиентСервер.СообщитьПользователю( // НСтр("ru = 'Сообщение об ошибке.'"), , // "ПолеВРеквизитеФормыОбъект", // "Объект"); // // Альтернативный вариант использования в форме объекта: // ОбщегоНазначенияКлиентСервер.СообщитьПользователю( // НСтр("ru = 'Сообщение об ошибке.'"), , // "Объект.ПолеВРеквизитеФормыОбъект"); // // 2. Для вывода сообщения рядом с полем управляемой формы, связанным с реквизитом формы: // ОбщегоНазначенияКлиентСервер.СообщитьПользователю( // НСтр("ru = 'Сообщение об ошибке.'"), , // "ИмяРеквизитаФормы"); // // 3. Для вывода сообщения из кода на сервере: // ОбщегоНазначенияКлиентСервер.СообщитьПользователю( // НСтр("ru = 'Сообщение об ошибке.'"),СсылкаНаОбъект,,,Отказ); // Процедура СообщитьПользователю( Знач ТекстСообщенияПользователю, Знач ОбъектИлиСсылка = Неопределено, Знач Поле = "", Знач ПутьКДанным = "", Отказ = Ложь) Экспорт Сообщение = Новый СообщениеПользователю; Сообщение.Текст = ТекстСообщенияПользователю; Сообщение.Поле = Поле; Сообщение.ПутьКДанным = ПутьКДанным; Если ОбъектИлиСсылка <> Неопределено Тогда Сообщение.УстановитьДанные(ОбъектИлиСсылка); КонецЕсли; Сообщение.Сообщить(); Отказ = Истина; КонецПроцедуры |
|||
5
Wobland
31.01.13
✎
11:53
|
(2) Сообщить("") ничего не выводит((
логично |
|||
6
Serega103
31.01.13
✎
12:04
|
Сейчас опробую, спасибо за подсказку, а если например нужно вывести в виде таблицы?
|
|||
7
Serega103
31.01.13
✎
12:08
|
Странно, но после вот такого кода в модуле документа
СП=Новый СообщениеПользователю; СП.Текст="привет"; СП.Сообщить(); Стало работать вот это Сообщить("Мое сообщение"); которое идет следом. Так и должно быть? |
|||
8
Serega103
31.01.13
✎
12:17
|
может кто подскажет как из модуля документа открыть форму обработки?
|
|||
9
Wobland
31.01.13
✎
12:18
|
(8) не нужно тебе этого. интерактивность без формы - зло
|
|||
10
Serega103
31.01.13
✎
12:24
|
И всё таки мне это надо, заказчик требует((
|
|||
11
Serega103
31.01.13
✎
12:35
|
ап
|
|||
12
ДенисЧ
31.01.13
✎
12:38
|
(8) не нужно этого делать. Подумай о групповом проведении. Всю интерактивность делай в форме.
|
|||
13
Defender aka LINN
31.01.13
✎
12:42
|
(10) Особенно заказчик будет счастлив, когда будет проводить обработкой пару тысяч документов. Я думаю, он вообще в экстаз впадет.
|
|||
16
ИС-2
naïve
31.01.13
✎
12:48
|
тоже спрошу, а как вывести не пропадающие сообщение при закрытии формы владельца?
|
|||
17
Wobland
31.01.13
✎
12:48
|
(16) спроси лучше, куда
|
|||
18
Serega103
31.01.13
✎
13:04
|
Спасибо что отговорили, действительно неправильно из модуля документа вызывать какие то окна. Век живи век учись.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |