Продукты Р7
Корпоративный сервер 2024
Корпоративный сервер 2024
Сервер документов
Сервер документов
Редакторы
Редакторы
Корпоративный сервер 2019
Корпоративный сервер 2019
Графика
Графика
Команда
Команда
Мобильные редакторы
Мобильные редакторы
Облачный офис
Облачный офис
Почта
Почта
Органайзер
Органайзер
Дополнительно
Часто задаваемые вопросы
Разработчикам
Интеграции
Новые возможности

Пример сборки табличного документа

Обновлено: 25.10.24

Ниже рассмотрим пример сборки табличного документа.

Для примера  переименовываем лист, используем метод SetName, заполняем первый лист данными из массива.
После чего добавим второй лист с наименованием «Документ конструктор», используем метод AddSheet.
Установим значения для ячеек с наименованием категорий, используем метод SetValue.
Заполним наименование столбцов и случайными, цифровыми значениями диапазон с B2 по J6.
Для ячейки F1 добавим комментарий, используем метод AddComment.
После заполнения данными построим график типа «гистограмма с группировкой», используем метод AddChart. Добавляем наименование графика и наименование осей. Добавляем оформление для каждого столбца — задаем цвет.
Сохраняем таблицу.

builder.CreateFile("xlsx");
var oWorksheet = Api.GetActiveSheet();
oWorksheet.SetName("Товары");
var sHeaders = [ "ID", "Продукт", "Стоимость", "Наличие" ];
var sData = [
    [ "SKU124-21", "SKU124-21", "SKU124-21", "SKU124-21" ],
    [ "Вода", "Сок", "Шоколад", "Яблоки" ], 
    [ 60, 180, 80, 132.5 ], 
    [ "false", "false", "true", "true" ]
];

 for (var i = 0; i < sHeaders.length; i++) {
  oWorksheet.GetRangeByNumber(0, i).SetValue(sHeaders[i]);
  for (var j = 0; j < sData[0].length; j++) {
    oWorksheet.GetRangeByNumber(j + 1, i).SetValue(sData[i][j]);
  }
}
var oSheet = Api.AddSheet("Документ конструктор");
var oSheet = Api.GetActiveSheet();
oSheet.GetRange("A2").SetValue("Категория 1");
oSheet.GetRange("A3").SetValue("Категория 2");
oSheet.GetRange("A4").SetValue("Категория 3");
oSheet.GetRange("A5").SetValue("Категория 4");
oSheet.GetRange("A6").SetValue("Категория 5");

function getRandomInt(max) {
  return Math.floor(Math.random() * max);
}

 for (var i = 1; i < 10; i++) {
  oSheet.GetRangeByNumber(0, i).SetValue("Ряд "+i);
  for (var j = 1; j < 6; j++) {
    oSheet.GetRangeByNumber(j, i).SetValue(getRandomInt(10));
  }
}

var oRange2 = oSheet.GetRange("F1"); 
oRange2.AddComment("Комментарий");

var oChart = oSheet.AddChart("'Документ конструктор'!$A$1:$J$6", true, "bar", 5, 300 * 36000, 160 * 36000, 1, 0, 9, 0);
oChart.SetVerAxisTitle("Vertical Title", 10);
oChart.SetHorAxisTitle("Horizontal Title", 11);
oChart.SetLegendPos("right");
oChart.SetShowDataLabels(false, false, true, false);
oChart.SetTitle("Заголовок диаграммы", 17);

var oFill = Api.CreateSolidFill(Api.CreateRGBColor(151, 31, 81));
oChart.SetSeriesFill(oFill, 0, false);
oFill = Api.CreateSolidFill(Api.CreateRGBColor(255, 181, 161));
oChart.SetSeriesFill(oFill, 1, false);
oFill = Api.CreateSolidFill(Api.CreateRGBColor(128, 128, 128));
oChart.SetSeriesFill(oFill, 2, false);
oFill = Api.CreateSolidFill(Api.CreateRGBColor(255, 249, 22));
oChart.SetSeriesFill(oFill, 3, false);
oFill = Api.CreateSolidFill(Api.CreateRGBColor(155, 249, 122));
oChart.SetSeriesFill(oFill, 4, false);



builder.SaveFile("xlsx", "12Sprdeadata.xlsx");
builder.CloseFile();