Пример вывода нескольких ФорматированныхДокументов в HTML поле в виде последовательных комментариев с вложениями

20.09.13

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

Пример вывода списка Форматированных документов в виде комментариев с вложениями в HTML поле.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Пример конфигурация
.cf 10,26Kb
24
24 Скачать (1 SM) Купить за 1 850 руб.

В ходе работы над 1 из проектов столкнулся с написанной еще до меня системой обращений к ИТ, которая представляла собой Бизнесс-процесс (далее БП) с рядом этапов реализации, возможностью добавления комментариев пользователем и исполнителем в ходе работы в поля типа "ФорматированныйДокумент" (далее ФД).

Но так как система была написана давно и имела свои недоработки мне поручили ее тюнинг и улучшение.

Изначально в системе был реализован БП в котором на этапе инициализации пользователь описывал свое обращение к отделу ИТ в поле типа "ФД" УФ (Управляемая форма), далее это обращение сохранялось вместе с сохранением и стартом БП.

 В результате появлялась первая задача в которой начальник отдела ИТ определял исполнителя, ориентировочные сроки реализации, важность задачи и прочее, а так же вводил свой ккомментарий в поле типа "ФД".

И так далее на каждом этапе работы (отдельная задача БП).

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

 Недостаток системы был в том, что в случае добавления картинок в ФД, небыло нормальной системы вывода их в комментарии в результате чего имеющийся алгоритм выводил определенный текст в HTML в требуемом формате, но с мертвыми ссылками на картинки (скрины) и функция вставки изображений в HTML документ никак не использовалась.

Суть проблемы была в следующем: "ФД" разбирался на HTML текст и вложения (метод объект "ФД" - ПолучитьHTML), после разбора текст шел в состав общего HTML документа (списка комментариев), но всвязи с тем, что ссылки в формате 1С на вложения "ФД" выгруженые в структуру получить невозможно, а значит нельзя и вставить в тело HTML документа ссылки на вложения были мертвыми (объект "Структура" физически хранится лишь в памяти до окончания работы алгоритма формирования HTML документа).

 В результате изысканий мной было (к сожалению) придумано лишь 1 решение :

HTML текст поддерживает возможность вставки элементов вложений в виде Base64 кодировки и т.к.ФД позволяет вставлять в виде вложений лишь картинки был написан следующий код, который позволяет получить чистый код HTML вставки "ФД" с вложениями в виде кодировки Base64 (в демо-конфигурации это функция общего модуля).

Код общего модуля 

Как использовался этот код в ходе тестирования демонстрирует код обработки ниже. При определенных навыках и фантазии можно сделать красиво оформленные комментарии как на форумах и т.п. Но в базовом примере я этим заморачиваться не стал. (в рабочей же конфе выводится заголовок комментария, фото пользователя его оставившего из справочника сотрудники и подпись).

Собственно код УФ обработки выглядел так:

КодМодуляФормыОбработки

На форме обработки находится HTML поле куда компануются комментарии и 2 поля типа "ФД" в которые можно забить данные для теста.

Смотрите скрин или пример конфигурации.

Форма обработки и тестовых полей до вывода комментариев

Результат выполнения алгоритма вывода списка комментариев из 2 ФД:

 

Результат работы алгоритма


P.S: Статьи пишу редко Sealed так что просьба за оформление текста сильно не гневаться и ногами не пинать.

P.S.S: Код 1С пришлось заменить картинками, т.к. некоторые части содержали HTML теги и в результате залива статьи текст кода становился кривым и неверным. Все реальные коды можно получить из приложенной конфы или методом перенабора со скринов Innocent

ФорматированныйДокумент HTMLПоле

См. также

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

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

15500 руб.

02.09.2020    185079    1033    403    

969

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

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

8400 руб.

20.08.2024    24988    163    86    

161

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

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

22200 руб.

06.10.2023    20502    52    19    

86

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

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

15000 руб.

10.11.2023    13788    57    33    

77

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

Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки.

9360 руб.

17.05.2024    30723    105    48    

148

Работа с интерфейсом Анализ учета Мониторинг Платформа 1С v8.3 8.3.14 1C:Бухгалтерия 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Платные (руб)

Создайте свой функциональный интерфейс в любой конфигурации 1С с помощью подсистемы "Инфоборды". Настраивайте панели виджетов с метриками, индикаторами и показателями на начальном экране. Подсистема реализована в форме расширения 1С.

9600 руб.

27.03.2025    899    3    5    

8

Инструментарий разработчика Программист 8.3.14 Россия Платные (руб)

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

20000 руб.

07.10.2021    19174    7    32    

43
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Sirus Virus 111 20.09.13 10:47 Сейчас в теме
При желании можно формировать упорядоченный "СписокЗначений" (значения типа "ФД") и написать алгоритм их вывода в виде ленты.
2. kapustinag 20.09.13 20:26 Сейчас в теме
Может быть, лучше для хранения картинок и файлов иного формата выделить файловый ресурс?
Тогда в тексте HTML можно использовать тэги типа IMG SRC=..., или ссылки на эти файлы.
При этом инф.база не будет засоряться двоичными данными.
3. Sirus Virus 111 21.09.13 00:12 Сейчас в теме
В компании где это используется жесткая политика безопасности и вариантов доступа к файловым ресурсам нет.
Изначально пытался сделать сохранение рисунков во временные файлы из тела ФД при парсе и обработке, но увы не взлетело и поэтому был изобретен такой вот велосипед :)

Да решение может и не совсем удобное, но пример выложен лишь как вариант на случай "а может кому пригодится" :)
4. Поручик 4675 21.09.13 01:03 Сейчас в теме
(0) Спасибо, я-то голову ломал, как же картинки в тексте письма отправлять. И главное дело, знал про вставку изображений в виде кодированных по base64.
Пошёл убиваться об стенку, Акела лоханулся. Теперь попробую ваш метод.
5. Steelvan 307 25.02.15 22:24 Сейчас в теме
Оформление кода такое, как будто делал тупой американец.

А, понял почему звездочки раздражают, они же на их флаге :)
6. Steelvan 307 25.02.15 22:26 Сейчас в теме
Два слеша + текст более чем достаточно для описания блока небольшого блока строк.
7. Sirus Virus 111 26.02.15 12:42 Сейчас в теме
(6) Ну извини :) привык подробно комментировать свой код да и тем кто приходит работать после проще разобраться и в целом он становится читабельней.
Оставьте свое сообщение