Commit cfc31d1ebff668b9fc23091f971bf8c7c733179a
1 parent
40eb0979
alasql cast
Showing
2 changed files
with
45 additions
and
21 deletions
datalets/bar-chart-datalet/bar-chart-datalet.html
| @@ -79,8 +79,8 @@ Example: | @@ -79,8 +79,8 @@ Example: | ||
| 79 | text: this._component.title | 79 | text: this._component.title |
| 80 | }, | 80 | }, |
| 81 | xAxis: { | 81 | xAxis: { |
| 82 | -// categories: this.properties.categories.value, | ||
| 83 | - categories: ['Cinesi', 'Albanesi', 'Rumeni', 'Pakistani', 'Marocchini', 'Altri stranieri'], | 82 | + categories: this.properties.categories.value, |
| 83 | +// categories: ['Cinesi', 'Albanesi', 'Rumeni', 'Pakistani', 'Marocchini', 'Altri stranieri'], | ||
| 84 | title: { | 84 | title: { |
| 85 | text: this._component.xAxisLabel | 85 | text: this._component.xAxisLabel |
| 86 | } | 86 | } |
| @@ -104,6 +104,10 @@ Example: | @@ -104,6 +104,10 @@ Example: | ||
| 104 | enabled: true | 104 | enabled: true |
| 105 | } | 105 | } |
| 106 | } | 106 | } |
| 107 | +// | ||
| 108 | +// series: { | ||
| 109 | +// stacking: 'normal' | ||
| 110 | +// } | ||
| 107 | }, | 111 | }, |
| 108 | legend: { | 112 | legend: { |
| 109 | layout: 'vertical', | 113 | layout: 'vertical', |
| @@ -119,23 +123,24 @@ Example: | @@ -119,23 +123,24 @@ Example: | ||
| 119 | credits: { | 123 | credits: { |
| 120 | enabled: false | 124 | enabled: false |
| 121 | }, | 125 | }, |
| 122 | -// series: this.properties.series.value | ||
| 123 | - series: [{ | ||
| 124 | - name: '2010', | ||
| 125 | - data: [107, 31, 635, 203, 2] | ||
| 126 | - }, { | ||
| 127 | - name: '2011', | ||
| 128 | - data: [1353, 156, 947, 408, 6] | ||
| 129 | - }, { | ||
| 130 | - name: '2012', | ||
| 131 | - data: [133, 156, 947, 408, 64] | ||
| 132 | - }, { | ||
| 133 | - name: '2013', | ||
| 134 | - data: [133, 156, 947, 48, 6] | ||
| 135 | - }, { | ||
| 136 | - name: '2014', | ||
| 137 | - data: [1052, 954, 4250, 740, 38] | ||
| 138 | - }] | 126 | + |
| 127 | + series: this.properties.series.value | ||
| 128 | +// series: [{ | ||
| 129 | +// name: '2010', | ||
| 130 | +// data: [107, 31, 635, 203, 2] | ||
| 131 | +// }, { | ||
| 132 | +// name: '2011', | ||
| 133 | +// data: [1353, 156, 947, 408, 6] | ||
| 134 | +// }, { | ||
| 135 | +// name: '2012', | ||
| 136 | +// data: [133, 156, 947, 408, 64] | ||
| 137 | +// }, { | ||
| 138 | +// name: '2013', | ||
| 139 | +// data: [133, 156, 947, 48, 6] | ||
| 140 | +// }, { | ||
| 141 | +// name: '2014', | ||
| 142 | +// data: [1052, 954, 4250, 740, 38] | ||
| 143 | +// }] | ||
| 139 | }); | 144 | }); |
| 140 | 145 | ||
| 141 | 146 |
datalets/base-ajax-json-alasql-datalet/static/js/AjaxJsonAlasqlBehavior.js
| @@ -137,15 +137,34 @@ var AjaxJsonAlasqlBehavior = { | @@ -137,15 +137,34 @@ var AjaxJsonAlasqlBehavior = { | ||
| 137 | orderBy = orderBy.slice(0, -2); | 137 | orderBy = orderBy.slice(0, -2); |
| 138 | } | 138 | } |
| 139 | 139 | ||
| 140 | - //SELECT; | 140 | + //SELECT |
| 141 | var select = "SELECT "; | 141 | var select = "SELECT "; |
| 142 | for (var i = 0; i < fields.length; i++) | 142 | for (var i = 0; i < fields.length; i++) |
| 143 | - //select += fields[i] + ", "; | ||
| 144 | select += fields[i] + " as " + this._fieldName(this._component.fields[i], "") + ", "; | 143 | select += fields[i] + " as " + this._fieldName(this._component.fields[i], "") + ", "; |
| 145 | select = select.slice(0, -2); | 144 | select = select.slice(0, -2); |
| 146 | 145 | ||
| 147 | var pureSelect = select; | 146 | var pureSelect = select; |
| 148 | 147 | ||
| 148 | + /**/ | ||
| 149 | + var res = alasql("SELECT "+ path +" FROM ?", [jsonData]); | ||
| 150 | + var records = res[0][path]; | ||
| 151 | + var obj = alasql(pureSelect + " FROM ?", [records]); | ||
| 152 | + //console.log(obj); | ||
| 153 | + | ||
| 154 | + var select = "SELECT "; | ||
| 155 | + for (var i = 0; i < fields.length; i++) { | ||
| 156 | + var key = Object.keys(obj[0])[i]; | ||
| 157 | + var v = obj[0][key]; | ||
| 158 | + if (!isNaN(v)) | ||
| 159 | + select += fields[i] + "::NUMBER as " + this._fieldName(this._component.fields[i], "") + ", "; | ||
| 160 | + else | ||
| 161 | + select += fields[i] + " as " + this._fieldName(this._component.fields[i], "") + ", "; | ||
| 162 | + } | ||
| 163 | + select = select.slice(0, -2); | ||
| 164 | + | ||
| 165 | + var pureSelect = select; | ||
| 166 | + /**/ | ||
| 167 | + | ||
| 149 | //GROUP BY | 168 | //GROUP BY |
| 150 | var groupBy = ""; | 169 | var groupBy = ""; |
| 151 | if(aggregators && aggregators.length) { | 170 | if(aggregators && aggregators.length) { |