|
11 | 11 |
|
12 | 12 | <Class name="DeepSee.LightPivotTable"> |
13 | 13 | <Super>%DeepSee.Component.Portlet.abstractPortlet</Super> |
14 | | - <TimeChanged>63544,74499.681602</TimeChanged> |
| 14 | + <TimeChanged>63544,68431.722256</TimeChanged> |
15 | 15 | <TimeCreated>63515,61322.546099</TimeCreated> |
16 | 16 |
|
17 | 17 | <Parameter name="INCLUDEFILES"> |
|
221 | 221 | </Method> |
222 | 222 |
|
223 | 223 | <Method name="exportCSV"> |
224 | | - <Description> |
225 | | - Firing this method will cause CSV-file download</Description> |
226 | 224 | <Language>javascript</Language> |
227 | 225 | <ClientMethod>1</ClientMethod> |
228 | 226 | <Implementation><![CDATA[ |
229 | 227 | if (!this.LightPivotTable) return; |
230 | 228 | //console.log(this.LightPivotTable); |
231 | 229 | var link = document.createElement("a"), |
232 | | - csvData = [], |
| 230 | + csvData = [], preservedGroups = {}, |
233 | 231 | rawData = this.LightPivotTable.dataController.getData(), |
234 | 232 | row, cell; |
235 | 233 |
|
|
239 | 237 | for (var y = 0; y < rawData.length; y++) { |
240 | 238 | row = []; |
241 | 239 | for (var x = 0; x < rawData[y].length; x++) { |
| 240 | + if (rawData[y][x].group) { |
| 241 | + if (preservedGroups.hasOwnProperty(rawData[y][x].group)) { |
| 242 | + row.push(""); |
| 243 | + continue; |
| 244 | + } else { |
| 245 | + preservedGroups[rawData[y][x].group] = true; |
| 246 | + } |
| 247 | + } |
242 | 248 | cell = (rawData[y][x].value || "").toString(); |
243 | 249 | if (isFinite(cell)) cell = cell.replace(/\./g, ","); |
244 | 250 | if (cell.indexOf("\"") > -1 || cell.indexOf(";") > -1) { |
|
0 commit comments