1Chart - мощь HTML5 диаграмм библиотеки ToastUI в 1С

21.12.23

Разработка - Работа с интерфейсом

Красивые диаграммы и графики средствами javascript библиотеки ToastUI для формы HTML и выгрузки на сайт.

 

1Charts

Библиотека использования диаграмм ToastUI для 1С:Предприятие

ToastUI Chartshttps://github.com/nhn/tui.chart

Репозиторий 1Charts: https://github.com/Bayselonarrend/1Charts

 

Приемущества использования диаграмм ToastUI из 1С:

  • Широкие возможности по настройке
  • Универсальность формата HTML
  • Разнообразие видов диаграмм
  • Интерактивность

 

При помощи данной библиотеки вы можете создавать HTML5 диаграммы на основе ToastUI в 1С. Для этого достаточно вызывать экспортные методы модуля и передавать туда необходимые данные. Чаще всего это Категории и Серии. Для начала использования достаточно забрать общий модуль ToastUI.bsl из корня репозитория себе в конфигурацию. Больше никаких дополнительных действий не требуется, однако есть несколько важных моментов:

 

  1. Данные диаграммы скорее всего не будут отображаться в полях HTML на старых версиях 1С, где используется IE

  2. В методе HTMLМакетСтраницы(), который отвечает за формирование оснастки HTML документа, источником скрипта ToastUI прописан CDN (сторонний сервер в интернете). Если вам важно сохранять работоспособность скрипта при отсутствии доступа к Интернет, данный скрипт необходимо скачать, а в качестве источника прописать локальный путь

  3. Для отображения диаграмм в поле HTML, как результат функции по умолчанию возвращается объект типа ТекстовыйДокумент, который на стороне клиента необходимо записать на диск. Необходимость записи связана с тем, что при прямом вводе HTML как строки, WebKit блокирует выполнение js ToastUI. Если вы не собираетесь использовать диаграммы для вывода в поля HTML 1С, то в параметр ПолныйHTML (есть у любого метода диаграммы) нужно передавать Ложь. При этом, вместо текстового документа будет возвращаться строка, причем она будет содержать только скрипт формирования и контейнер - структуры документа с тегами HTML, Body, Head там не будет и готовую диаграмму можно передать, например, на сайт по Ajax.

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

//Вызов с клиента для вывода на форму

  &НаКлиенте
  Процедура ВывестиДиаграммуОбластей(Команда)
  	
  	ТекстДок = ToastUI.ДиаграммаОбластей(ВводныеКатегории, ВводныеСерии);
  	ИВФ      = ПолучитьИмяВременногоФайла("html");
  	
  	Оповещение = Новый ОписаниеОповещения("ПослеЗаписиHTML", ЭтотОбъект, ИВФ);
  	ТекстДок.НачатьЗапись(Оповещение, ИВФ);
  	
  КонецПроцедуры

  &НаКлиенте
  Процедура ПослеЗаписиHTML(Результат, ДополнительныеПараметры) Экспорт
  	РеквизитПоляHTML = ДополнительныеПараметры;
  КонецПроцедуры

 

Кастомизация диаграмм

 

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

 

Если вы хотите определить настройки один раз и потом не возвращаться к ним, то можно изменять значения в методах ОпределитьСтандартныеНастройки() и ОпределитьСтандартнуюТему(). При необходимости в отдельных случаях использовать другой набор настроек, их можно переопределить, передав в необязательный параметр Параметры, который есть у всех методов диаграмм. После определения стандартных настроек, они будут перезаписаны по ключам переданными в качестве параметра

 

Доступные диаграммы:

 

 
 Диаграмма областей
 
Гистограмма
 
"Ящик с усами" (диаграмма размаха)
 
Пузырьковая диаграмма
 
Столбчатая диаграмма
 
Столбчато-линейная диаграмма
 
Спидометр
 
Линейная диаграмма
 
Круговая диаграмма
 
Вложенная круговая диаграмма
 
Радар
 
Радиальная диаграмма
 
Диаграмма разброса

Репозиторий: 

https://github.com/Bayselonarrend/1Charts

Не забудьте поставить + ;)  Спасибо за внимание!

 

Основано на библиотеке ToastUI Charts
MIT License
https://github.com/nhn/tui.chart?tab=MIT-1-ov-file#readme
Copyright (c) 2020 NHN Cloud Corp.

 

 

 Мой GitHub:     https://gitub.com/Bayselonarrend 
 Лицензия MIT:   https://mit-license.org

web js диаграммы графики визуализация html

См. также

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    17780    19    22    

16

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

Интеграция 1С и Битрикс 24. Разработка имеет двухстороннюю синхронизацию 1С и Bitrix24 задачами. Решение позволяет создавать пользователя в 1С из Битрикс24 и наоборот. Данная разработка технически подходит под все основные конфигурации линейки продуктов 1С:Предприятие 8.3 (платформа начиная с 8.3.23). При приобретении предоставляется 1 месяц бесплатных обновлений разработки. Доступна демо-версия продукта с подключением Вашего Битрикс24

5040 руб.

04.05.2021    19844    13    17    

16

WEB-интеграция 8.3.8 Конфигурации 1cv8 Автомобили, автосервисы Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Расширение предназначено для конфигурации "1С:Предприятие 8. Управление Автотранспортом. ПРОФ". Функционал модуля: 1. Заполнение регистров сведений по подсистеме "Мониторинг", а именно: события по мониторингу, координаты по мониторингу, пробег и расход по мониторингу, текущее местоположение ТС по мониторингу 2. Заполнение путевого листа: пробег по мониторингу, время выезда/заезда, табличная часть ГСМ, места стоянок по геозонам. 3. Отчеты по данным загруженным в регистры сведений. 4. Предусмотрена автоматическая загрузка данных в фоновом режиме (условия работы данной загрузке читайте в описании товара) Модуль работает без включенной константы по настройкам мониторинга. Модуль формы предоставляется с открытым кодом, общий модуль защищен. Любой заинтересованный пользователь, имеет возможность скачать демо-версию расширения.

22656 руб.

25.05.2021    14421    42    8    

18

WEB-интеграция Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки.

24000 руб.

27.09.2024    1168    1    0    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. aleksey2 88 21.12.23 11:15 Сейчас в теме
биржевой график есть ?
2. bayselonarrend 2087 21.12.23 11:21 Сейчас в теме
(1) Со свечами? Нет, нету. Есть только те, которые перечислены
9. John_d 5891 22.12.23 10:53 Сейчас в теме
3. Diversus 2329 21.12.23 11:33 Сейчас в теме
Красиво. Проверяли работу на Linux?
4. bayselonarrend 2087 21.12.23 11:48 Сейчас в теме
(3) Спасибо. Нет, не проверял, но на Linux WebKit в формах HTML уже давно, думаю проблем никаких быть не должно
5. Diversus 2329 21.12.23 12:45 Сейчас в теме
(4) Это не верно. Сейчас в Linux WebKit "ниже" чем в Windows и из-за этого могут быть проблемы.
Мы сталкивались с этим, когда на Windows HTML отображается нормально, а в Linux нет.
bayselonarrend; +1 Ответить
6. bayselonarrend 2087 21.12.23 12:53 Сейчас в теме
(5)Ну, в любом случае, я не пробовал - нет машины под рукой. Диаграммы рисуются через canvas
25. Трактор 1254 09.05.24 23:10 Сейчас в теме
(3) Проверил под Убунту 23.10. Не работает в тонком и толстом клиентах. 1С 8.3.24.1342
26. Трактор 1254 11.05.24 11:31 Сейчас в теме
(25) Вру! Я не смог проверить под линуксом. Оказывается веб сервис отъедает лицензию, а у меня под линуксом однопользовательская лицензия.
27. Трактор 1254 13.05.24 10:17 Сейчас в теме
(26) проверил 1С 8.3.24.1342 не отображает эти графики ни в толстом, ни в тонком клиенте. ОС Ubuntu 23.10.
28. пользователь 05.06.24 13:57
Сообщение было скрыто модератором.
...
7. kumga99 26 22.12.23 08:39 Сейчас в теме
8. BackinSoda 22.12.23 09:38 Сейчас в теме
Сделано красиво. Интересно, в чём преимущество использования html5-диаграмм от типовых ?
10. John_d 5891 22.12.23 11:05 Сейчас в теме
(8) все диаграммы в 1с разработаны на заре появления 8.0 (20 лет назад) и с тех пор почти не менялись.
В типовых конфигурациях диаграммы не используются.
Средствами 1с можно сделать и нормально пользоваться только самые простые диаграммы (типа круговой и столбиков).
В комментарии выше я скинул ссылку на диаграммы amCharts (5 версия которой вышла 2 года назад)
cleaner_it; +1 Ответить
16. BackinSoda 24.12.23 01:24 Сейчас в теме
(10) Под типовыми я имел в виду обычные диаграммы в 1с, например как в демо диаграммах
11. Slypower 3 22.12.23 14:27 Сейчас в теме
Знать бы. какая платформа нужна и зависит ли от режима совместимости
12. bayselonarrend 2087 22.12.23 14:56 Сейчас в теме
(11)Я писал на режиме совместимости 8.3.6, но не факт, что заработает на настоящей 8.3.6 - я просто не помню, когда IE заменили на WebKit
13. Slypower 3 22.12.23 15:20 Сейчас в теме
Не нашел в примерах. Есть возможность на одной диаграмме вывести 2 разных показателя?
14. bayselonarrend 2087 22.12.23 16:15 Сейчас в теме
17. Slypower 3 26.12.23 09:18 Сейчас в теме
(14) пример такой диаграммы
Прикрепленные файлы:
18. bayselonarrend 2087 26.12.23 10:06 Сейчас в теме
(17)Столбчато-линейная это не оно?
19. Slypower 3 26.12.23 10:14 Сейчас в теме
(18) Здесь 2 диаграммы, 2 разных показателя, шкалы слева Реализация и справа Объем
20. starik-2005 3087 26.12.23 13:38 Сейчас в теме
22. Slypower 3 26.12.23 13:58 Сейчас в теме
21. bayselonarrend 2087 26.12.23 13:45 Сейчас в теме
(19)Вообще toast ui вроде позволяет выводить вторую шкалу, но здесь я это не реализовывал
15. s_vidyakin 68 22.12.23 16:53 Сейчас в теме
ностальгия прям. Делал то же самое лет 10 назад на highcharts.js
23. Трактор 1254 16.02.24 23:51 Сейчас в теме
В макете диаграмм ошибка.

В файле https://github.com/Bayselonarrend/1Charts/blob/main/ToastUI.bsl в строке 180

Сказано: | const options = '%2';
Правильно так: | const options = %2;

Из-за этой ошибки не работают настройки.
bayselonarrend; +1 Ответить
24. bayselonarrend 2087 22.02.24 17:03 Сейчас в теме
Оставьте свое сообщение