HandsonTableを使って、上記のような表を作成したいと考えています。
予算と実績を管理する別々のアプリから、SQLで集計データを取得して
達成率を計算した上、UNIONで結合して、一覧の表にまとめたいと考えています。
予算、実績、達成率それぞれを一つのテーブル・別の行で出すことは出来るのですが、
予算実績は数値、達成率をパーセンテージで表示するにあたり、
列ごとの書式設定は出来ても、行で書式を変える方法が分かりませんでした。
※r_resultが、SQL(UNION結合したもの)
var r_table = new Handsontable(grid, {
data: r_result,
colWidths: [100,120,80,80,80,80,80,80,80,80,80,80,80,80,120],
colHeaders: [‘支社名’ ,‘項目’,‘4月’,‘5月’,‘6月’,‘7月’, ‘8月’,‘9月’,‘10月’,‘11月’,“12月”,“1月”,“2月”,“3月”,“合計”],
columns: [
{ data: ‘支社名’ },
{ data: ‘項目’ },
{ data: ‘4月’, type: ‘numeric’, format: ‘0,0’ },
{ data: ‘5月’, type: ‘numeric’, format: ‘0,0’ },
{ data: ‘6月’, type: ‘numeric’, format: ‘0,0’ },
{ data: ‘7月’, type: ‘numeric’, format: ‘0,0’ },
{ data: ‘8月’, type: ‘numeric’, format: ‘0,0’ },
{ data: ‘9月’, type: ‘numeric’, format: ‘0,0’ },
{ data: ‘10月’, type: ‘numeric’, format: ‘0,0’ },
{ data: ‘11月’, type: ‘numeric’, format: ‘0,0’ },
{ data: ‘12月’, type: ‘numeric’, format: ‘0,0’ },
{ data: ‘1月’, type: ‘numeric’, format: ‘0,0’ },
{ data: ‘2月’, type: ‘numeric’, format: ‘0,0’ },
{ data: ‘3月’, type: ‘numeric’, format: ‘0,0’ },
{ data: ‘合計’, type: ‘numeric’, format: ‘0,0’ },
],
cells: function (row, col, prop) {
var cellProperties = {};
if(this.instance.getData()[row][1] === “合計”){
cellProperties.className = ‘Green’;
}
return cellProperties;
},
readOnly: true
});
対処方法をご存じの方がいらっしゃいましたら、ご教示いただけると
幸いです。
何卒よろしくお願いいたします。