☝️Small business or a startup? See if you qualify for our special offer.
+

Join excel from multiple pivots

Answered
Rodrigo asked on September 3, 2025

Hope! I have multiple instances of Pivot, each with its own export option in the toolbar. I need a way to export all the Excel files together into a single file. I'm using Flexmonster inside Vue.js. When I click the export button, I need to merge the Excel files of all pivots into a single one.

 htp.prn('<section  class="mt-8">');
              htp.prn('<app-flexmonster ');
              htp.prn(':report="provision.config"');
              htp.prn(':toolbar="toolbarVisibility"');
              htp.prn(':height="provision.height"');
              htp.prn('>');
              htp.prn('</app-flexmonster>');
            htp.prn('</section>');

            htp.prn('<section  class="mt-8">');
              htp.prn('<app-flexmonster ');
              htp.prn(':report="reversal.config"');
              htp.prn(':toolbar="toolbarVisibility"');
              htp.prn(':height="reversal.height"');
              htp.prn('>');
              htp.prn('</app-flexmonster>');
            htp.prn('</section>');

            htp.prn('<section  class="mt-8">');
              htp.prn('<app-flexmonster ');
              htp.prn(':report="provisionMinusReversal.config"');
              htp.prn(':toolbar="toolbarVisibility"');
              htp.prn(':height="provisionMinusReversal.height"');
              htp.prn('>');
              htp.prn('</app-flexmonster>');
            htp.prn('</section>');

            htp.prn('<section  class="mt-8">');
              htp.prn('<app-flexmonster ');
              htp.prn(':report="billing.config"');
              htp.prn(':toolbar="toolbarVisibility"');
              htp.prn(':height="billing.height"');
              htp.prn('>');
              htp.prn('</app-flexmonster>');
            htp.prn('</section>');

            htp.prn('<section  class="mt-8">');
              htp.prn('<app-flexmonster ');
              htp.prn(':report="adminCancellation.config"');
              htp.prn(':toolbar="toolbarVisibility"');
              htp.prn(':height="adminCancellation.height"');
              htp.prn('>');
              htp.prn('</app-flexmonster>');
            htp.prn('</section>');

            htp.prn('<section  class="mt-8">');
              htp.prn('<app-flexmonster ');
              htp.prn(':report="grossIncolmeColt.config"');
              htp.prn(':toolbar="toolbarVisibility"');
              htp.prn(':height="grossIncolmeColt.height"');
              htp.prn('>');
              htp.prn('</app-flexmonster>');
            htp.prn('</section>');

            htp.prn('<section  class="mt-8">');
              htp.prn('<app-flexmonster ');
              htp.prn(':report="defer.config"');
              htp.prn(':toolbar="toolbarVisibility"');
              htp.prn(':height="defer.height"');
              htp.prn('>');
              htp.prn('</app-flexmonster>');
            htp.prn('</section>');

            htp.prn('<section  class="mt-8">');
              htp.prn('<app-flexmonster ');
              htp.prn(':report="coltGrossRevenueWithDefer.config"');
              htp.prn(':toolbar="toolbarVisibility"');
              htp.prn(':height="coltGrossRevenueWithDefer.height"');
              htp.prn('>');
              htp.prn('</app-flexmonster>');
            htp.prn('</section>');

htp.prn('class Provision {');
          htp.prn('height = 450;');

          htp.prn('constructor (store) {');
            htp.prn('const showIss = store.filter.fields.showIss.value ?? null;');
            htp.prn('this.config = {');
              htp.prn('"dataSource": {');
                htp.prn('data: store.results.provisions_arr,');
                htp.prn('type: ''json'',');
                htp.prn('mapping: {');
                  htp.prn('type: {');
                    htp.prn('caption: i18next.t(''monthly-closing:table.type''),');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('economicGroup: {');
                    htp.prn('caption: i18next.t(''monthly-closing:table.economicGroup''),');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('projectName: {');
                    htp.prn('caption: i18next.t(''monthly-closing:table.project''),');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('monthYear: { caption: i18next.t(''monthly-closing:table.month-year''), type: "string", format: "YYYYMM" }');
                htp.prn('},');
              htp.prn('},');
              htp.prn('slice: {');
                htp.prn('rows: [');
                  htp.prn('{');
                    htp.prn('uniqueName: "type",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "economicGroup",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "projectName",');
                  htp.prn('},');
                htp.prn('],');
                htp.prn('columns: [');
                  htp.prn('{');
                    htp.prn('uniqueName: "monthYear",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "[Measures]",');
                  htp.prn('},');
                htp.prn('],');
                htp.prn('measures: MeasuresHelper.getProvisionMeasures(showIss),');
              htp.prn('},');
              htp.prn('"formats": [');
                htp.prn('{');
                  htp.prn('"name": "RealFormat",');
                  htp.prn('"thousandsSeparator": ".",');
                  htp.prn('"decimalSeparator": ",",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbol": "",');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": false');
                htp.prn('},');
                htp.prn('{');
                  htp.prn('"name": "PercentFormat",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": true');
                htp.prn('}');
              htp.prn('],');
              htp.prn('options: {');
                htp.prn('showAggregationLabels: false,');
                htp.prn('grid: {');
                  htp.prn('type: "compact",');
                  htp.prn('title: i18next.t(''monthly-closing:table.provision'')');
                htp.prn('},');
              htp.prn('},');
            htp.prn('};');
          htp.prn('}');
        htp.prn('}');

        htp.prn('class Reversal {');
          htp.prn('height = 450;');

          htp.prn('constructor (store) {');
            htp.prn('const showIss = store.filter.fields.showIss.value ?? null;');
            htp.prn('this.config = {');
              htp.prn('"dataSource": {');
                htp.prn('data: store.results.reversals_arr,');
                htp.prn('type: ''json'',');
                htp.prn('mapping: {');
                  htp.prn('type: {');
                    htp.prn('caption: i18next.t(''monthly-closing:table.type''),');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('economicGroup: {');
                    htp.prn('caption: i18next.t(''monthly-closing:table.economicGroup''),');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('projectName: {');
                    htp.prn('caption: i18next.t(''monthly-closing:table.project''),');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('monthYear: { caption: i18next.t(''monthly-closing:table.month-year''), type: "string", format: "YYYYMM" }');
                htp.prn('},');
              htp.prn('},');
              htp.prn('slice: {');
                htp.prn('rows: [');
                  htp.prn('{');
                    htp.prn('uniqueName: "type",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "economicGroup",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "projectName",');
                  htp.prn('},');
                htp.prn('],');
                htp.prn('columns: [');
                  htp.prn('{');
                    htp.prn('uniqueName: "monthYear",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "[Measures]",');
                  htp.prn('},');
                htp.prn('],');
                htp.prn('measures: MeasuresHelper.getProvisionMeasures(showIss),');
              htp.prn('},');
              htp.prn('"formats": [');
                htp.prn('{');
                  htp.prn('"name": "RealFormat",');
                  htp.prn('"thousandsSeparator": ".",');
                  htp.prn('"decimalSeparator": ",",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbol": "",');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": false');
                htp.prn('},');
                htp.prn('{');
                  htp.prn('"name": "PercentFormat",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": true');
                htp.prn('}');
              htp.prn('],');
              htp.prn('options: {');
                htp.prn('showAggregationLabels: false,');
                htp.prn('grid: {');
                  htp.prn('type: "compact",');
                  htp.prn('title: i18next.t(''monthly-closing:table.reversal'')');
                htp.prn('},');
              htp.prn('},');
            htp.prn('}');
          htp.prn('}');
        htp.prn('}');

        htp.prn('class ProvisionMinusReversal {');
          htp.prn('height = 290;');

          htp.prn('constructor (store) {');
            htp.prn('const showIss = store.filter.fields.showIss.value ?? null;');
            htp.prn('this.config = {');
              htp.prn('"dataSource": {');
                htp.prn('data: store.results.provisions_minus_reversals_arr,');
                htp.prn('type: ''json'',');
                htp.prn('mapping: {');
                  htp.prn('"monthYear": { caption: i18next.t(''monthly-closing:table.month-year''), type: "string", format: "YYYYMM" }');
                htp.prn('},');
              htp.prn('},');
              htp.prn('slice: {');
                htp.prn('rows: [');
                htp.prn('],');
                htp.prn('columns: [');
                  htp.prn('{');
                    htp.prn('uniqueName: "monthYear",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "[Measures]",');
                  htp.prn('},');
                htp.prn('],');
                htp.prn('measures: MeasuresHelper.getProvisionMeasures(showIss),');
              htp.prn('},');
              htp.prn('"formats": [');
                htp.prn('{');
                  htp.prn('"name": "RealFormat",');
                  htp.prn('"thousandsSeparator": ".",');
                  htp.prn('"decimalSeparator": ",",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbol": "",');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": false');
                htp.prn('},');
                htp.prn('{');
                  htp.prn('"name": "PercentFormat",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": true');
                htp.prn('}');
              htp.prn('],');
              htp.prn('options: {');
                htp.prn('showAggregationLabels: false,');
                htp.prn('grid: {');
                  htp.prn('type: "compact",');
                  htp.prn('title: i18next.t(''monthly-closing:table.total-provision''),');
                  htp.prn('showGrandTotals: "off",');
                htp.prn('},');
              htp.prn('},');
            htp.prn('}');
          htp.prn('}');
        htp.prn('}');

        htp.prn('class Billing {');
          htp.prn('height = 450;');

          htp.prn('constructor (store) {');
            htp.prn('const showIss = store.filter.fields.showIss.value ?? null;');
            htp.prn('this.config = {');
              htp.prn('"dataSource": {');
                htp.prn('data: store.results.billings_arr,');
                htp.prn('type: ''json'',');
                htp.prn('mapping: {');
                  htp.prn('subsidiary: {');
                    htp.prn('caption: ''Filial / CNPJ'',');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('service: {');
                    htp.prn('caption: i18next.t(''monthly-closing:table.type''),');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('economicsGroup: {');
                    htp.prn('caption: i18next.t(''monthly-closing:table.economicGroup''),');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('projectsName: {');
                    htp.prn('caption: i18next.t(''monthly-closing:table.project''),');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('monthYear: { caption: i18next.t(''monthly-closing:table.month-year''), type: "string", format: "YYYYMM" }');
                htp.prn('},');
              htp.prn('},');
              htp.prn('slice: {');
                htp.prn('rows: [');
                  htp.prn('{');
                    htp.prn('uniqueName: "subsidiary",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "service",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "economicsGroup",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "projectsName",');
                  htp.prn('},');
                htp.prn('],');
                htp.prn('columns: [');
                  htp.prn('{');
                    htp.prn('uniqueName: "monthYear",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "[Measures]",');
                  htp.prn('},');
                htp.prn('],');
                htp.prn('measures: MeasuresHelper.getProvisionMeasures(showIss),');
              htp.prn('},');
              htp.prn('"formats": [');
                htp.prn('{');
                  htp.prn('"name": "RealFormat",');
                  htp.prn('"thousandsSeparator": ".",');
                  htp.prn('"decimalSeparator": ",",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbol": "",');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": false');
                htp.prn('},');
                htp.prn('{');
                  htp.prn('"name": "PercentFormat",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": true');
                htp.prn('}');
              htp.prn('],');
              htp.prn('options: {');
                htp.prn('showAggregationLabels: false,');
                htp.prn('grid: {');
                  htp.prn('type: "compact",');
                  htp.prn('title: i18next.t(''monthly-closing:table.income'')');
                htp.prn('},');
              htp.prn('},');
            htp.prn('}');
          htp.prn('}');
        htp.prn('}');

        htp.prn('class AdminCancellation {');
          htp.prn('height = 450;');

          htp.prn('constructor (store) {');
            htp.prn('const showIss = store.filter.fields.showIss.value ?? null;');
            htp.prn('this.config = {');
              htp.prn('"dataSource": {');
                htp.prn('data: store.results.admin_cancellations_arr,');
                htp.prn('type: ''json'',');
                htp.prn('mapping: {');
                  htp.prn('subsidiary: {');
                    htp.prn('caption: ''Filial / CNPJ'',');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('service: {');
                    htp.prn('caption: i18next.t(''monthly-closing:table.type''),');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('economicsGroup: {');
                    htp.prn('caption: i18next.t(''monthly-closing:table.economicGroup''),');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('projectsName: {');
                    htp.prn('caption: i18next.t(''monthly-closing:table.project''),');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('monthYear: { caption: i18next.t(''monthly-closing:table.month-year''), type: "string", format: "YYYYMM" }');
                htp.prn('},');
              htp.prn('},');
              htp.prn('slice: {');
                htp.prn('rows: [');
                  htp.prn('{');
                    htp.prn('uniqueName: "subsidiary",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "service",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "economicsGroup",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "projectsName",');
                  htp.prn('},');
                htp.prn('],');
                htp.prn('columns: [');
                  htp.prn('{');
                    htp.prn('uniqueName: "monthYear",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "[Measures]",');
                  htp.prn('},');
                htp.prn('],');
                htp.prn('measures: MeasuresHelper.getProvisionMeasures(showIss),');
              htp.prn('},');
              htp.prn('"formats": [');
                htp.prn('{');
                  htp.prn('"name": "RealFormat",');
                  htp.prn('"thousandsSeparator": ".",');
                  htp.prn('"decimalSeparator": ",",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbol": "",');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": false');
                htp.prn('},');
                htp.prn('{');
                  htp.prn('"name": "PercentFormat",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": true');
                htp.prn('}');
              htp.prn('],');
              htp.prn('options: {');
                htp.prn('showAggregationLabels: false,');
                htp.prn('grid: {');
                  htp.prn('type: "compact",');
                  htp.prn('title: i18next.t(''monthly-closing:table.termination'')');
                htp.prn('},');
              htp.prn('},');
            htp.prn('}');
          htp.prn('}');
        htp.prn('}');

        htp.prn('class GrossIncolmeColt {');
          htp.prn('height = 290;');

          htp.prn('constructor (store) {');
            htp.prn('const showIss = store.filter.fields.showIss.value ?? null;');
            htp.prn('this.config = {');
              htp.prn('"dataSource": {');
                htp.prn('data: store.results.gross_incolme_colt_arr,');
                htp.prn('type: ''json'',');
                htp.prn('mapping: {');
                  htp.prn('monthYear: { caption: i18next.t(''monthly-closing:table.month-year''), type: "string", format: "YYYYMM" }');
                htp.prn('},');
              htp.prn('},');
              htp.prn('slice: {');
                htp.prn('rows: [');
                htp.prn('],');
                htp.prn('columns: [');
                  htp.prn('{');
                    htp.prn('uniqueName: "monthYear",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "[Measures]",');
                  htp.prn('},');
                htp.prn('],');
                htp.prn('measures: MeasuresHelper.getProvisionMeasures(showIss),');
              htp.prn('},');
              htp.prn('"formats": [');
                htp.prn('{');
                  htp.prn('"name": "RealFormat",');
                  htp.prn('"thousandsSeparator": ".",');
                  htp.prn('"decimalSeparator": ",",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbol": "",');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": false');
                htp.prn('},');
                htp.prn('{');
                  htp.prn('"name": "PercentFormat",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": true');
                htp.prn('}');
              htp.prn('],');
              htp.prn('options: {');
                htp.prn('showAggregationLabels: false,');
                htp.prn('grid: {');
                  htp.prn('type: "compact",');
                  htp.prn('title: i18next.t(''monthly-closing:table.colt-gross-revenue''),');
                  htp.prn('showGrandTotals: "off",');
                htp.prn('},');
              htp.prn('},');
            htp.prn('}');
          htp.prn('}');
        htp.prn('}');

        htp.prn('class Defer {');
          htp.prn('height = 450;');

          htp.prn('constructor (store) {');
            htp.prn('const showIss = store.filter.fields.showIss.value ?? null;');
            htp.prn('this.config = {');
              htp.prn('"dataSource": {');
                htp.prn('data: store.results.defer_invoicing_made_arr,');
                htp.prn('type: ''json'',');
                htp.prn('mapping: {');
                  htp.prn('economicGroup: {');
                    htp.prn('caption: i18next.t(''monthly-closing:table.economicGroup''),');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('projectName: {');
                    htp.prn('caption: i18next.t(''monthly-closing:table.project''),');
                    htp.prn('type: "string",');
                  htp.prn('},');
                  htp.prn('monthYear: { caption: i18next.t(''monthly-closing:table.month-year''), type: "string", format: "YYYYMM" }');
                htp.prn('},');
              htp.prn('},');
              htp.prn('slice: {');
                htp.prn('rows: [');
                  htp.prn('{');
                    htp.prn('uniqueName: "tipo",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "economicGroup",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "projectName",');
                  htp.prn('},');
                htp.prn('],');
                htp.prn('columns: [');
                  htp.prn('{');
                    htp.prn('uniqueName: "monthYear",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "[Measures]",');
                  htp.prn('},');
                htp.prn('],');
                htp.prn('measures: MeasuresHelper.getProvisionMeasures(showIss),');
              htp.prn('},');
              htp.prn('"formats": [');
                htp.prn('{');
                  htp.prn('"name": "RealFormat",');
                  htp.prn('"thousandsSeparator": ".",');
                  htp.prn('"decimalSeparator": ",",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbol": "",');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": false');
                htp.prn('},');
                htp.prn('{');
                  htp.prn('"name": "PercentFormat",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": true');
                htp.prn('}');
              htp.prn('],');
              htp.prn('options: {');
                htp.prn('showAggregationLabels: false,');
                htp.prn('grid: {');
                  htp.prn('type: "compact",');
                  htp.prn('title: ''Diferimento Faturado''');
                htp.prn('},');
              htp.prn('},');
            htp.prn('};');
          htp.prn('}');
        htp.prn('}');

        htp.prn('class ColtGrossRevenueWithDefer {');
          htp.prn('height = 290;');

          htp.prn('constructor (store) {');
            htp.prn('const showIss = store.filter.fields.showIss.value ?? null;');
            htp.prn('this.config = {');
              htp.prn('"dataSource": {');
                htp.prn('data: store.results.colt_gross_revenue_with_defer_arr,');
                htp.prn('type: ''json'',');
                htp.prn('mapping: {');
                  htp.prn('monthYear: { caption: i18next.t(''monthly-closing:table.month-year''), type: "string", format: "YYYYMM" }');
                htp.prn('},');
              htp.prn('},');
              htp.prn('slice: {');
                htp.prn('rows: [');
                htp.prn('],');
                htp.prn('columns: [');
                  htp.prn('{');
                    htp.prn('uniqueName: "monthYear",');
                  htp.prn('},');
                  htp.prn('{');
                    htp.prn('uniqueName: "[Measures]",');
                  htp.prn('},');
                htp.prn('],');
                htp.prn('measures: MeasuresHelper.getProvisionMeasures(showIss),');
              htp.prn('},');
              htp.prn('"formats": [');
                htp.prn('{');
                  htp.prn('"name": "RealFormat",');
                  htp.prn('"thousandsSeparator": ".",');
                  htp.prn('"decimalSeparator": ",",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbol": "",');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": false');
                htp.prn('},');
                htp.prn('{');
                  htp.prn('"name": "PercentFormat",');
                  htp.prn('"decimalPlaces": 2,');
                  htp.prn('"currencySymbolAlign": "left",');
                  htp.prn('nullValue: "0,00",');
                  htp.prn('"textAlign": "right",');
                  htp.prn('"isPercent": true');
                htp.prn('}');
              htp.prn('],');
              htp.prn('options: {');
                htp.prn('showAggregationLabels: false,');
                htp.prn('grid: {');
                  htp.prn('type: "compact",');
                  htp.prn('title: ''Receita Bruta Colt com Diferimento'',');
                  htp.prn('showGrandTotals: "off",');
                htp.prn('},');
              htp.prn('},');
            htp.prn('}');
          htp.prn('}');
        htp.prn('}');

2 answers

Public
Maksym Diachenko Maksym Diachenko Flexmonster September 4, 2025

Hello, Rodrigo!

Thank you for reaching out to us.

Flexmonster allows exporting multiple table instances into a single Excel file using the exportTo API call. This method can be used to export to Excel in the Uint8Array format with the destinationType parameter set to "plain". The resulting data can be combined into a single file by a third-party library for working with Excel, like SheetJS.
For refernce, you can check this example where two pivots are combined in one sheet: https://jsfiddle.net/flexmonster/Lpneu2xt/

Please let us know if this approach works for you.

Best regards,
Maksym

Public
Maksym Diachenko Maksym Diachenko Flexmonster September 11, 2025

Hello, Rodrigo!

Hope you are doing well.
Our team would like to know if you tried implementing the suggested approach for combining different tables in one Excel file during export.
We are looking forward to hearing from you.

Best regards,
Maksym

Please login or Register to Submit Answer