Wijmo flexsheet took more time for loading data

Posted by: teenu.k on 8 November 2019, 2:50 am EST

  • Posted 8 November 2019, 2:50 am EST

    Hi,

    I am working on a wijmo flexsheet with Angular 7. The data for flexsheet is fetched from a server and sometimes the request may gets 45,000 Records.

    And also sheet has 50 columns.the problem is that data loading on flexsheet took more time when thousand of data came (tooks more than 5 minutes for 45,000 Records ).what is the usuall time for loading these much of data?

    Database Used : PostgreSQL and using around 7 joins in my sql query

    Following are the code Snippet.Is there any issue in my wijmo coding.

    • "In my html "

    <wj-flex-sheet #flex (dblclick)=“onClick($event)” (initialized)=“flexInitialized(flex)” >

    <wj-sheet [name]=“‘Data’” [itemsSource]=“reportData” >

    • “In Component.ts”

    flexInitialized(flex: wjcGridSheet.FlexSheet) {

    var self = this;

    if (flex) {

    flex.selectedSheetChanged.addHandler(() => {

    if (flex.selectedSheet.grid[‘wj_sheetInfo’]) {

    self._updateFonts(flex.selectedSheet.grid[‘wj_sheetInfo’].fonts);

    }

    self.columns = self._getColumns();

      self.isFrozen = self.flexsheet.frozenRows > 0 || self.flexsheet.frozenColumns > 0;
     });
    
     flex.selectionChanged.addHandler((sender: any, args: wjcGrid.CellRangeEventArgs) => {
    
      self.selectionFormatState = flex.getSelectionFormatState();
    });
    

    }

    }

    getReport(){

    this.appService.getReport(this.compList,this.pgmList).subscribe(datass => {

    let allItems = datass as JSON;

    self.reportData=allItems[“data”];

    self.bindingData = allItems[“bindingData”];

    this.reportFilter(this.flexsheet);

    self.reportSize = self.reportData.length;

    }, error => {

    console.log(error);

    });

    }

    reportFilter(flex: wjcGridSheet.FlexSheet){

    var self = this;

    flex.formatItem.addHandler((s: wjcGridSheet.FlexSheet, e: wjcGrid.FormatItemEventArgs) => {

    self.bindingData.forEach(element => {
     if(element.binding === e.panel.columns[e.col].binding  && element.format !=undefined){
      e.panel.columns[e.col].format = element.format;
     }
      
    });
    if(e.panel.columns[e.col].binding == 'Id' ){
      e.panel.columns[e.col].visible=false;
       } 
          });
    

    }

    Can AnyOne Suggest An option For Decreasing The data Loading time on flexsheet.

    Thanks,

    Teenu

  • Posted 10 November 2019, 11:53 pm EST

    Hi Teenu,

    We are sorry but we were not able to replicate the issue at our end. FlexSheet control can easily handle 45000 records of data. Please refer to the attached sample. Could you please modify the sample accordingly so that it reproduces the issue. It will help us to assist you further.

    Regards,

    Ashwin

    flexsheet.zip

Need extra support?

Upgrade your support plan and get personal unlimited phone support with our customer engagement team

Learn More

Forum Channels