Общая форма для вывода сообщений пользователю в HTML



Как то мне потребовалось вывести пользователю сообщение с таблицей 4 на 4.

Решил сделать для этого общую форму HTMLСообщение, пример ее вызова ниже:



СтруктураПараметров = Новый Структура("Заголовок, ТекстСообщения");

СтруктураПараметров.Заголовок = "Заключено договоров за месяц";

HTML = "

|<style>

|.xl68 {background:#D9E1F2;text-align:left;font-weight:700;}

|</style>

|<table border=1 cellpadding=2 cellspacing=0 style='border-collapse:collapse;'>

| <tr align=center style='background:#D9E1F2'>

| <th style='background:white'>19.7.<br>О заключенных договорах</th>

| <th>1. Жилые помещения</th>

| <th>2. Нежилые помещения</th>

| <th>3. Машино-места</th>

| </tr>

| <tr align=right>

| <td class=xl68>19.7.1 Количество договоров</td>

| <td>%1</td>

| <td>%2</td>

| <td>%3</td>

| </tr>

| <tr align=right>

| <td class=xl68>19.7.2 Площади объектов</td>

| <td>%4</td>

| <td>%5</td>

| <td>%6</td>

| </tr>

| <tr align=right>

| <td class=xl68>19.7.3 Цена договоров</td>

| <td>%7</td>

| <td>%8</td>

| <td>%9</td>

| </tr>

|</table>";



СтруктураПараметров.ТекстСообщения = СтрШаблон(HTML, м[0], м[1], м[2], м[3], м[4], м[5], м[6], м[7], м[8]);

ОткрытьФорму("ОбщаяФорма.HTMLСообщение", СтруктураПараметров);




На всю форму размещен строковый реквизит ТекстСообщения, с видом "Поле HTML документа".

В модуле формы добавил событие:



&НаСервере

Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)



Заголовок = Параметры.Заголовок;

ТекстСообщения = "<html><body><table height=100% align=center><tr><td>" + Параметры.ТекстСообщения + "</td></tr></table></body></html>";



КонецПроцедуры




Чтобы текст сообщения всегда был по центру формы он помещен во внешнюю таблицу с 1 ячейкой и высотой 100%.



✍️ @odin1C_rus