1

I'm using HSSFRow to develop download excel functionality, by using multiple list, multiple data are writing in excel but multiple header are not coming in generated excel, I'm stuck in this kindly help on this, and let me know if you need other information, PSB for my code.

Currently My excel is looking like this: Currently My excel is looking like this image

I want to write excel like this: I want to write excel like this image

List<SOOrderDetails>soOrderDetailList=(List<SOOrderDetails>) model.get("soOrderDetailList");
List<SOProductDetails>soProcudtDetailList=(List<SOProductDetails>) model.get("soProcudtDetailList");
  sheet = workbook.createSheet("SO Details");

  System.out.println("rowcount:::"+rowCount);
  HSSFRow header6 = sheet.createRow(0);
  header6.createCell(0).setCellValue("SO Number");
  header6.getCell(0).setCellStyle(style);

  header6.createCell(1).setCellValue("Customer");
  header6.getCell(1).setCellStyle(style);

  header6.createCell(2).setCellValue("Creation Date");
  header6.getCell(2).setCellStyle(style);

  header6.createCell(3).setCellValue("Order Type");
  header6.getCell(3).setCellStyle(style);

  header6.createCell(4).setCellValue("Order Value");
  header6.getCell(4).setCellStyle(style);

  header6.createCell(5).setCellValue("Order Status");
  header6.getCell(5).setCellStyle(style);

  header6.createCell(6).setCellValue("Order Source");
  header6.getCell(6).setCellStyle(style);

  header6.createCell(7).setCellValue("Org Id");
  header6.getCell(7).setCellStyle(style);

  header6.createCell(8).setCellValue("Invoice Released");
  header6.getCell(8).setCellStyle(style);

  for (SOOrderDetails soOrderDetails : soOrderDetailList) {
     System.out.println("rowcount::for:"+rowCount);
     HSSFRow aRow = sheet.createRow(rowCount++);
     aRow.createCell(0).setCellValue(soOrderDetails.getSoNumber());
     aRow.createCell(1).setCellValue(soOrderDetails.getCustomerName());
     aRow.createCell(2).setCellValue(soOrderDetails.getOrderCreationDate());
     aRow.createCell(3).setCellValue(soOrderDetails.getOrderType());
     aRow.createCell(4).setCellValue(soOrderDetails.getOrderValue());
     aRow.createCell(5).setCellValue(soOrderDetails.getStatus());
     aRow.createCell(6).setCellValue(soOrderDetails.getOrderSource());
     aRow.createCell(7).setCellValue(soOrderDetails.getOrdId());
     aRow.createCell(8).setCellValue(soOrderDetails.getInvoiceRelease());

  }

  sheet.autoSizeColumn(0);sheet.autoSizeColumn(1);sheet.autoSizeColumn(2);sheet.autoSizeColumn(3);sheet.autoSizeColumn(4);sheet.autoSizeColumn(5);
  sheet.autoSizeColumn(6);sheet.autoSizeColumn(7);sheet.autoSizeColumn(8);

  int rowCount1=rowCount+5;
  System.out.println("rowcount1:::"+rowCount1);
   HSSFRow header7 = sheet.createRow(rowCount1);
     header7.createCell(0).setCellValue("SO Line Id");
     header7.getCell(0).setCellStyle(style);

     header7.createCell(1).setCellValue("Item Name");
     header7.getCell(1).setCellStyle(style);

     header7.createCell(2).setCellValue("Quantity");
     header7.getCell(2).setCellStyle(style);

     header7.createCell(3).setCellValue("Unit List Price");
     header7.getCell(3).setCellStyle(style);

     header7.createCell(4).setCellValue("Price List Id");
     header7.getCell(4).setCellStyle(style);

     header7.createCell(5).setCellValue("Ship Date");
     header7.getCell(5).setCellStyle(style);

     header7.createCell(6).setCellValue("Install At Locatoin");
     header7.getCell(6).setCellStyle(style);

     header7.createCell(7).setCellValue("Link To Line Id");
     header7.getCell(7).setCellStyle(style);

     header7.createCell(8).setCellValue("Instance Id");
     header7.getCell(8).setCellStyle(style);

     header7.createCell(9).setCellValue("Serial Number");
     header7.getCell(9).setCellStyle(style);

     header7.createCell(10).setCellValue("Status");
     header7.getCell(10).setCellStyle(style);

     header7.createCell(11).setCellValue("Error Code");
     header7.getCell(11).setCellStyle(style);

     header7.createCell(12).setCellValue("Error Message");
     header7.getCell(12).setCellStyle(style);

     header7.createCell(13).setCellValue("Inc Case");
     header7.getCell(13).setCellStyle(style);
     //int rowCoun1=rowCount;
     for (SOProductDetails soProductDetails : soProcudtDetailList) {
        System.out.println("rowcount:::"+rowCount1);
        HSSFRow bRow = sheet.createRow(rowCount1++);

        bRow.createCell(0).setCellValue(soProductDetails.getSoLineId());
        bRow.createCell(1).setCellValue(soProductDetails.getItemName());
        bRow.createCell(2).setCellValue(soProductDetails.getQuantity());
        bRow.createCell(3).setCellValue(soProductDetails.getUnitListPrice());
        bRow.createCell(4).setCellValue(soProductDetails.getPriceListId());
        bRow.createCell(5).setCellValue(soProductDetails.getShipDate());
        bRow.createCell(6).setCellValue(soProductDetails.getInstallAtLocation());
        bRow.createCell(7).setCellValue(soProductDetails.getLinkToLineId());
        bRow.createCell(8).setCellValue(soProductDetails.getInstanceId());
        bRow.createCell(9).setCellValue(soProductDetails.getSerialNumber());
        bRow.createCell(10).setCellValue(soProductDetails.getStatus());
        bRow.createCell(11).setCellValue(soProductDetails.getErrorCode());
        bRow.createCell(12).setCellValue(soProductDetails.getErrorMessage());
        bRow.createCell(13).setCellValue(soProductDetails.getCaseNo());
     }
Gagravarr
  • 47,320
  • 10
  • 111
  • 156

0 Answers0