Перенос инструкций из word во встроенную справку 1С с сохранением картинок и форматирования

22.04.20

Разработка - Инструментарий разработчика

Делюсь простым и удобным способом переноса справки/инструкций из ворда (и не только) во встроенную справку 1С с сохранением картинок и форматирования.

Длинное предисловие

Наиболее удобным местом хранения информации по настройкам является встроенная справка в 1с, но редактировать ее крайне неудобно.

Особенно напрягает, когда приходится вставлять много картинок. С текстом еще ладно, форматирование при копировании сохраняется более-менее нормально, а вот вставка картинки очень неудобна, особенно если картинка в буфере обмена. Для того, чтобы ее вставить – надо сохранить на диск, в справке вставить картинку, выбрать в диалоге вставки. В общем и целом жутко не удобно…

Раньше я периодически искал обходные пути редактирования справки, но нормальных способов как-то не попадалось. Везде затраты на выполняемые действия либо равнялись, либо превосходили ручной труд.

Но как известно – лень двигатель прогресса, и чем больше лень, тем мощнее двигатель ))

Попалась задача мне: сделать синхронизацию календаря в УПП и в Outlook через EWS + мобильное приложение.
Задачу сделал, написал подробную инструкцию, в ворде по мобильному приложению занимала 83 страницы, 57 картинок перемешано с текстом. Инструкция по синхронизации с EWS Outlook занимала 15 страниц +18 картинок.

Получилось круто и чтоб эту инструкцию по работе все подсистемы не потерять – решил ее встроить в справку плана обмена. Но как представил сколько придется проделать работы, чтобы перенести ее нормально в справку – такая лень одолела, что аж жуть.

Тут во мне как никогда заиграли гены инженера, вручную все это делать очень не хотелось, по примерной оценке – это 3-4 часа даром потраченного времени. Прошерстил интернет, нормального ничего не нашел, но получился час потраченного времени.

Решил сделать перерыв, мозг отдохнул и выдал гениальную идею: справку можно выгрузить в файлы, подменить ее и загрузить обратно.

Попробовал это сделать на внешней обработке – все получилось, но картинки сохранялись в «хранилище обработки», т.е. когда я код справки вставлял в план обмена – в конфигураторе все отлично показывалось до перезапуска, а в режиме предприятия были битые картинки.

Единственный путь дальше – это выгрузка всей конфигурации в файлы.

Для тестов создал пустую базу, добавил в ней объект и справку с небольшим текстом и картинкой для тестов, выгрузил, подменил, загрузил обратно и чудо: справка была с картинками в исходном форматировании и потратил я на это минут 10 от силы. Моей радости не было предела, инженер внутри ликовал!

Но следующая мысль омрачила радость: придется выгружать и загружать полностью всю конфигурацию, что является сильно большой проблемой, особенно для УПП, ERP, КА и т.п.

Еще один перерыв и снова гениальная мысль: можно создать пустую конфигурацию, создать в ней объект с нужным именем, сделать в нем тестовую справку, выгрузить в файлы, подменить справку, загрузить из файлов и потом сравнить и объединить с исходной конфигурацией, перенеся только справочную информацию.

Быстренько набросал тестовую справку, проделал эту операцию и справка после сравнения и объединения перенеслась со всеми картинками и форматированием, прекрасно отображалась и в конфигураторе и в режиме предприятия.

Радости было меньше, но все же ))

Подробное описание алгоритма переноса справки из ворда

Итак, для того, чтобы перенести текст, с картинками и форматированием в ворд необходимо этот ворд сохранить в html

Кстати говоря, не обязательно из ворда, наша задача получить html с картинками, который можно будет подменить в справке, т.е. можно взять и готовую html страницу и все что угодно, что можно сохранить в html.

Возьмем для примера какую-нибудь большую, но более обезличенную справку с другого проекта, с меньшим количеством персональных данных проекта )))

 

Далее я пытался сохранить это в html средствами ворда. Первоначально не подошло то, что ворд сохраняет html не так, как надо: он картинки отображает в imagedata, а 1С это не понимает.

 

Через настройки сохранения ворда удалось добиться сохранения картинок в теге IMG, который нужен для 1С, но напрягало обилие ненужной информации: определения стилей, ссылки на другие ресурсы, обилие комментариев. В общем читать и разбираться в этом html было не удобно.

Стал искать другие способы сконвертировать ворд в html, прошелся по разным онлайн сервисам в интернете. Где-то не очень сохраняло, где-то без картинок, где-то также как ворд.

Из всех – понравился только сервис https://document.online-convert.com

Он конвертировал ворд в простой до безобразия html нужной структуры.

Не обязательно использовать прямо этот сервис, может кто еще лучше найдет.

Переходим на страницу https://document.online-convert.com/ru/convert/docx-to-html

Загружаем нужный ворд и и нажимаем начать конвертирование. После завершении конвертирования сервис предложит сохранить архив с содержимым html.

Соглашаемся и сохраняем в папку, далее распаковываем архив. В нем будет один html и куча картинок, которые были у Вас в ворде.

По структуре html получился удивительно простым и понятным, ничего лишнего. Аж приятно глазу смотреть на него.

Далее необходимо создать пустую конфигурацию обязательно с режимом совместимости как в исходной базе и желательно на такой же версии платформы.

 

В новой конфигурации создаем один нужный нам объект. Я покажу на примере демо УПП, лучше скопировать имя из исходной конфигурации, так проще будет потом при сравнении объединении:

 

Далее, чтобы выгрузился пример справки – добавим в нее текст и картинку:

 

После чего сохраняем конфигурацию и выгружаем в файлы через Конфигурация – выгрузить конфигурацию в файлы.

 

Выбираем пустую папку и выгружаем, в папке находим наш справочник и его выгруженную справку.

Нам необходимо подготовить ранее сформированный html в таком же виде

Первое что делаем – копируем имя папки, создаем в папке, сконвертированным на сайте

и переносим в новую папку все файлы изображения

Теперь если открыть html «Инструкция МП склад.html», то в нем все изображения будут битые, потому что мы перенести файлы изображений, а пути не поменяли в самом файле html

Поэтому открываем файл «Инструкция МП склад.html» в любом текстовом редакторе.

Я предпочитаю Notepad++, т.к. в нем удобно и куча всяких разных плагинов есть.

Далее надо заменить путь к картинке, добавив папку:

Проще всего глобальным поиском заменить строку <IMG SRC=" на строку <IMG SRC="_files/

Так и сделаем, заменяем, сохраняем изменения в файле и открываем еще раз файл «Инструкция МП склад.html» в браузере, убеждаемся, что все картинки на месте

 

Папка с картинками готова, теперь необходимо переименовать файл «Инструкция МП склад.html» в ru.html

 

Далее удаляем файл ru.html и папку _files в выгруженной справки из пустой конфигурации.

И копируем на ее место подготовленные файлы.

Далее необходимо загрузить конфигурацию из файлов:

 

После чего в справке нашего объекта должен появиться текст с картинками из ворда:

 

Чтобы перенести эту справку в УПП – выгружаем cf  пустой конфигурации в файл

 

Далее заходим в конфигуратор УПП и сравниваем с пустой конфигурацией:

 

Откроется окно сравнения и объединения конфигураций, в нем снимаем все галки, кроме справочной информации нужного объекта (для этого, кстати, мы и называли справочник в пустой конфигурации точно также, чтобы при сравнении они были сопоставлены по именам.

Нажимаем выполнить, после чего зайдем в справку нашего объекта и проверим ее:

 

Обновим конфигурацию базы  данных и проверим справку в режиме предприятия

Ура!!! Все работает, громадная справка быстро и легко перенесена в конфигурацию!

Краткий алгоритм действий по переносу справки из ворд

 

1. Переходим на страницу https://document.online-convert.com/ru/convert/docx-to-html

Загружаем нужный ворд и и нажимаем начать конвертирование. После завершении конвертирования сервис предложит сохранить архив с содержимым html.

2. Распаковываем архив с  сконвертированным файлом и видим один html и кучу файлов картинок.

3. Создаем пустую конфигурацию обязательно с режимом совместимости как в исходной базе и желательно на такой же версии платформы.

В пустой конфигурации создаем объект с таким же именем, в который надо поместит справку (в нашем примере Справочник.МойСправочникСоСправкой).

В справочнике заполняем справку небольшим текстом и одной или несколькими картинками.

Выгружаем пустую конфигурацию в ФАЙЛЫ через меню Конфигурация - Выгрузить конфигурацию в файлы.

Находим нашу справку в каталоге выгрузки конфигурации, в папке должны лежать файл ru.html и папка _files с изображениями справки

4. Идем в папку с сконвертированной справкой в пункте 2.

Создаем там папку с именем _files и переносим туда все картинки.

Открываем html сконвертированной справки в любом текстовом редакторе и заменяем строку <IMG SRC=" на строку <IMG SRC="_files/

Переименовываем файл html в ru.html

Запускам файл ru.html в браузере и убеждаемся, что все картинки и текст с нужным форматированием на месте

5. Удаляем файл ru.html и папку _files с изображениями в каталоге распакованной пустой конфигурации, полученной на шаге 3.

Копируем подготовленный файл ru.html и папку _files с изображениями из пункта 4 в каталог файлов распакованной конфигурации.

6. Загружаем конфигурацию из файлов через меню конфигурация - Загрузить конфигурацию из файлов.

7. Проверяем, что справка загрузилась в Справочник.МойСправочникСоСправкой корректно.

8. Сохраняем пустую конфигурацию с загруженной справкой в файл через меню Конфигурация - Сохранить конфигурацию в файл.

9. Открываем конфигуратор базы приемника, нажимаем  меню Конфигурация - Сравнить, объединить с конфигурацией из файла.

10. В открывшемся окне сравнения конфигураций снимаем ВСЕ галки и оставляет только флажок на Справочной информации нужного объекта.

Объединяем.

11. Проверяем справку в конфигураторе, обновляем и проверяем справку в режиме предприятия.

12. Справка перенесена, радуемся!

Послесловие

 

 

p/s/ если не сложно – поддержите статью плюсом, пусть об этом способе узнают как можно больше народу.

См. также

SALE! 20%

Infostart Toolkit: Инструменты разработчика 1С 8.3 на управляемых формах

Инструментарий разработчика Роли и права Запросы СКД Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

13000 10400 руб.

02.09.2020    122233    673    389    

715

SALE! 25%

Infostart PrintWizard

Пакетная печать Печатные формы Инструментарий разработчика Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:Конвертация данных 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.

18000 15300 руб.

06.10.2023    7313    22    6    

39

SALE! 20%

Infostart УДиФ: Управление данными и формами

Инструменты администратора БД Инструментарий разработчика Роли и права Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 8000 руб.

10.11.2023    3560    11    1    

34

SALE! 30%

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

3600 2520 руб.

14.01.2013    177768    1074    0    

849

Многопоточность. Универсальный «Менеджер потоков» 2.1

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

5000 руб.

07.02.2018    99360    239    97    

296

[ЕХТ] Фреймворк для Расширений 1С

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Платные (руб)

"Фреймворк для Расширений 1С" это универсальное и многофункциональное решение, упрощающее разработку и поддержку создаваемых Расширений. Поставляется в виде комплекта из нескольких Расширений с открытым исходным кодом. Работает в любых Конфигурациях в режиме Управляемого приложения с режимом совместимости 8.3.12 и выше без необходимости внесения изменений в Конфигурацию.

3000 руб.

27.08.2019    18124    6    8    

40

1С HTML Шаблоны / HTML Templates

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Быстрая и удобная обработка для работы с шаблонами HTML. Позволяет легко и быстро формировать код HTML.

2040 руб.

27.12.2017    28114    3    10    

15

Выполнение произвольного кода или запроса с параметрами через Web-сервис (замена COM-подключений)

Инструментарий разработчика Обмен между базами 1C Платформа 1С v8.3 Платные (руб)

В процессе работы в 1С часто возникает потребность получить данные из другой базы.  Обычно это делается через COM-соединение, и время выполнения запроса при этом оставляет желать лучшего. В данной публикации представлено универсальное решение, позволяющее практически моментально выполнить произвольный код или запрос с параметрами в другой информационной базе через Web-сервис.

2400 руб.

24.09.2019    23605    15    15    

32
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. VKislitsin 960 22.04.20 14:42 Сейчас в теме
Круто! Спасибо за исследование!
От себя добавлю, что при загрузке конфигурации из файлов есть возможность загружать не все, а выборочно. Подробно об этом написано на wonderland и в документации. Я описывал такой способ в своей публикации о массовом изменении режима поддержки для объектов конфигурации. Но выгрузить конфигурацию нужно будет целиком, частичную выгрузку Платформа пока не позволяет.
77dream77; Созинов; +2 Ответить
2. user623969_dusa 22.04.20 15:31 Сейчас в теме
читал ради того чтобы увидеть как перенесли картинки - где они теперь в базе или во внешних файлах - суть не увидел?
3. VKislitsin 960 22.04.20 15:45 Сейчас в теме
(2) Насколько я понимаю, картинки после всех манипуляций находятся не в базе и не в файлах. Они в Конфигурации. Ну или всё же можно сказать что в базе, но не в пользовательских данных, а в таблице Config в виде двоичных данных.
4. 77dream77 421 22.04.20 16:37 Сейчас в теме
(3) да, если Вы выгрузите cf, то вместе с ним выгрузится и справка с картинками.
это редактирование именно стандартной справки 1С, ни новая подсистема, ни отдельные объекты
это справка объектов/форм, которая редактируется через конфигуратор
5. VmvLer 22.04.20 16:53 Сейчас в теме
частично проходил путь автора - тоже "смущало" очень, что я долго в ворде набирал чудо-инструкцию со скринами, но нерадивые юзеры не помнили где она, удаляли письма и т.д.
возникала логичная мысль закинуть содержимое файла в справку и ...баба с возу.

но как и автор натыкался на рогатки платформы, тоже были попытки загрузить, но так далеко как автор не пошел.

Статья годная.

Хотя 10 шагов непростых шагов на конвертацию это очень много, но если эти шаги избавят от сотен звонков типа: "Але, где инструкция - я забыла как печатать документ", то можно пойти на эти шаги.
6. Perfolenta 204 22.04.20 18:27 Сейчас в теме
Есть еще один путь... справка 1С понимает картинки внедренные в код HTML в формате Base64... я проверял...
так что можно из ворда сохранять в формате "Веб страница с фильтром" (или через сервис, как автор предложил), а потом сделать скрипт, который заменит в коде HTML картинки на их аналог в Base64...
8. Perfolenta 204 22.04.20 22:02 Сейчас в теме
(6) написал маленькую программку на Перфоленте для внедрения картинок в HTML... кому надо пользуйтесь...
http://promcod.com.ua/data/media/EmbeddingImagesInHTML.zip
переписать на 1С или на OneScript совсем просто... исходник в архиве...
9. Perfolenta 204 23.04.20 02:07 Сейчас в теме
(8) что интересно, справка 1С, как и все браузеры, понимают внедренные в HTML картинки, а вот сам Ворд не понимает...
20. Perfolenta 204 25.04.20 16:52 Сейчас в теме
(8) кстати, оказалось, что такие файлы, с внедренными картинками, удобно на лету в поле HTML документа вставлять... в макет вставляем HTML документ, в него вставляем текст сделанный в Ворде преобразованный в текст HTML с внедренными картиками и всё работает... причем текст в макете легко править в любое время и картинки ни куда не деваются...

ИмяМакета="МояСтраничка";
ЭлементыФормы.ПолеHTMLДокумента1.УстановитьТекст(ПолучитьМакет(ИмяМакета).ПолучитьТекст());
7. Созинов 22.04.20 19:41 Сейчас в теме
Отличное решение! Спасибо!
10. CheBurator 3119 23.04.20 13:44 Сейчас в теме
Плохое решение. Программистом для программиста.
Что делать если я-разработчик - обучаю консультанта, консультант готовит доку..?
12. 77dream77 421 23.04.20 16:19 Сейчас в теме
(10) так я и не объявлял, что это решение для кого-то, кроме программиста.
в Кому стоит Программист
11. Yashazz 4709 23.04.20 14:32 Сейчас в теме
Мдя... Это называется "простое и удобное решение"?.. Ну и сама идея через выгрузки-загрузки плохая. Во-первых, 1С при таком иногда необратимо уродует ссылки со справки одного объекта на другой, особенно на формы; во-вторых, чтоб вы знали, выгрузка по пакетному запуску конфигуратора и выгрузка из его же интерфейса дают совершенно разные форматы ссылок и их разное поведение (чаще кончается тоже неработоспособностью).

Словом, грустное зрелище и малополезная статья. Т.е. фокусы, описанные в ней, интересны, конечно, но пользы почти ноль. Слишком трудозатратно.

И коллега Че прав, решение узкоспециализированное.
triviumfan; +1 Ответить
13. 77dream77 421 23.04.20 16:22 Сейчас в теме
(11) Вы не внимательно прочитали, это одна из причин, почему я не предлагаю выгружать и загружать всю конфигурацию в файлы
в алгоритме четко прописано, что выгружается и загружается пустая конфигурация с одним нужным объектом.
Потом выгружается cf пустой конфигурации и через сравнение и объединение переносится ТОЛЬКО справка.
это решит обозначенную проблему и не только
Если у Вас есть более простое решение - предлагайте
17. Yashazz 4709 24.04.20 10:41 Сейчас в теме
(13)
Если у Вас есть более простое решение - предлагайте

У меня была мысль забацать com-соединение и выдрать из Ворда напрямую, но руки не дошли. Так и объектная техника VBA в помощь, и юзеру удобно... Причём возможно с применением ДобавитьОбработчик... Может кто реализует.
14. e1iana 23.04.20 22:16 Сейчас в теме
мне, как консультанту инструкция понятна, буду пробывать, спс, давно хотела что-то подобное сделать =)
15. rpgshnik 3633 24.04.20 05:37 Сейчас в теме
Однозначно плюс. Решение сложное для сопровождения, но очень удобное для конечного пользователя. Нажал вопросик - вот тебе ответы. А быстро поправить справку - увы нет возможности (особенно если РИБ).
16. gubanoff 63 24.04.20 10:23 Сейчас в теме
(0) Как-то очень сложно. Я делал проще: сохраняем из Word в формате Веб-страница с фильтром. В результате картинки красиво складываются в отдельную папку "имя документа.files", а сам документ сохраняется в html и лежит рядом с папкой. В ворде вместо картинки будет указан ее путь вида
src="1.files/image001.png"
Никакого труда это распарсить и заменить на то, что нужно в итоге. Да, тут остается немного грязный html от ворда, но с этим нет больших проблем.
Код по парсингу для примера:
	Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
	Диалог.ПроверятьСуществованиеФайла = Истина;
	Диалог.Фильтр = "HTML файл (*.htm, *.html)|*.htm|*.html";
	Если Диалог.Выбрать() Тогда
		Текст = Новый ТекстовыйДокумент;
		Текст.Прочитать(Диалог.ПолноеИмяФайла);
		ТекстФайла = Текст.ПолучитьТекст();
		
		мКартинок = НайтиФайлы(Диалог.Каталог, "*", Истина);
		СоответствиеКартинок = Новый Соответствие;
		Для каждого ТекКартинка Из мКартинок Цикл
			// вариант хтмл
			СоответствиеКартинок.Вставить("<IMG SRC=""" + ТекКартинка.Имя + """", "<IMG SRC=""" + ТекКартинка.ПолноеИмя + """");
			// вариант ворд
			СоответствиеКартинок.Вставить("src=""" + СтрЗаменить(СтрЗаменить(СтрЗаменить(ТекКартинка.ПолноеИмя, Диалог.Каталог, ""), " ", "%20"), "\", "/") + """", "src=""" + ТекКартинка.ПолноеИмя + """");
		КонецЦикла; 
		ЗаменаСимволов = Новый Соответствие;
		//ЗаменаСимволов.Вставить("­", ""); // это мягкий перенос (с тире), пусть будет
		ЗаменаСимволов.Вставить(Символы.Таб, "");
		
		Для каждого ТекКартинка Из СоответствиеКартинок Цикл
			ТекстФайла = СтрЗаменить(ТекстФайла, ТекКартинка.Ключ, ТекКартинка.Значение);
		КонецЦикла; 
		Для каждого ТекЗамена Из ЗаменаСимволов Цикл
			ТекстФайла = СтрЗаменить(ТекстФайла, ТекЗамена.Ключ, ТекЗамена.Значение);
		КонецЦикла; 
		Содержание = ТекстФайла;
		ЭлементыФормы.ИсходникСодержания.УстановитьТекст(Содержание);
		ЭлементыФормы.ПолеСодержания.УстановитьТекст(Содержание);
	КонецЕсли;
Показать
Дмитрий74Чел; f333; comptr; +3 Ответить
18. aspirator23 339 24.04.20 10:56 Сейчас в теме
Здорово, тоже сталкивался с переносом справочной информации. Терра инкогнита. :)
19. dmitry1975 335 25.04.20 10:49 Сейчас в теме
Способ безусловно имеет право на существование. Но не всегда это удобно.
У нас например большое количество внешних обработок, отчетов. И при необходимости пишем справку. И соответственно при запуске обработки/отчета пользователь имеет возможность тут же просмотреть справку с картинками, и всем чем нужно.

Делаем это следующим образом:
1. Подготавливается документ справки,например в MS WORD, сохраняется в формат .pdf
2. В обработке создается макет с двоичными данными, и в него помещается подготовленный файл справки.
3. На форме обработки создается кнопочка, которая получает двоичные данные из макета, записывает во временный файл с расширением .pdf и запускает файл на исполнение.

Код простейший:

// Открывает инструкцию по пользованию обработкой
Процедура ОткрытьИнструкцию()
	
	ДвоичныеДанные = ПолучитьМакет("мИнструкция");	
	ИмяВременногоФайла = ПолучитьИмяВременногоФайла("pdf");
	ДвоичныеДанные.Записать(ИмяВременногоФайла);
	ЗапуститьПриложение(ИмяВременногоФайла);
	
КонецПроцедуры
Показать


В результате открывается справка в программе просмотра PDF, установленной по умолчанию в системе. Профит!
Плюс что внешнюю обработку легко обновить не запрещая пользователям работу в программе.
lena_pp; da_1c; MikeLetto; +3 Ответить
21. triviumfan 93 27.04.20 13:48 Сейчас в теме
Оставьте свое сообщение