1С сообщеніепользователю

1С СообщеніеПользователю виводить повідомлення користувачу (після закінчення обробки) або зберігає його в чергу, якщо повідомлення неможливо вивести «прямо зараз», наприклад:
Повідомлення = Новий СообщеніеПользователю ();
Сообщеніе.Текст = "Привіт, світ!";
Сообщеніе.Сообщіть ();

У багатьох випадках повідомлення генеруються масово під час певної обробки. Наприклад, при перевірці великої таблиці, може з'явиться безліч повідомлень про помилки - в різних рядках таблиці. Або при обробці проведення. При цьому обробка може вестися на сервері або в регламентному завданні і вивести дані повідомлення важко.

1С СообщеніеПользователю записує повідомлення в «деяку» чергу, і, після закінчення обробки виводить їх користувачеві, якщо це можливо. Інакше - весь список повідомлень можливо отримати за допомогою методу ПолучітьСообщеніяПользователю ().

Щоб вивести повідомлення користувачеві за допомогою 1С СообщеніеПользователю в конкретної, вже відкритій формі, додатково потрібно встановити ідентифікатор форми:
Сообщеніе.ІдентіфікаторНазначенія = Форма.УнікальнийІдентіфікатор;

Щоб повідомлення 1С СообщеніеПользователю було виведено у спливаючому вікні у конкретного поля форми, в модулі якої виконується код, потрібно вказати «шлях» до нього:
Сообщеніе.Поле = "Найменування"; // де Найменування - це реквізит форми
Сообщеніе.Поле = "Об'ект.Наіменованіе"; // де Найменування - це реквізит об'єкта (тобто довідника, чия форма редагується)
Сообщеніе.Поле = "Товари [3] .Ціна"; // де Товари - таб.часть на формі, Ціна - колонка цієї таб.часті

Щоб зробити те ж, але в модулі іншого об'єкта (загалом модулі), потрібно додатково вказати об'єкт (СправочнікОб'ект, ДокументОб'ект і т.п.):
Сообщеніе.Поле = "Найменування"; // де Найменування - це реквізит СправочнікОб'ект
Сообщеніе.УстановітьДанние (СправочнікОб'ект);
// При подвійному натисканні на повідомлення буде відкрита форма об'єкта зі спливаючих повідомленням у необхідного поля

// для записів регістру
Сообщеніе.КлючДанних = РегістрМенеджерЗапісі.ІсходнийКлючЗапісі; // зазвичай основний реквізит форми, пов'язаний з регістром
Сообщеніе.ПутьКДанним = "Запис";

У типових конфігураціях на керованих формах для тонкого клієнта, наприклад «Управління торгівлею, редакція 11» і «Бухгалтерія, редакція 3», в загальному модулі ОбщегоНазначеніяКліентСервер є функція СообщітьПользователю (), яка «універсалізує» роботу з даним об'єктом. Синтаксис функцій в різних конфігураціях - різний.

Так як 1С СообщеніеПользователю формує список повідомлень, щоб його обнулити (наприклад, перед виконанням складної обробки), можна викликати функцію:
ПолучітьСообщеніяПользователю (Істина);

Обробити накопичився список повідомлень 1С СообщеніеПользователю, після обробки, можна наступним чином:

Схожі статті