Пример кастомного вывода данных таблицы в виде графика. Режим viewType custom
В данном примере мы используем кастом режим вывода таблицы (используем ее в качестве источника данных). А вывод осуществляется через JS коллбек и инициализацию внешнего JS плагина.
Подобным образом можно использовать и любые другие плагины - получили данные, подключили плагин и выводим их через JS коллбек.
Документация к Apex Charts - https://apexcharts.com/docs/creating-first-javascript-chart/ У данного компонента есть множество различных настроек и вариаций - https://apexcharts.com/docs/chart-types/line-chart/.
Примечание: данный вариант использования графиков подойдет, если по каким-то причинам не подходят стандартные графики, диаграммы платформы.
Как реализовать
1. Создаем таблицу, извлекаем нужные данные и ставим в SELECT 3 'custom' viewType:
CREATE PROCEDURE [dbo].[crud_watch_customView_getItems]
@filters CRUDFilterParameter READONLY,
@sort sql_variant,
@direction nvarchar(8),
@page int,
@pageSize int,
@username nvarchar(32)
AS
BEGIN
-- SELECT 1
select '30,40,35,50,49,60,70,91,125' data, '1991,1992,1993,1994,1995,1996,1997, 1998,1999' xAxis
-- SELECT 2 total count
select 1
-- SELECT 3
select 'custom' viewType
-- 4 SELECT Footer data or kanban/gantt data
END
На front подключаем внешнюю JS библиотеку Apex Charts, пишем коллбек к таблице и выводим график с указанием нужных настроек:
<script src="https://cdn.jsdelivr.net/npm/apexcharts"></script>
<script>
$(function(){
var renderChart = function(cont, data, xAxis){
// https://apexcharts.com/docs/creating-first-javascript-chart/
var options = {
chart: {
type: 'line'
},
series: [{
name: 'sales',
data: data // [30,40,35,50,49,60,70,91,125]
}],
xaxis: {
categories: xAxis // [1991,1992,1993,1994,1995,1996,1997, 1998,1999]
}
}
var chart = new ApexCharts(cont, options);
chart.render();
}
as.crud2callbacks["watch_customView_getItems"] = function(options, data){
console.log("table data", data)
var cont = options.cont;
var lineData = [];
var xAxis = [];
if(data.items.length){
var item = data.items[0];
lineData= item.data.split(',');
xAxis= item.xAxis.split(',');
}
renderChart(cont[0], lineData, xAxis);
}
});
</script>
Другие модули
Как редактировать поля прямо в таблице на сайте
Как добавить фильтры данных таблицы в личном кабинете
Вывод таблицы на сайте в личном кабинете
Создание нового элемента в таблице на сайте
Как добавить существующий элемент в таблицу через поле поиска
Как создать вложенные таблицы на сайте
Стилизация полей таблицы. Как улучшить дизайн таблиц на сайте
Последние обновления
Файлы и документы 10.01.2025
Форма 01.11.2024
Форма 23.10.2024
Форма 13.08.2024
Таблица 03.06.2024
Таблица 23.09.2023
15.09.2023
Визуализация 02.08.2023
Визуализация 02.08.2023
Визуализация 01.08.2023
Таблица 18.03.2023
Форма 19.12.2022
Таблица 06.12.2022
Форма 01.12.2022
Форма 21.11.2022
Форма 17.11.2022
Форма 10.11.2022
SQL-инструмент для создания личных кабинетов на сайте
Платформа Falcon Space
Это снижение стоимости владения
за счет меньшего количества людей для поддержки
Это быстрое внесение изменений
по ходу эксплуатации программы
Это современный интерфейс
полная адаптация под мобильные устройства