Как добавить форматирование строки заголовка и ячейки при экспорте данных в Excel с использованием alasql в приложении angular js?

#javascript #angularjs #excel #alasql

#javascript #angularjs #excel #alasql

Вопрос:

В моем приложении Angular я хочу экспортировать данные в файл Excel, который я использовал alasql для того же. Как мне добавить заголовок, который должен представлять собой строку с объединенными ячейками, а также показать параметры фильтра, по которым генерируются данные на листе Excel?

 var mystyle = {
    headers: true,
    column: { style: { Font: { Bold: "1" } } },
};

let dataCopy = JSON.parse(JSON.stringify(dataFiltered));
alasql('SELECT * INTO XLSX("'   reportName   '",?) FROM ?', [mystyle, dataCopy]);
  

У меня есть массив filterParams, который содержит параметры фильтра со значением в паре ключ-значение.

Я хочу сгенерировать лист Excel с заголовком таблицы в первой строке, под которой должны быть сгенерированы данные. После заголовка должны быть указаны параметры, которые должны отображаться.

Ответ №1:

ALASQL не поддерживает объединение ячеек или применение фильтров. Но вы можете добавить строку заголовка / заголовка. Вам нужно создать строку заголовка с тем же количеством столбцов и теми же ключами, что и у ваших данных. Затем объедините эту строку заголовка со своими данными и импортируйте в Excel.

 var headers = alasql('select "Title 1" as Key1, "Title 2" as Key2, "Title 3" as Key3');
let dataCopy = JSON.parse(JSON.stringify(dataFiltered));
var mergedArray = $.merge(headers, dataCopy);
alasql('SELECT * INTO XLSX("'   reportName   '",?) FROM ?', [mystyle, mergedArray]);
  

Пожалуйста, примите ответ, если он решит вашу проблему. Приветствия!