Редактирование и просмотр JSON в интерфейсе 1С (через поле HTML документа)


Позволяет открыть любой текст JSON в поле HTML Документа в удобном для редактирования виде, и получить результаты редактирования.
Обработка является оберткой над сайтом http://jsoneditoronline.org, для работы обработки требуется доступ к интернету на клиенте.

Вступление

Возникла задача удобного просмотра и редактирования JSON объектов в интерфейсе 1С.

Поиском на infostart нашел несколько похожих по смыслу обработок но реализованных через дерево значений 1С, после использование онлайн инструментов http://jsoneditoronline.org/  использование интерфейса построенного на дереве значений показалось сильно не удобным.

В результате решил сделать собственный вариант который позволил бы использовать все возможности http://jsoneditoronline.org/ в интерфейсе 1С. 

 

Как основа для обработки используется сайт http://jsoneditoronline.org/ (так же по похожему принципу можно использовать и другие, но этот на мой взгляд самый удобный и хорошо переваривает большие JSON объекты).

Основная сложность при разработке была в поиске методов Установки текста, Парсинга текста, Получения результатов, и способе их вызова из 1С. 

Описание

В обработке реализованы 2 формы:

  • Форма — основная форма которая содержит пример вызова редактора.
&НаКлиенте
Процедура ТекстJSONОткрытие(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка=Ложь;
ОткрытьФорму("ВнешняяОбработка.РедакторJSON.Форма.РедакторJSON",Новый Структура("ТекстJSON",ТекстJSON),Элемент,,,,Новый ОписаниеОповещения("ОбработкаРезультатаРедактиораJSON",ЭтотОбъект),РежимОткрытияОкнаФормы.Независимый);
КонецПроцедуры

&НаКлиенте
Процедура ОбработкаРезультатаРедактиораJSON(РезультатЗакрытия,ДопПараметры) Экспорт
Если РезультатЗакрытия<>Неопределено тогда
ТекстJSON=РезультатЗакрытия
КонецЕсли;
КонецПроцедуры
  • РедакторJSON —  форма редактора (для использования можно встроить в конфигурацию в качестве общей формы). 

При открытии формы редактора, происходит загрузка сайта в "Поле HTML документа", затем: 

  • Отключается реклама;
  • Удаляются лишние блоки оформления;
  • Путем вызова JS функций Устанавливается текст JSON;
  • Инициируется парсинг JSON и построение дерева объектов.

Далее можно работать с текстом, добавлять объекты, изменять значения (как в редакторе так и в дереве). 

При нажатии на "Сохранить и закрыть":

  • Извлекается текст с учетом внесенных изменений;
  • Передается в качестве результата закрытия;

 

Проверялось на Windows, Тонкий/Толстый клиенты, 8.3.14.1630.

Достоинства

1. Удобный интерфейс
2. Наглядное отображение структуры JSON
3. Широкий возможности по редактированию структуры и содержимого JSON

Leave a Comment

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