@syncfusion/ej2-pivotview 19.3.43 → 19.3.48

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 19.3.43
3
+ * version : 19.3.48
4
4
  * Copyright Syncfusion Inc. 2001 - 2020. All rights reserved.
5
5
  * Use of this code is subject to the terms of our license.
6
6
  * A copy of the current license can be obtained at any time by e-mailing
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "_from": "@syncfusion/ej2-pivotview@*",
3
- "_id": "@syncfusion/ej2-pivotview@18.15.12",
3
+ "_id": "@syncfusion/ej2-pivotview@19.3.47",
4
4
  "_inBundle": false,
5
- "_integrity": "sha512-xbTA+j1gKmrDekK3iZivk4Wh8Pv98RuU9exB3GguZBPxdtkGv6ROf2RPcwBEMgWUp4uTLwqjkPNE8CnTP5WoOg==",
5
+ "_integrity": "sha512-QQ2EsAps5ihvb8r/LnIRKagB9bxlvStzANMQxaAHNmagCyivhZCuVRckVi6dJTosc5SOSraGgdhiONORu9uFag==",
6
6
  "_location": "/@syncfusion/ej2-pivotview",
7
7
  "_phantomChildren": {},
8
8
  "_requested": {
@@ -23,8 +23,8 @@
23
23
  "/@syncfusion/ej2-react-pivotview",
24
24
  "/@syncfusion/ej2-vue-pivotview"
25
25
  ],
26
- "_resolved": "http://nexus.syncfusion.com/repository/ej2-release/@syncfusion/ej2-pivotview/-/ej2-pivotview-18.15.12.tgz",
27
- "_shasum": "c413c496780132cfa52d212a151192d2411d9a81",
26
+ "_resolved": "http://nexus.syncfusion.com/repository/ej2-hotfix/@syncfusion/ej2-pivotview/-/ej2-pivotview-19.3.47.tgz",
27
+ "_shasum": "2c273275b3fbd7410fc90f7ac1df1729501e927f",
28
28
  "_spec": "@syncfusion/ej2-pivotview@*",
29
29
  "_where": "/jenkins/workspace/automation_release_19.1.0.1-ZPMUBNQ6AUYH6YGEFBPVYMEQLRRW2SLD4XCZ6GATNZJFYJ3RIAOA/packages/included",
30
30
  "author": {
@@ -35,23 +35,23 @@
35
35
  },
36
36
  "bundleDependencies": false,
37
37
  "dependencies": {
38
- "@syncfusion/ej2-base": "~19.3.43",
39
- "@syncfusion/ej2-buttons": "~19.3.43",
40
- "@syncfusion/ej2-calendars": "~19.3.43",
41
- "@syncfusion/ej2-charts": "~19.3.43",
38
+ "@syncfusion/ej2-base": "~19.3.47",
39
+ "@syncfusion/ej2-buttons": "~19.3.44",
40
+ "@syncfusion/ej2-calendars": "~19.3.46",
41
+ "@syncfusion/ej2-charts": "~19.3.48",
42
42
  "@syncfusion/ej2-compression": "~19.3.43",
43
- "@syncfusion/ej2-data": "~19.3.43",
44
- "@syncfusion/ej2-dropdowns": "~19.3.43",
45
- "@syncfusion/ej2-excel-export": "~19.3.43",
43
+ "@syncfusion/ej2-data": "~19.3.47",
44
+ "@syncfusion/ej2-dropdowns": "~19.3.48",
45
+ "@syncfusion/ej2-excel-export": "~19.3.48",
46
46
  "@syncfusion/ej2-file-utils": "~19.3.43",
47
- "@syncfusion/ej2-grids": "~19.3.43",
48
- "@syncfusion/ej2-inputs": "~19.3.43",
49
- "@syncfusion/ej2-lists": "~19.3.43",
50
- "@syncfusion/ej2-navigations": "~19.3.43",
47
+ "@syncfusion/ej2-grids": "~19.3.48",
48
+ "@syncfusion/ej2-inputs": "~19.3.48",
49
+ "@syncfusion/ej2-lists": "~19.3.48",
50
+ "@syncfusion/ej2-navigations": "~19.3.46",
51
51
  "@syncfusion/ej2-pdf-export": "~19.3.43",
52
- "@syncfusion/ej2-popups": "~19.3.43",
53
- "@syncfusion/ej2-splitbuttons": "~19.3.43",
54
- "@syncfusion/ej2-svg-base": "~19.3.43"
52
+ "@syncfusion/ej2-popups": "~19.3.47",
53
+ "@syncfusion/ej2-splitbuttons": "~19.3.48",
54
+ "@syncfusion/ej2-svg-base": "~19.3.45"
55
55
  },
56
56
  "deprecated": false,
57
57
  "description": "The pivot grid, or pivot table, is used to visualize large sets of relational data in a cross-tabular format, similar to an Excel pivot table.",
@@ -78,6 +78,6 @@
78
78
  "url": "git+https://github.com/syncfusion/ej2-javascript-ui-controls.git"
79
79
  },
80
80
  "typings": "index.d.ts",
81
- "version": "19.3.43",
81
+ "version": "19.3.48",
82
82
  "sideEffects": false
83
83
  }
@@ -89,6 +89,8 @@ export declare class PivotEngine {
89
89
  /** @hidden */
90
90
  valueSortSettings: IValueSortSettings;
91
91
  /** @hidden */
92
+ rowIndex: number[];
93
+ /** @hidden */
92
94
  isEngineUpdated: boolean;
93
95
  /** @hidden */
94
96
  savedFieldList: IFieldListOptions;
@@ -2977,10 +2977,14 @@ var PivotEngine = /** @class */ (function () {
2977
2977
  if (keyInd !== 0) {
2978
2978
  member.valueSort.levelName = parentMember + this.valueSortSettings.headerDelimiter + member.formattedText;
2979
2979
  member.valueSort[parentMember + this.valueSortSettings.headerDelimiter + member.formattedText] = 1;
2980
+ member.valueSort.uniqueName = parentMember + this.valueSortSettings.headerDelimiter + (member.actualText ? member.actualText : member.formattedText);
2981
+ member.valueSort[parentMember + this.valueSortSettings.headerDelimiter + (member.actualText ? member.actualText : member.formattedText)] = 1;
2980
2982
  }
2981
2983
  else {
2982
2984
  member.valueSort[member.formattedText] = 1;
2983
2985
  member.valueSort.levelName = member.formattedText;
2986
+ member.valueSort[member.actualText ? member.actualText : member.formattedText] = 1;
2987
+ member.valueSort.uniqueName = (member.actualText ? member.actualText : member.formattedText);
2984
2988
  }
2985
2989
  var memberString = member.valueSort.axis + this.valueSortSettings.headerDelimiter + member.valueSort.levelName;
2986
2990
  member.isDrilled = (valueFil && this.isValueFiltersAvail) ?
@@ -3148,10 +3152,16 @@ var PivotEngine = /** @class */ (function () {
3148
3152
  slicedHeader.formattedText;
3149
3153
  slicedHeader.valueSort[parentMember + this.valueSortSettings.headerDelimiter +
3150
3154
  slicedHeader.formattedText] = 1;
3155
+ slicedHeader.valueSort.uniqueName = parentMember + this.valueSortSettings.headerDelimiter +
3156
+ (slicedHeader.actualText ? slicedHeader.actualText : slicedHeader.formattedText);
3157
+ slicedHeader.valueSort[parentMember + this.valueSortSettings.headerDelimiter +
3158
+ (slicedHeader.actualText ? slicedHeader.actualText : slicedHeader.formattedText)] = 1;
3151
3159
  }
3152
3160
  else {
3153
3161
  slicedHeader.valueSort[slicedHeader.formattedText] = 1;
3154
3162
  slicedHeader.valueSort.levelName = slicedHeader.formattedText;
3163
+ slicedHeader.valueSort[(slicedHeader.actualText ? slicedHeader.actualText : slicedHeader.formattedText)] = 1;
3164
+ slicedHeader.valueSort.uniqueName = (slicedHeader.actualText ? slicedHeader.actualText : slicedHeader.formattedText);
3155
3165
  }
3156
3166
  member.members = [];
3157
3167
  hierarchy.push(member);
@@ -3337,6 +3347,7 @@ var PivotEngine = /** @class */ (function () {
3337
3347
  isDrilled: false,
3338
3348
  indexObject: {},
3339
3349
  members: [],
3350
+ actualText: 'Grand' + customText,
3340
3351
  formattedText: 'Grand' + customText,
3341
3352
  ordinal: len,
3342
3353
  type: 'grand sum',
@@ -3344,6 +3355,8 @@ var PivotEngine = /** @class */ (function () {
3344
3355
  };
3345
3356
  set[len].valueSort[set[len].formattedText] = 1;
3346
3357
  set[len].valueSort.levelName = set[len].formattedText;
3358
+ set[len].valueSort[set[len].actualText] = 1;
3359
+ set[len].valueSort.uniqueName = set[len].actualText;
3347
3360
  for (var ln = 0, lt = filter.length; ln < lt; ln++) {
3348
3361
  set[len].indexObject[filter[ln]] = filter[ln];
3349
3362
  }
@@ -3364,74 +3377,85 @@ var PivotEngine = /** @class */ (function () {
3364
3377
  var isLeastNode = !reformAxis[tnum].members.length;
3365
3378
  row.colIndex = 0;
3366
3379
  row.rowIndex = tnum;
3367
- if (!data[tnum]) {
3368
- data[tnum] = [];
3369
- this.valueContent[actCnt] = {};
3370
- data[tnum][0] = this.valueContent[actCnt][0] = this.frameHeaderWithKeys(row);
3380
+ var isRowFieldsAvail = false;
3381
+ if (this.valueAxis && this.dataSourceSettings.rows.length === 0 && this.dataSourceSettings.values.length > 1) {
3382
+ this.rowIndex = (isNullOrUndefined(this.rowIndex) && !isLeastNode && this.dataSourceSettings.rows.length === 0) ? row.index : this.rowIndex;
3383
+ isRowFieldsAvail = (this.valueAxis && this.dataSourceSettings.rows.length === 0 && row.valueSort.levelName.toString().indexOf('Grand Total.') !== 0);
3384
+ if (this.valueAxis && this.dataSourceSettings.rows.length === 0 && row.valueSort.levelName.toString().indexOf('Grand Total.') === 0) {
3385
+ row.index = this.rowIndex;
3386
+ }
3371
3387
  }
3372
- else {
3373
- data[tnum][0] = this.valueContent[actCnt][0] = this.frameHeaderWithKeys(row);
3374
- }
3375
- if (this.valueAxis && (this.isMultiMeasures || this.alwaysShowValueHeader)) {
3376
- var hpos = tnum;
3377
- var actpos = actCnt;
3378
- var rowIndex = tnum;
3379
- var isValueCellUpdated = false;
3380
- if ((((!(level === 0 && this.measureIndex === 0) && !isLeastNode) || isLeastNode) && row.type === 'value' && !row.valueSort.axis) ||
3381
- (level > this.measureIndex && row.axis === 'row' && row.valueSort.axis)) {
3382
- var vln = 0;
3383
- var isValueIndexFound = false;
3384
- for (var cln = 0, dln = 1, clt = columns.length; cln < clt; ++cln) {
3385
- if (!isValueIndexFound) {
3386
- for (vln = 0; vln < vlt; vln++) {
3387
- var name_3 = this.values[vln].caption ? this.values[vln].caption : this.values[vln].name;
3388
- if (row.valueSort.levelName && row.valueSort.levelName.toString().indexOf(name_3) > -1) {
3389
- isValueIndexFound = true;
3390
- isValueCellUpdated = true;
3388
+ if (!isRowFieldsAvail) {
3389
+ if (!data[tnum]) {
3390
+ data[tnum] = [];
3391
+ this.valueContent[actCnt] = {};
3392
+ data[tnum][0] = this.valueContent[actCnt][0] = this.frameHeaderWithKeys(row);
3393
+ }
3394
+ else {
3395
+ data[tnum][0] = this.valueContent[actCnt][0] = this.frameHeaderWithKeys(row);
3396
+ }
3397
+ if (this.valueAxis && (this.isMultiMeasures || this.alwaysShowValueHeader)) {
3398
+ var hpos = tnum;
3399
+ var actpos = actCnt;
3400
+ var rowIndex = tnum;
3401
+ var isValueCellUpdated = false;
3402
+ if ((((!(level === 0 && this.measureIndex === 0) && !isLeastNode) || isLeastNode) && row.type === 'value' && !row.valueSort.axis) ||
3403
+ (level > this.measureIndex && row.axis === 'row' && row.valueSort.axis)) {
3404
+ var vln = 0;
3405
+ var isValueIndexFound = false;
3406
+ for (var cln = 0, dln = 1, clt = columns.length; cln < clt; ++cln) {
3407
+ if (!isValueIndexFound) {
3408
+ for (vln = 0; vln < vlt; vln++) {
3409
+ if (row.valueSort.uniqueName && row.valueSort.uniqueName.toString().split(this.valueSortSettings.headerDelimiter).indexOf(this.values[vln].name) > -1) {
3410
+ isValueIndexFound = true;
3411
+ isValueCellUpdated = true;
3412
+ break;
3413
+ }
3414
+ }
3415
+ }
3416
+ if (level > this.measureIndex && row.axis == 'row' && row.valueSort.axis) {
3417
+ this.updateRowData(rows, columns, tnum, data, vln, rln, cln, dln, actCnt, rTotal, cTotal);
3418
+ }
3419
+ else {
3420
+ if (!reformAxis[pIndex]) {
3421
+ isValueCellUpdated = false;
3391
3422
  break;
3392
3423
  }
3424
+ this.updateRowData(reformAxis, columns, tnum, data, vln, pIndex, cln, dln, actCnt, rTotal, cTotal);
3393
3425
  }
3426
+ dln = data[tnum].length;
3394
3427
  }
3395
- if (level > this.measureIndex && row.axis == 'row' && row.valueSort.axis) {
3396
- this.updateRowData(rows, columns, tnum, data, vln, rln, cln, dln, actCnt, rTotal, cTotal);
3397
- }
3398
- else {
3399
- if (!reformAxis[pIndex]) {
3400
- isValueCellUpdated = false;
3401
- break;
3402
- }
3403
- this.updateRowData(reformAxis, columns, tnum, data, vln, pIndex, cln, dln, actCnt, rTotal, cTotal);
3428
+ }
3429
+ if (!isValueCellUpdated) {
3430
+ for (var cln = 0, dln = 1, clt = columns.length; cln < clt; ++cln) {
3431
+ dln = data[tnum].length;
3432
+ data[hpos][dln] = this.valueContent[actpos][dln] = {
3433
+ axis: 'value', actualText: '', colSpan: 1,
3434
+ colIndex: dln, formattedText: '', hasChild: false
3435
+ };
3404
3436
  }
3405
- dln = data[tnum].length;
3406
3437
  }
3438
+ this.recursiveRowData(rows, reformAxis, columns, rowIndex, data, vlt, isLeastNode, rln, vlt, level, rTotal, cTotal);
3407
3439
  }
3408
- if (!isValueCellUpdated) {
3440
+ else {
3409
3441
  for (var cln = 0, dln = 1, clt = columns.length; cln < clt; ++cln) {
3410
- dln = data[tnum].length;
3411
- data[hpos][dln] = this.valueContent[actpos][dln] = {
3412
- axis: 'value', actualText: '', colSpan: 1,
3413
- colIndex: dln, formattedText: '', hasChild: false
3414
- };
3415
- }
3416
- }
3417
- this.recursiveRowData(rows, reformAxis, columns, rowIndex, data, vlt, isLeastNode, rln, vlt, level, rTotal, cTotal);
3418
- }
3419
- else {
3420
- for (var cln = 0, dln = 1, clt = columns.length; cln < clt; ++cln) {
3421
- for (var vln = 0; vln < vlt; vln++) {
3422
- if (!this.valueAxis && !this.isLastHeaderHasMeasures) {
3423
- var name_4 = this.values[vln].caption ? this.values[vln].caption : this.values[vln].name;
3424
- if (columns[cln].valueSort.levelName && columns[cln].valueSort.levelName.toString().indexOf(name_4) > -1) {
3442
+ for (var vln = 0; vln < vlt; vln++) {
3443
+ if (!this.valueAxis && !this.isLastHeaderHasMeasures) {
3444
+ if (columns[cln].valueSort.uniqueName && columns[cln].valueSort.uniqueName.toString().split(this.valueSortSettings.headerDelimiter).indexOf(this.values[vln].name) > -1) {
3445
+ this.updateRowData(rows, columns, tnum, data, vln, rln, cln, dln, actCnt, rTotal, cTotal);
3446
+ dln = data[tnum].length;
3447
+ }
3448
+ }
3449
+ else {
3425
3450
  this.updateRowData(rows, columns, tnum, data, vln, rln, cln, dln, actCnt, rTotal, cTotal);
3426
3451
  dln = data[tnum].length;
3427
3452
  }
3428
3453
  }
3429
- else {
3430
- this.updateRowData(rows, columns, tnum, data, vln, rln, cln, dln, actCnt, rTotal, cTotal);
3431
- dln = data[tnum].length;
3432
- }
3433
3454
  }
3455
+ this.recursiveRowData(rows, reformAxis, columns, tnum, data, vlt, isLeastNode, rln, 0, level, rTotal, cTotal);
3434
3456
  }
3457
+ }
3458
+ else if (!isLeastNode) {
3435
3459
  this.recursiveRowData(rows, reformAxis, columns, tnum, data, vlt, isLeastNode, rln, 0, level, rTotal, cTotal);
3436
3460
  }
3437
3461
  }
@@ -3691,7 +3715,7 @@ var PivotEngine = /** @class */ (function () {
3691
3715
  for (var _i = 0, selectedHeaders_1 = selectedHeaders; _i < selectedHeaders_1.length; _i++) {
3692
3716
  var headers = selectedHeaders_1[_i];
3693
3717
  var selectedHeaderCollection = headers.aggregateHeaders;
3694
- var name_5 = headers.value;
3718
+ var name_3 = headers.value;
3695
3719
  // let valueCount: number = (this.valueAxis && (this.isMutiMeasures || this.alwaysShowValueHeader) ? headers.valueCount : 0);
3696
3720
  var aggregateType = headers.type;
3697
3721
  var uniqueName = headers.uniqueName;
@@ -3713,7 +3737,7 @@ var PivotEngine = /** @class */ (function () {
3713
3737
  if (rowheads[rln].valueSort[uniqueName]) {
3714
3738
  activeValues = rowheads[rln];
3715
3739
  if (this.valueAxis === 0 || (this.valueAxis && data[rln] && data[rln][1] &&
3716
- data[rln][1].actualText === name_5)) {
3740
+ data[rln][1].actualText === name_3)) {
3717
3741
  selectedRowValues = data[rln];
3718
3742
  }
3719
3743
  else {
@@ -3804,7 +3828,7 @@ var PivotEngine = /** @class */ (function () {
3804
3828
  for (var _d = 0, colIndex_2 = colIndex; _d < colIndex_2.length; _d++) {
3805
3829
  var index = colIndex_2[_d];
3806
3830
  var currentSet = data[rln][index];
3807
- if (currentSet.axis === 'value' && currentSet.actualText === name_5) {
3831
+ if (currentSet.axis === 'value' && currentSet.actualText === name_3) {
3808
3832
  indexCollection.push([rln, index]);
3809
3833
  if (pivotIndex[rln + ',' + index]) {
3810
3834
  delete pivotIndex[rln + ',' + index];
@@ -3827,7 +3851,7 @@ var PivotEngine = /** @class */ (function () {
3827
3851
  for (var _f = 0, colIndex_3 = colIndex; _f < colIndex_3.length; _f++) {
3828
3852
  var index = colIndex_3[_f];
3829
3853
  var currentSet = data[rlen][index];
3830
- if (currentSet.axis === 'value' && currentSet.actualText === name_5) {
3854
+ if (currentSet.axis === 'value' && currentSet.actualText === name_3) {
3831
3855
  indexCollection.push([rlen, index]);
3832
3856
  if (pivotIndex[rlen + ',' + index]) {
3833
3857
  delete pivotIndex[rlen + ',' + index];
@@ -3849,7 +3873,7 @@ var PivotEngine = /** @class */ (function () {
3849
3873
  }
3850
3874
  if (aggregateType === 'DifferenceFrom') {
3851
3875
  this.aggregatedValueMatrix[index[0]][index[1]] = cVal;
3852
- currentSet.formattedText = cVal === 0 ? this.emptyCellTextContent : this.getFormattedValue(cVal, name_5).formattedText;
3876
+ currentSet.formattedText = cVal === 0 ? this.emptyCellTextContent : this.getFormattedValue(cVal, name_3).formattedText;
3853
3877
  }
3854
3878
  else {
3855
3879
  // cVal = ((selectedRowValues[index[1]] as IAxisSet).value === 0 ?
@@ -3873,7 +3897,7 @@ var PivotEngine = /** @class */ (function () {
3873
3897
  for (var _j = 0, rowindexCollection_1 = rowindexCollection; _j < rowindexCollection_1.length; _j++) {
3874
3898
  var index = rowindexCollection_1[_j];
3875
3899
  var currentSet = data[index][cln];
3876
- if (currentSet.axis === 'value' && currentSet.actualText === name_5) {
3900
+ if (currentSet.axis === 'value' && currentSet.actualText === name_3) {
3877
3901
  isSelectedColumn = true;
3878
3902
  indexCollection.push([index, cln]);
3879
3903
  if (pivotIndex[index + ',' + cln]) {
@@ -3899,7 +3923,7 @@ var PivotEngine = /** @class */ (function () {
3899
3923
  for (var _k = 0, rowindexCollection_2 = rowindexCollection; _k < rowindexCollection_2.length; _k++) {
3900
3924
  var index = rowindexCollection_2[_k];
3901
3925
  var currentSet = data[index][clen];
3902
- if (currentSet.axis === 'value' && currentSet.actualText === name_5) {
3926
+ if (currentSet.axis === 'value' && currentSet.actualText === name_3) {
3903
3927
  isSelectedColumn = true;
3904
3928
  indexCollection.push([index, clen]);
3905
3929
  if (pivotIndex[index + ',' + clen]) {
@@ -3924,7 +3948,7 @@ var PivotEngine = /** @class */ (function () {
3924
3948
  var selectedColumnValue = 0;
3925
3949
  if (selectedColumnValues.length === 0) {
3926
3950
  var selectedRow = this.getSelectedRow(currentSet.rowHeaders, rowheads);
3927
- selectedColumnValue = this.getAggregateValue(selectedRow.index, selectedColumn.indexObject, this.fieldList[name_5].index, headers.type);
3951
+ selectedColumnValue = this.getAggregateValue(selectedRow.index, selectedColumn.indexObject, this.fieldList[name_3].index, headers.type);
3928
3952
  }
3929
3953
  else {
3930
3954
  selectedColumnValue = selectedColumnValues[index[0]].value;
@@ -3935,7 +3959,7 @@ var PivotEngine = /** @class */ (function () {
3935
3959
  this.aggregatedValueMatrix[index[0]] = [];
3936
3960
  }
3937
3961
  if (aggregateType === 'DifferenceFrom') {
3938
- currentSet.formattedText = cVal === 0 ? this.emptyCellTextContent : this.getFormattedValue(cVal, name_5).formattedText;
3962
+ currentSet.formattedText = cVal === 0 ? this.emptyCellTextContent : this.getFormattedValue(cVal, name_3).formattedText;
3939
3963
  this.aggregatedValueMatrix[index[0]][index[1]] = cVal;
3940
3964
  }
3941
3965
  else {
@@ -3966,7 +3990,7 @@ var PivotEngine = /** @class */ (function () {
3966
3990
  for (var _p = 0, colIndex_4 = colIndex; _p < colIndex_4.length; _p++) {
3967
3991
  var index = colIndex_4[_p];
3968
3992
  var currentSet = data[i][index];
3969
- if (currentSet.axis === 'value' && currentSet.actualText === name_5) {
3993
+ if (currentSet.axis === 'value' && currentSet.actualText === name_3) {
3970
3994
  indexCollection.push([i, index]);
3971
3995
  if (pivotIndex[i + ',' + index]) {
3972
3996
  delete pivotIndex[i + ',' + index];
@@ -3983,7 +4007,7 @@ var PivotEngine = /** @class */ (function () {
3983
4007
  // let cVal: number = currentSet.value / (selectedRowValues[i[1]] as IAxisSet).value;
3984
4008
  var selectedRowValue = 0;
3985
4009
  if (selectedRowValues.length === 0 && activeValues) {
3986
- selectedRowValue = this.getAggregateValue(activeValues.index, colheads[i[1] - 1].indexObject, this.fieldList[name_5].index, headers.type);
4010
+ selectedRowValue = this.getAggregateValue(activeValues.index, colheads[i[1] - 1].indexObject, this.fieldList[name_3].index, headers.type);
3987
4011
  }
3988
4012
  else {
3989
4013
  selectedRowValue = selectedRowValues[i[1]] ? selectedRowValues[i[1]].actualValue : 0;
@@ -4006,7 +4030,7 @@ var PivotEngine = /** @class */ (function () {
4006
4030
  for (var _s = 0, rowindexCollection_3 = rowindexCollection; _s < rowindexCollection_3.length; _s++) {
4007
4031
  var index = rowindexCollection_3[_s];
4008
4032
  var currentSet = data[index][j];
4009
- if (currentSet.axis === 'value' && currentSet.actualText === name_5) {
4033
+ if (currentSet.axis === 'value' && currentSet.actualText === name_3) {
4010
4034
  isSelectedColumn = true;
4011
4035
  indexCollection.push([index, j]);
4012
4036
  if (pivotIndex[index + ',' + j]) {
@@ -4030,7 +4054,7 @@ var PivotEngine = /** @class */ (function () {
4030
4054
  var selectedColValue = 0;
4031
4055
  if (selectedColumnValues.length === 0) {
4032
4056
  var selectedRow = this.getSelectedRow(currentSet.rowHeaders, rowheads);
4033
- selectedColValue = this.getAggregateValue(selectedRow.index, selectedCol.indexObject, this.fieldList[name_5].index, headers.type);
4057
+ selectedColValue = this.getAggregateValue(selectedRow.index, selectedCol.indexObject, this.fieldList[name_3].index, headers.type);
4034
4058
  }
4035
4059
  else {
4036
4060
  selectedColValue = selectedColumnValues[i[0]].value;
@@ -4060,10 +4084,10 @@ var PivotEngine = /** @class */ (function () {
4060
4084
  var currentSet = data[rlen][index];
4061
4085
  if (rowheads[rlen] !== undefined && rowheads[rlen].valueSort[item.valueSort.levelName] &&
4062
4086
  rowheads[rlen].level === item.level && currentSet.axis === 'value' &&
4063
- currentSet.actualText === name_5) {
4087
+ currentSet.actualText === name_3) {
4064
4088
  if (rowheads[rlen].type !== 'grand sum') {
4065
4089
  cVal += (!currentSet.showSubTotals && !(!isNullOrUndefined(currentSet.actualValue) && isNaN(currentSet.actualValue))) ? currentSet.actualValue : currentSet.value;
4066
- currentSet.formattedText = currentSet.showSubTotals ? (cVal === 0 && (currentSet.actualValue && currentSet.actualValue !== 0) ? '' : this.getFormattedValue(cVal, name_5).formattedText) : currentSet.formattedText;
4090
+ currentSet.formattedText = currentSet.showSubTotals ? (cVal === 0 && (currentSet.actualValue && currentSet.actualValue !== 0) ? '' : this.getFormattedValue(cVal, name_3).formattedText) : currentSet.formattedText;
4067
4091
  if (!this.aggregatedValueMatrix[rlen]) {
4068
4092
  this.aggregatedValueMatrix[rlen] = [];
4069
4093
  }
@@ -4092,10 +4116,10 @@ var PivotEngine = /** @class */ (function () {
4092
4116
  var currentSet = data[rln][cln];
4093
4117
  if (activeColumn[cln] !== undefined &&
4094
4118
  activeColumn[cln].valueSort[item.valueSort.levelName] &&
4095
- currentSet.axis === 'value' && currentSet.actualText === name_5) {
4119
+ currentSet.axis === 'value' && currentSet.actualText === name_3) {
4096
4120
  if (activeColumn[cln].type !== 'grand sum') {
4097
4121
  cVal += currentSet.value;
4098
- currentSet.formattedText = subTotal ? '' : this.getFormattedValue(cVal, name_5).formattedText;
4122
+ currentSet.formattedText = subTotal ? '' : this.getFormattedValue(cVal, name_3).formattedText;
4099
4123
  if (!this.aggregatedValueMatrix[rln]) {
4100
4124
  this.aggregatedValueMatrix[rln] = [];
4101
4125
  }
@@ -4264,15 +4288,18 @@ var PivotEngine = /** @class */ (function () {
4264
4288
  return currentCellSets;
4265
4289
  };
4266
4290
  /* eslint-disable , @typescript-eslint/no-explicit-any */
4267
- PivotEngine.prototype.updateValueMembers = function (hasMeasureIndex, headerInfo, levelName, columnHeaders, axis, vcnt, levelIndex) {
4291
+ PivotEngine.prototype.updateValueMembers = function (hasMeasureIndex, headerInfo, levelInfo, columnHeaders, axis, vcnt, levelIndex) {
4292
+ var levelName = levelInfo && !isNullOrUndefined(levelInfo.levelName) ? levelInfo.levelName.toString() : undefined;
4293
+ var uniqueName = levelInfo && !isNullOrUndefined(levelInfo.uniqueName) ? levelInfo.uniqueName.toString() : undefined;
4268
4294
  if (hasMeasureIndex) {
4269
4295
  for (var vln = 0; vln < vcnt; vln++) {
4270
- var name_6 = this.values[vln].caption ? this.values[vln].caption : this.values[vln].name;
4296
+ var field = this.values[vln];
4297
+ var name_4 = field.caption ? field.caption : field.name;
4271
4298
  var calObj = {
4272
4299
  axis: this.valueAxis ? 'row' : 'column',
4273
4300
  rowIndex: !this.valueAxis ? (headerInfo && levelIndex <= headerInfo.rowIndex ? (headerInfo.rowIndex + 1) : levelIndex) : 0,
4274
- actualText: this.values[vln].name,
4275
- formattedText: name_6,
4301
+ actualText: field.name,
4302
+ formattedText: name_4,
4276
4303
  level: 0,
4277
4304
  valueSort: {},
4278
4305
  // colIndex: (tnum) + 1 + vln,
@@ -4283,14 +4310,16 @@ var PivotEngine = /** @class */ (function () {
4283
4310
  indexObject: !this.valueAxis && headerInfo ? headerInfo.indexObject : null
4284
4311
  };
4285
4312
  if (axis.length > 0) {
4286
- calObj.showSubTotals = this.values[vln].showSubTotals;
4313
+ calObj.showSubTotals = field.showSubTotals;
4287
4314
  }
4288
4315
  var vData = calObj.valueSort;
4289
- vData.axis = !this.valueAxis ? this.values[vln].name : undefined;
4290
- vData[(levelName ? (levelName + this.valueSortSettings.headerDelimiter) : '') + name_6] = 1;
4291
- vData.levelName = (levelName ? (levelName + this.valueSortSettings.headerDelimiter) : '') + name_6;
4316
+ vData.axis = !this.valueAxis ? field.name : undefined;
4317
+ vData[(levelName ? (levelName + this.valueSortSettings.headerDelimiter) : '') + name_4] = 1;
4318
+ vData[(uniqueName ? (uniqueName + this.valueSortSettings.headerDelimiter) : '') + field.name] = 1;
4319
+ vData.levelName = (levelName ? (levelName + this.valueSortSettings.headerDelimiter) : '') + name_4;
4320
+ vData.uniqueName = (uniqueName ? (uniqueName + this.valueSortSettings.headerDelimiter) : '') + field.name;
4292
4321
  columnHeaders.push(calObj);
4293
- this.updateValueMembers(false, headerInfo, ((levelName ? (levelName + this.valueSortSettings.headerDelimiter) : '') + name_6), calObj.members, axis, vcnt, levelIndex + 1);
4322
+ this.updateValueMembers(false, headerInfo, vData, calObj.members, axis, vcnt, levelIndex + 1);
4294
4323
  }
4295
4324
  }
4296
4325
  else {
@@ -4301,7 +4330,9 @@ var PivotEngine = /** @class */ (function () {
4301
4330
  var hData = {};
4302
4331
  hData.axis = header.valueSort.axis;
4303
4332
  hData[(levelName ? (levelName + this.valueSortSettings.headerDelimiter) : '') + header.formattedText] = 1;
4333
+ hData[(uniqueName ? (uniqueName + this.valueSortSettings.headerDelimiter) : '') + header.actualText] = 1;
4304
4334
  hData.levelName = (levelName ? (levelName + this.valueSortSettings.headerDelimiter) : '') + header.formattedText;
4335
+ hData.uniqueName = (uniqueName ? (uniqueName + this.valueSortSettings.headerDelimiter) : '') + header.actualText;
4305
4336
  header.valueSort = hData;
4306
4337
  var drillInfo = hData.axis + this.valueSortSettings.headerDelimiter + hData.levelName;
4307
4338
  if (header.isDrilled && ((this.isExpandAll && this.fieldDrillCollection[drillInfo]) ||
@@ -4312,16 +4343,16 @@ var PivotEngine = /** @class */ (function () {
4312
4343
  if (header.isDrilled && axis[rln].members.length > 0) {
4313
4344
  if (this.valueAxis && levelIndex < this.measureIndex && this.measureIndex !== (levelIndex + 1) && (!(axis[rln].hasChild &&
4314
4345
  ((!isNullOrUndefined(axis[rln].showSubTotals) && !axis[rln].showSubTotals) || !this.showSubTotals || !this.showRowSubTotals)))) {
4315
- this.updateValueMembers(true, header, hData.levelName, columnHeaders[columnHeaders.length - 1].members, [], vcnt, levelIndex);
4346
+ this.updateValueMembers(true, header, hData, columnHeaders[columnHeaders.length - 1].members, [], vcnt, levelIndex);
4316
4347
  }
4317
- this.updateValueMembers(this.measureIndex === (levelIndex + 1), header, hData.levelName, columnHeaders[columnHeaders.length - 1].members, axis[rln].members, vcnt, levelIndex + 1);
4348
+ this.updateValueMembers(this.measureIndex === (levelIndex + 1), header, hData, columnHeaders[columnHeaders.length - 1].members, axis[rln].members, vcnt, levelIndex + 1);
4318
4349
  if (!this.valueAxis && levelIndex < this.measureIndex && this.measureIndex !== (levelIndex + 1) && (!(axis[rln].hasChild &&
4319
4350
  ((!isNullOrUndefined(axis[rln].showSubTotals) && !axis[rln].showSubTotals) || !this.showSubTotals || !this.showColumnSubTotals)))) {
4320
- this.updateValueMembers(true, header, hData.levelName, columnHeaders[columnHeaders.length - 1].members, [], vcnt, levelIndex);
4351
+ this.updateValueMembers(true, header, hData, columnHeaders[columnHeaders.length - 1].members, [], vcnt, levelIndex);
4321
4352
  }
4322
4353
  }
4323
4354
  else if (levelIndex < this.measureIndex) {
4324
- this.updateValueMembers(true, header, hData.levelName, columnHeaders[columnHeaders.length - 1].members, [], vcnt, levelIndex);
4355
+ this.updateValueMembers(true, header, hData, columnHeaders[columnHeaders.length - 1].members, [], vcnt, levelIndex);
4325
4356
  }
4326
4357
  }
4327
4358
  }
@@ -4364,11 +4395,12 @@ var PivotEngine = /** @class */ (function () {
4364
4395
  if (!this.valueAxis && !this.isLastHeaderHasMeasures) {
4365
4396
  var columnHeaders = [];
4366
4397
  if (this.showGrandTotals && this.showColumnGrandTotals && axis[axis.length - 1].type == 'grand sum') {
4367
- this.updateValueMembers(this.measureIndex === 0, null, null, columnHeaders, axis.slice(0, axis.length - 1), vcnt, 0);
4398
+ this.updateValueMembers(this.measureIndex === 0 && axis.length > 1, null, null, columnHeaders, axis.slice(0, axis.length - 1), vcnt, 0);
4368
4399
  this.updateValueMembers(false, null, null, columnHeaders, axis.slice(axis.length - 1, axis.length), vcnt, -1);
4369
4400
  }
4370
4401
  else {
4371
- this.updateValueMembers(this.measureIndex === 0, null, null, columnHeaders, axis, vcnt, 0);
4402
+ var hasColumnTotal = columns.length === 0 && axis.length === 1 && axis[0].type == 'grand sum';
4403
+ this.updateValueMembers(!hasColumnTotal && this.measureIndex === 0, null, null, columnHeaders, axis, vcnt, hasColumnTotal ? -1 : 0);
4372
4404
  }
4373
4405
  this.getAggregatedHeaders(rows, columns, this.rMembers, columnHeaders, values);
4374
4406
  if (this.selectedHeaders.values.length > 0) {
@@ -4403,11 +4435,12 @@ var PivotEngine = /** @class */ (function () {
4403
4435
  }
4404
4436
  else if (rowAxis.length == 0 && (this.valueAxis && (this.isMultiMeasures || this.alwaysShowValueHeader)) && this.values.length > 0) {
4405
4437
  if (this.showGrandTotals && this.showRowGrandTotals && this.rMembers[this.rMembers.length - 1].type == 'grand sum') {
4406
- this.updateValueMembers(this.measureIndex == 0, null, null, rowAxis, this.rMembers.slice(0, this.rMembers.length - 1), this.values.length, 0);
4438
+ this.updateValueMembers(this.measureIndex == 0 && this.rMembers.length > 1, null, null, rowAxis, this.rMembers.slice(0, this.rMembers.length - 1), this.values.length, 0);
4407
4439
  this.updateValueMembers(false, null, null, rowAxis, this.rMembers.slice(this.rMembers.length - 1, this.rMembers.length), this.values.length, -1);
4408
4440
  }
4409
4441
  else {
4410
- this.updateValueMembers(this.measureIndex == 0, null, null, rowAxis, this.rMembers, this.values.length, 0);
4442
+ var hasRowTotal = rows.length === 0 && this.rMembers.length === 1 && this.rMembers[0].type == 'grand sum';
4443
+ this.updateValueMembers(!hasRowTotal && this.measureIndex == 0, null, null, rowAxis, this.rMembers, this.values.length, hasRowTotal ? -1 : 0);
4411
4444
  }
4412
4445
  this.getAggregatedHeaders(rows, columns, rowAxis, axis, values);
4413
4446
  if (this.selectedHeaders.values.length > 0) {
@@ -4492,12 +4525,12 @@ var PivotEngine = /** @class */ (function () {
4492
4525
  var isSingleMeasure = (this.columns.length === 0 && this.values.length === 1) ? true : false;
4493
4526
  if ((this.isMultiMeasures || this.alwaysShowValueHeader || isSingleMeasure) && !this.valueAxis && isTotalHide) {
4494
4527
  for (var vln = 0; vln < vcnt; vln++) {
4495
- var name_7 = this.values[vln].caption ? this.values[vln].caption : this.values[vln].name;
4528
+ var name_5 = this.values[vln].caption ? this.values[vln].caption : this.values[vln].name;
4496
4529
  /* eslint-disable */
4497
4530
  var calObj = {
4498
4531
  axis: 'column',
4499
4532
  actualText: this.values[vln].name,
4500
- formattedText: name_7,
4533
+ formattedText: name_5,
4501
4534
  level: 0,
4502
4535
  valueSort: {},
4503
4536
  colIndex: (tnum * vcnt) + 1 + vln,
@@ -4513,8 +4546,10 @@ var PivotEngine = /** @class */ (function () {
4513
4546
  data[colItmLn][(tnum * vcnt) + 1 + vln] = this.headerContent[colItmLn][(tnum * vcnt) + 1 + vln] = calObj;
4514
4547
  }
4515
4548
  var vData = data[colItmLn][(tnum * vcnt) + 1 + vln].valueSort;
4516
- vData[axis[rln].valueSort.levelName + this.valueSortSettings.headerDelimiter + name_7] = 1;
4517
- vData.levelName = axis[rln].valueSort.levelName + this.valueSortSettings.headerDelimiter + name_7;
4549
+ vData[axis[rln].valueSort.levelName + this.valueSortSettings.headerDelimiter + name_5] = 1;
4550
+ vData.levelName = axis[rln].valueSort.levelName + this.valueSortSettings.headerDelimiter + name_5;
4551
+ vData[axis[rln].valueSort.uniqueName + this.valueSortSettings.headerDelimiter + this.values[vln].name] = 1;
4552
+ vData.uniqueName = axis[rln].valueSort.uniqueName + this.valueSortSettings.headerDelimiter + this.values[vln].name;
4518
4553
  if (vData && vData[sortText]) {
4519
4554
  this.valueSortSettings.columnIndex = (tnum * vcnt) + 1 + vln;
4520
4555
  }
package/src/global.js CHANGED
@@ -1,3 +1,4 @@
1
1
  import * as index from './index';
2
2
  index.PivotView.Inject(index.GroupingBar, index.FieldList, index.CalculatedField, index.ConditionalFormatting, index.VirtualScroll, index.DrillThrough, index.Toolbar, index.PivotChart, index.PDFExport, index.ExcelExport, index.NumberFormatting, index.Grouping);
3
+ index.PivotFieldList.Inject(index.CalculatedField);
3
4
  export * from './index';
@@ -174,11 +174,13 @@ var DrillThrough = /** @class */ (function () {
174
174
  var valuetText = aggType === 'CalculatedField' ? valueCaption.toString() : aggType !== '' ?
175
175
  (this.parent.localeObj.getConstant(aggType) + ' ' + this.parent.localeObj.getConstant('of') + ' ' + valueCaption) :
176
176
  valueCaption;
177
+ var rowHeaders = this.parent.dataSourceSettings.valueAxis === 'row' ? this.parent.getRowText(Number(element.getAttribute('index')), 0) :
178
+ pivotValue.rowHeaders === '' ? '' : pivotValue.rowHeaders.toString().split(this.parent.dataSourceSettings.valueSortSettings.headerDelimiter).join(' - ');
177
179
  var eventArgs = {
178
180
  currentTarget: element,
179
181
  currentCell: pivotValue,
180
182
  rawData: rawData,
181
- rowHeaders: pivotValue.rowHeaders === '' ? '' : pivotValue.rowHeaders.toString().split(this.parent.dataSourceSettings.valueSortSettings.headerDelimiter).join(' - '),
183
+ rowHeaders: rowHeaders,
182
184
  columnHeaders: pivotValue.columnHeaders === '' ? '' : pivotValue.columnHeaders.toString().split(this.parent.dataSourceSettings.valueSortSettings.headerDelimiter).join(' - '),
183
185
  value: valuetText + '(' + pivotValue.formattedText + ')',
184
186
  gridColumns: this.drillThroughDialog.frameGridColumns(rawData),
@@ -124,13 +124,14 @@ var ExcelExport = /** @class */ (function () {
124
124
  if (!(pivotCell.level === -1 && !pivotCell.rowSpan)) {
125
125
  var cellValue = pivotCell.axis === 'value' ? pivotCell.value : pivotCell.formattedText;
126
126
  if (pivotCell.type === 'grand sum') {
127
- cellValue = this.parent.localeObj.getConstant('grandTotal');
127
+ cellValue = (this.parent.dataSourceSettings.rows.length === 0 || this.parent.dataSourceSettings.columns.length === 0) ? this.parent.getValuesHeader(pivotCell, 'grandTotal') :
128
+ this.parent.localeObj.getConstant('grandTotal');
128
129
  }
129
130
  else if (pivotCell.type === 'sum') {
130
131
  cellValue = cellValue.toString().replace('Total', this.parent.localeObj.getConstant('total'));
131
132
  }
132
133
  else {
133
- cellValue = cellValue;
134
+ cellValue = (this.parent.dataSourceSettings.rows.length === 0 || this.parent.dataSourceSettings.columns.length === 0) ? this.parent.getValuesHeader(pivotCell, 'value') : cellValue;
134
135
  }
135
136
  if (!(pivotCell.level === -1 && !pivotCell.rowSpan)) {
136
137
  cells.push({
@@ -222,9 +222,10 @@ var PDFExport = /** @class */ (function () {
222
222
  var pivotCell = pivotValues[rCnt][cCnt];
223
223
  if (!(pivotCell.level === -1 && !pivotCell.rowSpan)) {
224
224
  var cellValue = pivotCell.formattedText;
225
- cellValue = pivotCell.type === 'grand sum' ? this.parent.localeObj.getConstant('grandTotal') :
226
- (pivotCell.type === 'sum' ?
227
- cellValue.toString().replace('Total', this.parent.localeObj.getConstant('total')) : cellValue);
225
+ cellValue = (this.parent.dataSourceSettings.rows.length === 0 || this.parent.dataSourceSettings.columns.length === 0) ? this.parent.getValuesHeader(pivotCell, 'value') : cellValue;
226
+ cellValue = pivotCell.type === 'grand sum' ? (this.parent.dataSourceSettings.rows.length === 0 || this.parent.dataSourceSettings.columns.length === 0) ? this.parent.getValuesHeader(pivotCell, 'grandTotal') :
227
+ this.parent.localeObj.getConstant('grandTotal') : (pivotCell.type === 'sum' ?
228
+ cellValue.toString().replace('Total', this.parent.localeObj.getConstant('total')) : cellValue);
228
229
  if (!(pivotCell.level === -1 && !pivotCell.rowSpan)) {
229
230
  pdfGridRow.cells.getCell(localCnt).columnSpan = pivotCell.colSpan ?
230
231
  (pageSize - localCnt < pivotCell.colSpan ? pageSize - localCnt : pivotCell.colSpan) : 1;