Example usage for org.apache.poi.hssf.usermodel HSSFSheet setColumnWidth

List of usage examples for org.apache.poi.hssf.usermodel HSSFSheet setColumnWidth

Introduction

In this page you can find the example usage for org.apache.poi.hssf.usermodel HSSFSheet setColumnWidth.

Prototype

@Override
public void setColumnWidth(int columnIndex, int width) 

Source Link

Document

Set the width (in units of 1/256th of a character width)

The maximum column width for an individual cell is 255 characters.

Usage

From source file:com.smi.travel.controller.excel.booking.OutboundPackageSummary.java

public void genOutboundPackageSummaryReport(HSSFWorkbook wb, List opslist) {
    UtilityExcelFunction excelFunction = new UtilityExcelFunction();
    String sheetName = "Sheet1";// name of sheet
    HSSFSheet sheet = wb.createSheet(sheetName);

    OutboundPackageSummaryView dataheader = new OutboundPackageSummaryView();

    HSSFDataFormat currency = wb.createDataFormat();
    // Set align Text
    HSSFCellStyle styleC21 = wb.createCellStyle();
    styleC21.setAlignment(styleC21.ALIGN_RIGHT);
    styleC21.setDataFormat(currency.getFormat("#,##0.00"));
    HSSFCellStyle styleC22 = wb.createCellStyle();
    styleC22.setAlignment(styleC22.ALIGN_LEFT);

    if (!opslist.isEmpty()) {
        dataheader = (OutboundPackageSummaryView) opslist.get(0);

        // set Header Report (Row 1)
        HSSFCellStyle styleC1 = wb.createCellStyle();
        HSSFRow row1 = sheet.createRow(0);
        HSSFCell cell1 = row1.createCell(0);
        cell1.setCellValue("Package Summary");
        styleC1.setFont(excelFunction.getHeaderFont(wb.createFont()));
        cell1.setCellStyle(styleC1);/*from  www  . j a v  a  2s  .  c o m*/
        sheet.addMergedRegion(CellRangeAddress.valueOf("A1:F1"));

        // Row 2
        HSSFRow row2 = sheet.createRow(1);
        HSSFCell cell21 = row2.createCell(0);
        cell21.setCellValue("City : ");
        cell21.setCellStyle(styleC21);
        HSSFCell cell22 = row2.createCell(1);
        cell22.setCellValue(dataheader.getHeadercity());
        cell22.setCellStyle(styleC22);
        sheet.addMergedRegion(CellRangeAddress.valueOf("B2:D2"));
        HSSFCell cell23 = row2.createCell(4);
        cell23.setCellValue("Pay By : ");
        cell23.setCellStyle(styleC21);
        HSSFCell cell24 = row2.createCell(5);
        cell24.setCellValue(dataheader.getHeaderpayby());
        cell24.setCellStyle(styleC22);

        // Row 3
        HSSFRow row3 = sheet.createRow(2);
        HSSFCell cell31 = row3.createCell(0);
        cell31.setCellValue("Package : ");
        cell31.setCellStyle(styleC21);
        HSSFCell cell32 = row3.createCell(1);
        cell32.setCellValue(dataheader.getHeaderpackage());
        cell32.setCellStyle(styleC22);
        sheet.addMergedRegion(CellRangeAddress.valueOf("B3:D3"));
        HSSFCell cell33 = row3.createCell(4);
        cell33.setCellValue("Bank Transfer : ");
        cell33.setCellStyle(styleC21);
        HSSFCell cell34 = row3.createCell(5);
        cell34.setCellValue(dataheader.getHeaderbank());
        cell34.setCellStyle(styleC22);

        // Row 4
        HSSFRow row4 = sheet.createRow(3);
        HSSFCell cell41 = row4.createCell(0);
        cell41.setCellValue("Date : ");
        cell41.setCellStyle(styleC21);
        HSSFCell cell42 = row4.createCell(1);
        cell42.setCellValue(dataheader.getHeaderdate());
        cell42.setCellStyle(styleC22);
        sheet.addMergedRegion(CellRangeAddress.valueOf("B4:D4"));
        HSSFCell cell43 = row4.createCell(4);
        cell43.setCellValue("Status : ");
        cell43.setCellStyle(styleC21);
        HSSFCell cell44 = row4.createCell(5);
        cell44.setCellValue(dataheader.getHeaderstatus());
        cell44.setCellStyle(styleC22);

    }
    // Header Table
    HSSFCellStyle styleC3 = wb.createCellStyle();
    styleC3.setFont(excelFunction.getHeaderTable(wb.createFont()));
    styleC3.setAlignment(styleC3.ALIGN_CENTER);
    styleC3.setVerticalAlignment(styleC3.VERTICAL_CENTER);
    styleC3.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC3.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC3.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC3.setBorderTop(HSSFCellStyle.BORDER_THIN);

    HSSFCellStyle styletop = wb.createCellStyle();
    styletop.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styletop.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styletop.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styletop.setAlignment(styletop.ALIGN_CENTER);
    styletop.setFont(excelFunction.getHeaderTable(wb.createFont()));
    styletop.setVerticalAlignment(styletop.VERTICAL_CENTER);

    HSSFCellStyle stylebottom = wb.createCellStyle();
    stylebottom.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    stylebottom.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    stylebottom.setBorderRight(HSSFCellStyle.BORDER_THIN);
    stylebottom.setAlignment(styletop.ALIGN_CENTER);
    stylebottom.setFont(excelFunction.getHeaderTable(wb.createFont()));
    stylebottom.setVerticalAlignment(styletop.VERTICAL_CENTER);
    //        
    //        for(int i = 0 ; i < 20 ; i++){
    //            HSSFRow row4 = sheet.createRow(4);
    //            HSSFCell cell = row4.createCell(i);
    //            cell.setCellStyle(stylebottom);
    //        }

    HSSFRow row5 = sheet.createRow(5);
    HSSFCell cell61 = row5.createCell(0);
    cell61.setCellValue("SALE DATE");
    cell61.setCellStyle(styletop);
    HSSFCell cell62 = row5.createCell(1);
    cell62.setCellValue("RECORD NO");
    cell62.setCellStyle(styletop);
    HSSFCell cell63 = row5.createCell(2);
    cell63.setCellValue("REF NO");
    cell63.setCellStyle(styletop);
    HSSFCell cell64 = row5.createCell(3);
    cell64.setCellValue("TOUR CODE");
    cell64.setCellStyle(styletop);
    HSSFCell cell65 = row5.createCell(4);
    cell65.setCellValue("TOUR NAME");
    cell65.setCellStyle(styletop);
    HSSFCell cell66 = row5.createCell(5);
    cell66.setCellValue("CUSTOMER NAME");
    cell66.setCellStyle(styletop);
    sheet.autoSizeColumn(5);
    HSSFCell cell67 = row5.createCell(6);
    cell67.setCellValue("PERIOD");
    cell67.setCellStyle(styletop);
    HSSFCell cell68 = row5.createCell(7);
    cell68.setCellValue("PAX");
    cell68.setCellStyle(styletop);
    HSSFCell cell068 = row5.createCell(8);
    cell068.setCellValue("");
    cell068.setCellStyle(styletop);
    HSSFCell cell069 = row5.createCell(9);
    cell069.setCellValue("");
    cell069.setCellStyle(styletop);
    HSSFCell cell70 = row5.createCell(10);
    cell70.setCellValue("TOTAL");
    cell70.setCellStyle(styletop);
    HSSFCell cell71 = row5.createCell(11);
    cell71.setCellValue("TOTAL");
    cell71.setCellStyle(styletop);
    HSSFCell cell72 = row5.createCell(12);
    cell72.setCellValue("TOTAL");
    cell72.setCellStyle(styletop);
    HSSFCell cell73 = row5.createCell(13);
    cell73.setCellValue("BANK");
    cell73.setCellStyle(styletop);
    HSSFCell cell74 = row5.createCell(14);
    cell74.setCellValue("DATE");
    cell74.setCellStyle(styletop);
    HSSFCell cell75 = row5.createCell(15);
    cell75.setCellValue("STATUS");
    cell75.setCellStyle(styletop);
    HSSFCell cell76 = row5.createCell(16);
    cell76.setCellValue("REMARK");
    cell76.setCellStyle(styletop);
    HSSFCell cell77 = row5.createCell(17);
    cell77.setCellValue("SELLER");
    cell77.setCellStyle(styletop);

    sheet.addMergedRegion(CellRangeAddress.valueOf("A6:A7"));
    sheet.addMergedRegion(CellRangeAddress.valueOf("B6:B7"));
    sheet.addMergedRegion(CellRangeAddress.valueOf("C6:C7"));
    sheet.addMergedRegion(CellRangeAddress.valueOf("D6:D7"));
    sheet.addMergedRegion(CellRangeAddress.valueOf("E6:E7"));
    sheet.addMergedRegion(CellRangeAddress.valueOf("F6:F7"));
    sheet.addMergedRegion(CellRangeAddress.valueOf("G6:G7"));
    sheet.addMergedRegion(CellRangeAddress.valueOf("H6:J6"));
    sheet.addMergedRegion(CellRangeAddress.valueOf("P6:P7"));
    sheet.addMergedRegion(CellRangeAddress.valueOf("R6:R7"));

    HSSFRow row6 = sheet.createRow(6);
    HSSFCell cell78 = row6.createCell(0);
    cell78.setCellStyle(stylebottom);
    HSSFCell cell79 = row6.createCell(1);
    cell79.setCellStyle(stylebottom);
    HSSFCell cell80 = row6.createCell(2);
    cell80.setCellValue("");
    cell80.setCellStyle(stylebottom);
    HSSFCell cell81 = row6.createCell(3);
    cell81.setCellValue("");
    cell81.setCellStyle(stylebottom);
    HSSFCell cell82 = row6.createCell(4);
    cell82.setCellValue("");
    cell82.setCellStyle(stylebottom);
    HSSFCell cell83 = row6.createCell(5);
    cell83.setCellValue("");
    cell83.setCellStyle(stylebottom);
    HSSFCell cell84 = row6.createCell(6);
    cell84.setCellValue("");
    cell84.setCellStyle(stylebottom);
    HSSFCell cell85 = row6.createCell(7);
    cell85.setCellValue("AD");
    cell85.setCellStyle(styleC3);
    HSSFCell cell86 = row6.createCell(8);
    cell86.setCellValue("CH");
    cell86.setCellStyle(styleC3);
    HSSFCell cell87 = row6.createCell(9);
    cell87.setCellValue("IN");
    cell87.setCellStyle(styleC3);
    HSSFCell cell91 = row6.createCell(10);
    cell91.setCellValue("NETT");
    cell91.setCellStyle(stylebottom);
    HSSFCell cell92 = row6.createCell(11);
    cell92.setCellValue("SALE");
    cell92.setCellStyle(stylebottom);
    HSSFCell cell93 = row6.createCell(12);
    cell93.setCellValue("PROFIT");
    cell93.setCellStyle(stylebottom);
    HSSFCell cell94 = row6.createCell(13);
    cell94.setCellValue("TRSF");
    cell94.setCellStyle(stylebottom);
    HSSFCell cell95 = row6.createCell(14);
    cell95.setCellValue("TRSF");
    cell95.setCellStyle(stylebottom);
    HSSFCell cell96 = row6.createCell(15);
    cell96.setCellValue("");
    cell96.setCellStyle(stylebottom);
    HSSFCell cell97 = row6.createCell(16);
    cell97.setCellValue("SUPPLIER");
    cell97.setCellStyle(stylebottom);
    HSSFCell cell98 = row6.createCell(17);
    cell98.setCellValue("");
    cell98.setCellStyle(stylebottom);

    //Detail of Table
    int count = 7;
    HSSFCellStyle styleC23 = wb.createCellStyle();
    styleC23.setAlignment(styleC23.ALIGN_CENTER);
    styleC23.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC23.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC23.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC23.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC23.setDataFormat(currency.getFormat("#,##0"));

    HSSFCellStyle styleC24 = wb.createCellStyle();
    styleC24.setAlignment(styleC24.ALIGN_LEFT);
    styleC24.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC24.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC24.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC24.setBorderBottom(HSSFCellStyle.BORDER_THIN);

    HSSFCellStyle styleC25 = wb.createCellStyle();
    styleC25.setAlignment(styleC25.ALIGN_RIGHT);
    styleC25.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC25.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC25.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC25.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC25.setDataFormat(currency.getFormat("#,##0.00"));

    HSSFCellStyle styleC26 = wb.createCellStyle();
    styleC26.setAlignment(styleC26.ALIGN_CENTER);
    styleC26.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC26.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC26.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC26.setBorderBottom(HSSFCellStyle.BORDER_THIN);

    for (int i = 0; i < opslist.size(); i++) {
        OutboundPackageSummaryView data = (OutboundPackageSummaryView) opslist.get(i);
        HSSFRow row = sheet.createRow(count + i);

        HSSFCell celldata0 = row.createCell(0);
        celldata0.setCellValue(data.getDepartdate());
        celldata0.setCellStyle(styleC23);

        HSSFCell celldata1 = row.createCell(1);
        celldata1.setCellValue(data.getRecondno());
        celldata1.setCellStyle(styleC24);

        HSSFCell celldata2 = row.createCell(2);
        celldata2.setCellValue(data.getRefno());
        celldata2.setCellStyle(styleC24);

        HSSFCell celldata3 = row.createCell(3);
        celldata3.setCellValue(data.getPackagecode());
        celldata3.setCellStyle(styleC24);

        HSSFCell celldata4 = row.createCell(4);
        celldata4.setCellValue(data.getPackagename());
        celldata4.setCellStyle(styleC24);

        HSSFCell celldata5 = row.createCell(5);
        celldata5.setCellValue(data.getLeader());
        celldata5.setCellStyle(styleC24);

        HSSFCell celldata6 = row.createCell(6);
        celldata6.setCellValue(data.getPeriod());
        celldata6.setCellStyle(styleC26);

        HSSFCell celldata7 = row.createCell(7);
        celldata7.setCellValue("".equalsIgnoreCase(String.valueOf(data.getPaxadult())) ? 0
                : new BigDecimal(data.getPaxadult()).doubleValue());
        celldata7.setCellStyle(styleC23);

        HSSFCell celldata8 = row.createCell(8);
        celldata8.setCellValue("".equalsIgnoreCase(String.valueOf(data.getPaxchild())) ? 0
                : new BigDecimal(data.getPaxchild()).doubleValue());
        celldata8.setCellStyle(styleC23);

        //set data 
        HSSFCell celldata9 = row.createCell(9);
        celldata9.setCellValue("".equalsIgnoreCase(String.valueOf(data.getPaxinfant())) ? 0
                : new BigDecimal(data.getPaxinfant()).doubleValue());
        celldata9.setCellStyle(styleC23);

        HSSFCell celldata10 = row.createCell(10);
        celldata10.setCellValue("".equalsIgnoreCase(String.valueOf(data.getNet())) ? 0
                : new BigDecimal(data.getNet()).doubleValue());
        celldata10.setCellStyle(styleC25);

        HSSFCell celldata11 = row.createCell(11);
        celldata11.setCellValue("".equalsIgnoreCase(String.valueOf(data.getSell())) ? 0
                : new BigDecimal(data.getSell()).doubleValue());
        celldata11.setCellStyle(styleC25);

        HSSFCell celldata12 = row.createCell(12);
        celldata12.setCellValue("".equalsIgnoreCase(String.valueOf(data.getProfit())) ? 0
                : new BigDecimal(data.getProfit()).doubleValue());
        celldata12.setCellStyle(styleC25);

        HSSFCell celldata13 = row.createCell(13);
        celldata13.setCellValue(data.getBanktransfer());
        celldata13.setCellStyle(styleC23);

        HSSFCell celldata14 = row.createCell(14);
        celldata14.setCellValue(data.getTransferdate());
        celldata14.setCellStyle(styleC23);

        HSSFCell celldata15 = row.createCell(15);
        celldata15.setCellValue(data.getStatusname());
        celldata15.setCellStyle(styleC23);

        HSSFCell celldata16 = row.createCell(16);
        celldata16.setCellValue(data.getRemark());
        celldata16.setCellStyle(styleC24);

        HSSFCell celldata17 = row.createCell(17);
        celldata17.setCellValue(data.getSeller());
        celldata17.setCellStyle(styleC24);

    }

    for (int j = 0; j < 21; j++) {
        sheet.autoSizeColumn(j);
    }

    sheet.setColumnWidth(0, 256 * 15);
    sheet.setColumnWidth(1, 256 * 15);
    sheet.setColumnWidth(2, 256 * 15);
    sheet.setColumnWidth(3, 256 * 15);
    //        sheet.setColumnWidth(4, 256*25);
    //        sheet.setColumnWidth(5, 256*25);
    sheet.setColumnWidth(6, 256 * 15);
    sheet.setColumnWidth(10, 256 * 15);
    sheet.setColumnWidth(11, 256 * 15);
    sheet.setColumnWidth(12, 256 * 15);
    sheet.setColumnWidth(13, 256 * 15);
    sheet.setColumnWidth(14, 256 * 15);
    sheet.setColumnWidth(15, 256 * 15);
    sheet.setColumnWidth(16, 256 * 15);
    sheet.setColumnWidth(17, 256 * 15);
    //        sheet.setColumnWidth(18, 256*15);
    //        sheet.setColumnWidth(19, 256*15);
    //        sheet.setColumnWidth(20, 256*15);

}

From source file:com.smi.travel.controller.excel.booking.OutboundProductSummary.java

public void getPaymentProfitLossSummary(HSSFWorkbook wb, List listPayment) {
    UtilityExcelFunction excelFunction = new UtilityExcelFunction();
    String sheetName = "Sheet1";// name of sheet
    HSSFSheet sheet = wb.createSheet(sheetName);

    PaymentProfitLossView dataheader = new PaymentProfitLossView();

    HSSFDataFormat currency = wb.createDataFormat();

    // Set align Text
    HSSFCellStyle styleC21 = wb.createCellStyle();
    styleC21.setAlignment(styleC21.ALIGN_RIGHT);
    styleC21.setDataFormat(currency.getFormat("#,##0"));
    HSSFCellStyle styleC22 = wb.createCellStyle();
    styleC22.setAlignment(styleC22.ALIGN_LEFT);

    HSSFCellStyle styleC23 = wb.createCellStyle();
    styleC23.setAlignment(styleC23.ALIGN_CENTER);

    HSSFCellStyle styleGroup = wb.createCellStyle();
    styleGroup.setAlignment(styleGroup.ALIGN_CENTER);
    styleGroup.setFont(excelFunction.getHeaderTable(wb.createFont()));

    HSSFCellStyle styleGroupdata = wb.createCellStyle();
    styleGroupdata.setAlignment(styleGroupdata.ALIGN_LEFT);
    //        styleGroupdata.setFont(excelFunction.getHeaderTable(wb.createFont()));

    HSSFCellStyle styleC25 = wb.createCellStyle();
    styleC25.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC25.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC25.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC25.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC25.setDataFormat(currency.getFormat("#,##0.00"));
    styleC25.setVerticalAlignment(styleC25.VERTICAL_CENTER);

    HSSFCellStyle styleC26 = wb.createCellStyle();
    styleC26.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC26.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC26.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC26.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC26.setDataFormat(currency.getFormat("#,##0"));
    styleC26.setAlignment(styleC26.ALIGN_CENTER);
    styleC26.setVerticalAlignment(styleC26.VERTICAL_CENTER);
    //        styleC26.setFillForegroundColor(IndexedColors.YELLOW.getIndex());
    //        styleC26.setFillPattern(styleC26.SOLID_FOREGROUND);

    HSSFCellStyle styleC27 = wb.createCellStyle();
    styleC27.setAlignment(styleC27.ALIGN_RIGHT);
    styleC27.setDataFormat(currency.getFormat("#,##0.00"));

    HSSFCellStyle styleC28 = wb.createCellStyle();
    styleC28.setAlignment(styleC28.ALIGN_CENTER);
    styleC28.setDataFormat(currency.getFormat("#,##0"));

    HSSFCellStyle styleC29 = wb.createCellStyle();
    styleC29.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC29.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC29.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC29.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC29.setWrapText(true);//w ww .j a  va  2s  .c  om
    styleC29.setVerticalAlignment(styleC29.VERTICAL_CENTER);
    //        styleC29.setFillForegroundColor(IndexedColors.YELLOW.getIndex());
    //        styleC29.setFillPattern(styleC29.SOLID_FOREGROUND);

    HSSFCellStyle styleC30 = wb.createCellStyle();
    styleC30.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC30.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC30.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC30.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC30.setAlignment(styleC22.ALIGN_CENTER);
    styleC30.setWrapText(true);
    styleC30.setVerticalAlignment(styleC30.VERTICAL_CENTER);
    //        styleC30.setFillForegroundColor(IndexedColors.YELLOW.getIndex());
    //        styleC30.setFillPattern(styleC30.SOLID_FOREGROUND);

    HSSFCellStyle styleTotal = wb.createCellStyle();
    styleTotal.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleTotal.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleTotal.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleTotal.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleTotal.setWrapText(true);
    styleTotal.setVerticalAlignment(styleTotal.VERTICAL_CENTER);
    styleTotal.setAlignment(styleTotal.ALIGN_CENTER);
    styleTotal.setFont(excelFunction.getHeadDetailBoldFont(wb.createFont()));
    styleTotal.setDataFormat(currency.getFormat("#,##0"));
    //        styleTotal.setFillForegroundColor(IndexedColors.BLUE.getIndex());
    //        styleTotal.setFillPattern(styleTotal.SOLID_FOREGROUND);

    HSSFCellStyle styleTotalCurrency = wb.createCellStyle();
    styleTotalCurrency.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleTotalCurrency.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleTotalCurrency.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleTotalCurrency.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleTotalCurrency.setWrapText(true);
    styleTotalCurrency.setVerticalAlignment(styleTotalCurrency.VERTICAL_CENTER);
    styleTotalCurrency.setAlignment(styleTotalCurrency.ALIGN_RIGHT);
    styleTotalCurrency.setFont(excelFunction.getHeadDetailBoldFont(wb.createFont()));
    styleTotalCurrency.setDataFormat(currency.getFormat("#,##0.00"));
    //        styleTotalCurrency.setFillForegroundColor(IndexedColors.ORANGE.getIndex());
    //        styleTotalCurrency.setFillPattern(styleTotalCurrency.SOLID_FOREGROUND);

    if (!listPayment.isEmpty()) {
        dataheader = (PaymentProfitLossView) listPayment.get(0);
        // set Header Report (Row 1)
        HSSFCellStyle styleC1 = wb.createCellStyle();
        HSSFRow row1 = sheet.createRow(0);
        HSSFCell cell1 = row1.createCell(0);
        cell1.setCellValue("Profit & Loss Summary");
        styleC1.setFont(excelFunction.getHeaderFont(wb.createFont()));
        cell1.setCellStyle(styleC1);
        sheet.addMergedRegion(CellRangeAddress.valueOf("A1:G1"));

        // Row 2
        HSSFRow row2 = sheet.createRow(1);
        HSSFCell cell21 = row2.createCell(0);
        cell21.setCellValue("Owner : ");
        cell21.setCellStyle(styleC21);
        HSSFCell cell22 = row2.createCell(1);
        cell22.setCellValue(dataheader.getHeaderowner());
        cell22.setCellStyle(styleC22);
        sheet.addMergedRegion(CellRangeAddress.valueOf("B2:D2"));
        HSSFCell cell23 = row2.createCell(4);
        cell23.setCellValue("Invoice Sup : ");
        cell23.setCellStyle(styleC21);
        HSSFCell cell24 = row2.createCell(5);
        cell24.setCellValue(dataheader.getHeaderinvsup());
        cell24.setCellStyle(styleC22);

        // Row 3
        HSSFRow row3 = sheet.createRow(2);
        HSSFCell cell31 = row3.createCell(0);
        cell31.setCellValue("City : ");
        cell31.setCellStyle(styleC21);
        HSSFCell cell32 = row3.createCell(1);
        cell32.setCellValue(dataheader.getHeadercity());
        cell32.setCellStyle(styleC22);
        sheet.addMergedRegion(CellRangeAddress.valueOf("B3:D3"));
        HSSFCell cell33 = row3.createCell(4);
        cell33.setCellValue("Group : ");
        cell33.setCellStyle(styleC21);
        HSSFCell cell34 = row3.createCell(5);
        cell34.setCellValue(dataheader.getHeadergroup());
        cell34.setCellStyle(styleC22);

        // Row 4
        HSSFRow row4 = sheet.createRow(3);
        HSSFCell cell41 = row4.createCell(0);
        cell41.setCellValue("Product Type : ");
        cell41.setCellStyle(styleC21);
        HSSFCell cell42 = row4.createCell(1);
        cell42.setCellValue(dataheader.getHeaderproducttype());
        cell42.setCellStyle(styleC22);
        sheet.addMergedRegion(CellRangeAddress.valueOf("B4:D4"));
        HSSFCell cell43 = row4.createCell(4);
        cell43.setCellValue("Pay Date : ");
        cell43.setCellStyle(styleC21);
        HSSFCell cell44 = row4.createCell(5);
        cell44.setCellValue(dataheader.getHeaderpaydate());
        cell44.setCellStyle(styleC22);

        // Row 5
        HSSFRow row5 = sheet.createRow(4);
        HSSFCell cell51 = row5.createCell(0);
        cell51.setCellValue("Departure Date : ");
        cell51.setCellStyle(styleC21);
        HSSFCell cell52 = row5.createCell(1);
        cell52.setCellValue(dataheader.getHeaderdepartdate());
        cell52.setCellStyle(styleC22);
        sheet.addMergedRegion(CellRangeAddress.valueOf("B5:D5"));
        HSSFCell cell53 = row5.createCell(4);
        cell53.setCellValue("Invoice Date : ");
        cell53.setCellStyle(styleC21);
        HSSFCell cell54 = row5.createCell(5);
        cell54.setCellValue(dataheader.getHeaderinvdate());
        cell54.setCellStyle(styleC22);
    }
    // Header Table
    HSSFCellStyle styleC3 = wb.createCellStyle();
    styleC3.setFont(excelFunction.getHeaderTable(wb.createFont()));
    styleC3.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC3.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC3.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC3.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC3.setAlignment(styleC3.ALIGN_CENTER);
    //        styleC3.setFillForegroundColor(IndexedColors.ORANGE.getIndex());
    //        styleC3.setFillPattern(styleC3.SOLID_FOREGROUND);
    // Detail of Table
    String temp = "group";
    int count = 6;
    int ktemp = 9;
    String temprefno = "";
    //Total
    BigDecimal totalpax = new BigDecimal("0.00");
    BigDecimal totalsale = new BigDecimal("0.00");
    BigDecimal totalcost = new BigDecimal("0.00");
    BigDecimal totalprofit = new BigDecimal("0.00");

    BigDecimal totalpaxAll = new BigDecimal("0.00");
    BigDecimal totalsaleAll = new BigDecimal("0.00");
    BigDecimal totalcostAll = new BigDecimal("0.00");
    BigDecimal totalprofitAll = new BigDecimal("0.00");

    for (int i = 0; i < listPayment.size(); i++) {
        PaymentProfitLossView data = (PaymentProfitLossView) listPayment.get(i);
        String groupby = data.getHeadergroup();
        String groupbytemp = "";

        if ("OWNER".equalsIgnoreCase(groupby)) {
            groupbytemp = data.getOwner();
        } else if ("PRODUCT TYPE".equalsIgnoreCase(groupby)) {
            groupbytemp = data.getProducttype();
        } else if ("CITY".equalsIgnoreCase(groupby)) {
            groupbytemp = data.getCity();
        } else if ("CLIENT NAME".equalsIgnoreCase(groupby)) {
            groupbytemp = data.getInvto();
        } else if ("DEPARTURE DATE".equalsIgnoreCase(groupby)) {
            groupbytemp = data.getDepartdate();
        }

        if (!temprefno.equalsIgnoreCase(data.getRefno())) {
            if (!"".equalsIgnoreCase(temprefno)) {
                HSSFRow rowtotal = sheet.createRow(count + i);
                // Set align Text
                HSSFCell cellTotal = rowtotal.createCell(0);
                cellTotal.setCellValue("Total");
                cellTotal.setCellStyle(styleTotal);
                if ("CLIENT NAME".equalsIgnoreCase(groupby)) {
                    HSSFCell cellTotal01 = rowtotal.createCell(5);
                    cellTotal01.setCellValue(totalpax.doubleValue());
                    cellTotal01.setCellStyle(styleC26);
                    sheet.addMergedRegion(
                            CellRangeAddress.valueOf("B" + (count + i + 1) + ":E" + (count + i + 1)));
                    sheet.addMergedRegion(
                            CellRangeAddress.valueOf("G" + (count + i + 1) + ":M" + (count + i + 1)));
                    for (int j = 1; j < 16; j++) {
                        if (j != 5 && j != 13 && j != 14 && j != 15) {
                            HSSFCell cellTotal05 = rowtotal.createCell(j);
                            cellTotal05.setCellStyle(styleC29);
                        }
                    }
                } else {
                    HSSFCell cellTotal01 = rowtotal.createCell(4);
                    cellTotal01.setCellValue(totalpax.doubleValue());
                    cellTotal01.setCellStyle(styleC26);
                    sheet.addMergedRegion(
                            CellRangeAddress.valueOf("B" + (count + i + 1) + ":D" + (count + i + 1)));
                    sheet.addMergedRegion(
                            CellRangeAddress.valueOf("F" + (count + i + 1) + ":M" + (count + i + 1)));
                    for (int j = 1; j < 16; j++) {
                        if (j != 4 && j != 13 && j != 14 && j != 15) {
                            HSSFCell cellTotal05 = rowtotal.createCell(j);
                            cellTotal05.setCellStyle(styleC29);
                        }
                    }
                }
                HSSFCell cellTotal02 = rowtotal.createCell(13);
                cellTotal02.setCellValue(totalsale.doubleValue());
                cellTotal02.setCellStyle(styleC25);
                HSSFCell cellTotal03 = rowtotal.createCell(14);
                cellTotal03.setCellValue(totalcost.doubleValue());
                cellTotal03.setCellStyle(styleC25);
                HSSFCell cellTotal04 = rowtotal.createCell(15);
                cellTotal04.setCellValue(totalprofit.doubleValue());
                cellTotal04.setCellStyle(styleC25);

                totalpaxAll = totalpaxAll.add(totalpax);
                totalsaleAll = totalsaleAll.add(totalsale);
                totalcostAll = totalcostAll.add(totalcost);
                totalprofitAll = totalprofitAll.add(totalprofit);

                totalpax = new BigDecimal(BigInteger.ZERO);
                totalsale = new BigDecimal(BigInteger.ZERO);
                totalcost = new BigDecimal(BigInteger.ZERO);
                totalprofit = new BigDecimal(BigInteger.ZERO);

                count = count + 1;
                ktemp = count + 2 + i;
            }
        }

        if (!temp.equalsIgnoreCase(groupbytemp)) {
            if (!"group".equalsIgnoreCase(temp)) {
                HSSFRow row = sheet.createRow(count + i);
                // Set align Text
                HSSFCell cellTotal = row.createCell(0);
                cellTotal.setCellValue("");
                cellTotal.setCellStyle(styleC30);
                if ("CLIENT NAME".equalsIgnoreCase(groupby)) {
                    HSSFCell cellTotal01 = row.createCell(5);
                    cellTotal01.setCellValue(totalpaxAll.doubleValue());
                    cellTotal01.setCellStyle(styleTotal);
                    sheet.addMergedRegion(
                            CellRangeAddress.valueOf("A" + (count + i + 1) + ":E" + (count + i + 1)));
                    sheet.addMergedRegion(
                            CellRangeAddress.valueOf("G" + (count + i + 1) + ":M" + (count + i + 1)));
                    for (int j = 1; j < 16; j++) {
                        if (j != 5 && j != 13 && j != 14 && j != 15) {
                            HSSFCell cellTotal05 = row.createCell(j);
                            cellTotal05.setCellStyle(styleC29);
                        }
                    }
                } else {
                    HSSFCell cellTotal01 = row.createCell(4);
                    cellTotal01.setCellValue(totalpaxAll.doubleValue());
                    cellTotal01.setCellStyle(styleTotal);
                    sheet.addMergedRegion(
                            CellRangeAddress.valueOf("A" + (count + i + 1) + ":D" + (count + i + 1)));
                    sheet.addMergedRegion(
                            CellRangeAddress.valueOf("F" + (count + i + 1) + ":M" + (count + i + 1)));
                    for (int j = 1; j < 16; j++) {
                        if (j != 4 && j != 13 && j != 14 && j != 15) {
                            HSSFCell cellTotal05 = row.createCell(j);
                            cellTotal05.setCellStyle(styleC29);
                        }
                    }
                }
                HSSFCell cellTotal02 = row.createCell(13);
                cellTotal02.setCellValue(totalsaleAll.doubleValue());
                cellTotal02.setCellStyle(styleTotalCurrency);
                HSSFCell cellTotal03 = row.createCell(14);
                cellTotal03.setCellValue(totalcostAll.doubleValue());
                cellTotal03.setCellStyle(styleTotalCurrency);
                HSSFCell cellTotal04 = row.createCell(15);
                cellTotal04.setCellValue(totalprofitAll.doubleValue());
                cellTotal04.setCellStyle(styleTotalCurrency);

                totalpaxAll = new BigDecimal(BigInteger.ZERO);
                totalsaleAll = new BigDecimal(BigInteger.ZERO);
                totalcostAll = new BigDecimal(BigInteger.ZERO);
                totalprofitAll = new BigDecimal(BigInteger.ZERO);

                count = count + 2;
                ktemp = count + 3 + i;
            }

            int counts = count + i;
            int countss = count + 1 + i;
            System.out.println(" Print Header Table Group count ::  " + count + " ==== i ==== " + i);
            // Row Agent Name
            System.out.println(" Print Header Group counts ::  " + counts);
            HSSFRow row008 = sheet.createRow(counts);
            HSSFCell cell0081 = row008.createCell(0);
            cell0081.setCellValue(groupby);
            cell0081.setCellStyle(styleGroup);
            HSSFCell cell0082 = row008.createCell(1);
            cell0082.setCellValue(groupbytemp);
            cell0082.setCellStyle(styleGroupdata);
            sheet.addMergedRegion(CellRangeAddress.valueOf("B" + (counts + 1) + ":D" + (counts + 1)));
            temp = groupbytemp;

            System.out.println(" Print Header Table countss ::  " + countss);
            HSSFRow row09 = sheet.createRow(countss);
            HSSFCell cell091 = row09.createCell(0);
            cell091.setCellValue("REF NO");
            cell091.setCellStyle(styleC3);
            sheet.autoSizeColumn(0);
            System.out.println(" groupby " + groupby);
            if ("OWNER".equalsIgnoreCase(groupby)) {
                HSSFCell cell092 = row09.createCell(1);
                cell092.setCellValue("TOUR NAME");
                cell092.setCellStyle(styleC3);
                sheet.autoSizeColumn(1);
                HSSFCell cell093 = row09.createCell(2);
                cell093.setCellValue("DEPARTURE DATE");
                sheet.autoSizeColumn(2);
                cell093.setCellStyle(styleC3);
                HSSFCell cell094 = row09.createCell(3);
                cell094.setCellValue("CITY");
                cell094.setCellStyle(styleC3);
                sheet.autoSizeColumn(3);
                HSSFCell cell095 = row09.createCell(4);
                cell095.setCellValue("PAX");
                cell095.setCellStyle(styleC3);
                sheet.autoSizeColumn(4);
                HSSFCell cell096 = row09.createCell(5);
                cell096.setCellValue("CLIENT NAME");
                cell096.setCellStyle(styleC3);
                sheet.autoSizeColumn(5);
            } else if ("PRODUCT TYPE".equalsIgnoreCase(groupby)) {

            } else if ("CITY".equalsIgnoreCase(groupby)) {
                HSSFCell cell092 = row09.createCell(1);
                cell092.setCellValue("OWNER");
                cell092.setCellStyle(styleC3);
                sheet.autoSizeColumn(1);
                HSSFCell cell093 = row09.createCell(2);
                cell093.setCellValue("TOUR NAME");
                sheet.autoSizeColumn(2);
                cell093.setCellStyle(styleC3);
                HSSFCell cell094 = row09.createCell(3);
                cell094.setCellValue("DEPARTURE DATE");
                cell094.setCellStyle(styleC3);
                sheet.autoSizeColumn(3);
                HSSFCell cell095 = row09.createCell(4);
                cell095.setCellValue("PAX");
                cell095.setCellStyle(styleC3);
                sheet.autoSizeColumn(4);
                HSSFCell cell096 = row09.createCell(5);
                cell096.setCellValue("CLIENT NAME");
                cell096.setCellStyle(styleC3);
                sheet.autoSizeColumn(5);
            } else if ("CLIENT NAME".equalsIgnoreCase(groupby)) {
                HSSFCell cell092 = row09.createCell(1);
                cell092.setCellValue("OWNER");
                cell092.setCellStyle(styleC3);
                sheet.autoSizeColumn(1);
                HSSFCell cell093 = row09.createCell(2);
                cell093.setCellValue("TOUR NAME");
                sheet.autoSizeColumn(2);
                cell093.setCellStyle(styleC3);
                HSSFCell cell094 = row09.createCell(3);
                cell094.setCellValue("DEPARTURE DATE");
                cell094.setCellStyle(styleC3);
                sheet.autoSizeColumn(3);
                HSSFCell cell095 = row09.createCell(4);
                cell095.setCellValue("CITY");
                cell095.setCellStyle(styleC3);
                sheet.autoSizeColumn(4);
                HSSFCell cell096 = row09.createCell(5);
                cell096.setCellValue("PAX");
                cell096.setCellStyle(styleC3);
                sheet.autoSizeColumn(5);
            } else if ("DEPARTURE DATE".equalsIgnoreCase(groupby)) {
                HSSFCell cell092 = row09.createCell(1);
                cell092.setCellValue("OWNER");
                cell092.setCellStyle(styleC3);
                sheet.autoSizeColumn(1);
                HSSFCell cell093 = row09.createCell(2);
                cell093.setCellValue("TOUR NAME");
                sheet.autoSizeColumn(2);
                cell093.setCellStyle(styleC3);
                HSSFCell cell094 = row09.createCell(3);
                cell094.setCellValue("CITY");
                cell094.setCellStyle(styleC3);
                sheet.autoSizeColumn(3);
                HSSFCell cell095 = row09.createCell(4);
                cell095.setCellValue("PAX");
                cell095.setCellStyle(styleC3);
                sheet.autoSizeColumn(4);
                HSSFCell cell096 = row09.createCell(5);
                cell096.setCellValue("CLIENT NAME");
                cell096.setCellStyle(styleC3);
                sheet.autoSizeColumn(5);
            }

            HSSFCell cell097 = row09.createCell(6);
            cell097.setCellValue("INVOICE NO");
            cell097.setCellStyle(styleC3);
            sheet.autoSizeColumn(6);
            HSSFCell cell098 = row09.createCell(7);
            cell098.setCellValue("RECEIPT NO");
            cell098.setCellStyle(styleC3);
            sheet.autoSizeColumn(7);
            HSSFCell cell099 = row09.createCell(8);
            cell099.setCellValue("TAX INVOICE NO");
            cell099.setCellStyle(styleC3);
            sheet.autoSizeColumn(8);
            HSSFCell cell100 = row09.createCell(9);
            cell100.setCellValue("PRODUCT TYPE");
            cell100.setCellStyle(styleC3);
            sheet.autoSizeColumn(9);
            HSSFCell cell101 = row09.createCell(10);
            cell101.setCellValue("DESCRIPTION");
            cell101.setCellStyle(styleC3);
            sheet.autoSizeColumn(10);
            HSSFCell cell102 = row09.createCell(11);
            cell102.setCellValue("PAY NO");
            cell102.setCellStyle(styleC3);
            sheet.autoSizeColumn(11);
            HSSFCell cell103 = row09.createCell(12);
            cell103.setCellValue("SUPPLIER");
            cell103.setCellStyle(styleC3);
            sheet.autoSizeColumn(12);
            HSSFCell cell104 = row09.createCell(13);
            cell104.setCellValue("SALE PRICE");
            cell104.setCellStyle(styleC3);
            sheet.autoSizeColumn(13);
            HSSFCell cell105 = row09.createCell(14);
            cell105.setCellValue("COST");
            cell105.setCellStyle(styleC3);
            sheet.autoSizeColumn(14);
            HSSFCell cell106 = row09.createCell(15);
            cell106.setCellValue("PROFIT");
            cell106.setCellStyle(styleC3);
            sheet.autoSizeColumn(15);
            count = count + 2;
        }

        //set data 
        System.out.println(" Print Data Table count ::  " + count + " ==== i ==== " + i);
        HSSFRow row = sheet.createRow(count + i);
        if (!temprefno.equalsIgnoreCase(data.getRefno())) {
            HSSFCell celldata01 = row.createCell(0);
            celldata01.setCellValue(data.getRefno());
            celldata01.setCellStyle(styleC29);

            if ("OWNER".equalsIgnoreCase(groupby)) {
                HSSFCell celldata02 = row.createCell(1);
                celldata02.setCellValue(data.getTourname());
                celldata02.setCellStyle(styleC29);
                HSSFCell celldata03 = row.createCell(2);
                celldata03.setCellValue(data.getDepartdate());
                celldata03.setCellStyle(styleC29);
                HSSFCell celldata04 = row.createCell(3);
                celldata04.setCellValue(data.getCity());
                celldata04.setCellStyle(styleC29);
                HSSFCell celldata05 = row.createCell(4);
                celldata05.setCellValue("".equalsIgnoreCase(String.valueOf(data.getPax())) ? 0
                        : new BigDecimal(data.getPax()).doubleValue());
                celldata05.setCellStyle(styleC26);
                HSSFCell celldata06 = row.createCell(5);
                celldata06.setCellValue(data.getInvto());
                celldata06.setCellStyle(styleC29);
                sheet.setColumnWidth(3, 256 * 15);
            } else if ("PRODUCT TYPE".equalsIgnoreCase(groupby)) {

            } else if ("CITY".equalsIgnoreCase(groupby)) {
                HSSFCell celldata02 = row.createCell(1);
                celldata02.setCellValue(data.getOwner());
                celldata02.setCellStyle(styleC29);
                HSSFCell celldata03 = row.createCell(2);
                celldata03.setCellValue(data.getTourname());
                celldata03.setCellStyle(styleC29);
                HSSFCell celldata04 = row.createCell(3);
                celldata04.setCellValue(data.getDepartdate());
                celldata04.setCellStyle(styleC29);
                HSSFCell celldata05 = row.createCell(4);
                celldata05.setCellValue("".equalsIgnoreCase(String.valueOf(data.getPax())) ? 0
                        : new BigDecimal(data.getPax()).doubleValue());
                celldata05.setCellStyle(styleC26);
                HSSFCell celldata06 = row.createCell(5);
                celldata06.setCellValue(data.getInvto());
                celldata06.setCellStyle(styleC29);
            } else if ("CLIENT NAME".equalsIgnoreCase(groupby)) {
                HSSFCell celldata02 = row.createCell(1);
                celldata02.setCellValue(data.getOwner());
                celldata02.setCellStyle(styleC29);
                HSSFCell celldata03 = row.createCell(2);
                celldata03.setCellValue(data.getTourname());
                celldata03.setCellStyle(styleC29);
                HSSFCell celldata04 = row.createCell(3);
                celldata04.setCellValue(data.getDepartdate());
                celldata04.setCellStyle(styleC29);
                HSSFCell celldata05 = row.createCell(4);
                celldata05.setCellValue(data.getCity());
                celldata05.setCellStyle(styleC29);
                HSSFCell celldata06 = row.createCell(5);
                celldata06.setCellValue("".equalsIgnoreCase(String.valueOf(data.getPax())) ? 0
                        : new BigDecimal(data.getPax()).doubleValue());
                celldata06.setCellStyle(styleC26);
                sheet.setColumnWidth(4, 256 * 15);
            } else if ("DEPARTURE DATE".equalsIgnoreCase(groupby)) {
                HSSFCell celldata02 = row.createCell(1);
                celldata02.setCellValue(data.getOwner());
                celldata02.setCellStyle(styleC29);
                HSSFCell celldata03 = row.createCell(2);
                celldata03.setCellValue(data.getTourname());
                celldata03.setCellStyle(styleC29);
                HSSFCell celldata04 = row.createCell(3);
                celldata04.setCellValue(data.getCity());
                celldata04.setCellStyle(styleC29);
                HSSFCell celldata05 = row.createCell(4);
                celldata05.setCellValue("".equalsIgnoreCase(String.valueOf(data.getPax())) ? 0
                        : new BigDecimal(data.getPax()).doubleValue());
                celldata05.setCellStyle(styleC26);
                HSSFCell celldata06 = row.createCell(5);
                celldata06.setCellValue(data.getInvto());
                celldata06.setCellStyle(styleC29);
                sheet.setColumnWidth(3, 256 * 15);
            }
        } else {
            for (int j = 0; j < 6; j++) {
                HSSFCell celldata02 = row.createCell(j);
                celldata02.setCellStyle(styleC29);
            }
            sheet.addMergedRegion(CellRangeAddress.valueOf("A" + (count + i + 1) + ":F" + (count + i + 1)));
        }

        HSSFCell celldata07 = row.createCell(6);
        celldata07.setCellValue(data.getInvno());
        celldata07.setCellStyle(styleC29);
        HSSFCell celldata08 = row.createCell(7);
        celldata08.setCellValue(data.getReceipt());
        celldata08.setCellStyle(styleC29);
        HSSFCell celldata09 = row.createCell(8);
        celldata09.setCellValue(data.getTaxinvoice());
        celldata09.setCellStyle(styleC29);
        HSSFCell celldata10 = row.createCell(9);
        celldata10.setCellValue(data.getProducttype());
        celldata10.setCellStyle(styleC29);
        HSSFCell celldata11 = row.createCell(10);
        celldata11.setCellValue(data.getDescription());
        celldata11.setCellStyle(styleC29);
        HSSFCell celldata12 = row.createCell(11);
        celldata12.setCellValue(data.getPayno());
        celldata12.setCellStyle(styleC29);
        HSSFCell celldata13 = row.createCell(12);
        celldata13.setCellValue(data.getSupplier());
        celldata13.setCellStyle(styleC29);
        HSSFCell celldata14 = row.createCell(13);
        celldata14.setCellValue("".equalsIgnoreCase(String.valueOf(data.getSale())) ? 0
                : new BigDecimal(data.getSale()).doubleValue());
        celldata14.setCellStyle(styleC25);
        HSSFCell celldata15 = row.createCell(14);
        celldata15.setCellValue("".equalsIgnoreCase(String.valueOf(data.getCost())) ? 0
                : new BigDecimal(data.getCost()).doubleValue());
        celldata15.setCellStyle(styleC25);
        HSSFCell celldata16 = row.createCell(15);
        celldata16.setCellValue("".equalsIgnoreCase(String.valueOf(data.getProfit())) ? 0
                : new BigDecimal(data.getProfit()).doubleValue());
        celldata16.setCellStyle(styleC25);

        totalpax = ("".equalsIgnoreCase(String.valueOf(data.getPax())) ? new BigDecimal(BigInteger.ZERO)
                : new BigDecimal(data.getPax()));
        totalsale = totalsale
                .add("".equalsIgnoreCase(String.valueOf(data.getSale())) ? new BigDecimal(BigInteger.ZERO)
                        : new BigDecimal(data.getSale()));
        totalcost = totalcost
                .add("".equalsIgnoreCase(String.valueOf(data.getCost())) ? new BigDecimal(BigInteger.ZERO)
                        : new BigDecimal(data.getCost()));
        totalprofit = totalprofit
                .add("".equalsIgnoreCase(String.valueOf(data.getProfit())) ? new BigDecimal(BigInteger.ZERO)
                        : new BigDecimal(data.getProfit()));

        temprefno = data.getRefno();

        // set total last row
        if (i == (listPayment.size() - 1)) {

            HSSFRow rowtotal = sheet.createRow(count + i + 1);
            // Set align Text
            HSSFCell cellTotal = rowtotal.createCell(0);
            cellTotal.setCellValue("Total");
            cellTotal.setCellStyle(styleTotal);
            if ("CLIENT NAME".equalsIgnoreCase(groupby)) {
                HSSFCell cellTotal01 = rowtotal.createCell(5);
                cellTotal01.setCellValue(totalpax.doubleValue());
                cellTotal01.setCellStyle(styleC26);
                sheet.addMergedRegion(CellRangeAddress.valueOf("B" + (count + i + 2) + ":E" + (count + i + 2)));
                sheet.addMergedRegion(CellRangeAddress.valueOf("G" + (count + i + 2) + ":M" + (count + i + 2)));
                for (int j = 1; j < 16; j++) {
                    if (j != 5 && j != 13 && j != 14 && j != 15) {
                        HSSFCell cellTotal05 = rowtotal.createCell(j);
                        cellTotal05.setCellStyle(styleTotal);
                    }
                }
            } else {
                HSSFCell cellTotal01 = rowtotal.createCell(4);
                cellTotal01.setCellValue(totalpax.doubleValue());
                cellTotal01.setCellStyle(styleC26);
                sheet.addMergedRegion(CellRangeAddress.valueOf("B" + (count + i + 2) + ":D" + (count + i + 2)));
                sheet.addMergedRegion(CellRangeAddress.valueOf("F" + (count + i + 2) + ":M" + (count + i + 2)));
                for (int j = 1; j < 16; j++) {
                    if (j != 4 && j != 13 && j != 14 && j != 15) {
                        HSSFCell cellTotal05 = rowtotal.createCell(j);
                        cellTotal05.setCellStyle(styleC29);
                    }
                }
            }
            HSSFCell cellTotal02 = rowtotal.createCell(13);
            cellTotal02.setCellValue(totalsale.doubleValue());
            cellTotal02.setCellStyle(styleC25);
            HSSFCell cellTotal03 = rowtotal.createCell(14);
            cellTotal03.setCellValue(totalcost.doubleValue());
            cellTotal03.setCellStyle(styleC25);
            HSSFCell cellTotal04 = rowtotal.createCell(15);
            cellTotal04.setCellValue(totalprofit.doubleValue());
            cellTotal04.setCellStyle(styleC25);

            totalpaxAll = totalpaxAll.add(totalpax);
            totalsaleAll = totalsaleAll.add(totalsale);
            totalcostAll = totalcostAll.add(totalcost);
            totalprofitAll = totalprofitAll.add(totalprofit);

            //                    count = count+1;
            //                    ktemp = count+2+i;

            row = sheet.createRow(count + i + 2);
            // Set align Text
            HSSFCell cellTotalAll = row.createCell(0);
            cellTotalAll.setCellValue("");
            cellTotalAll.setCellStyle(styleTotal);
            if ("CLIENT NAME".equalsIgnoreCase(groupby)) {
                HSSFCell cellTotal01 = row.createCell(5);
                cellTotal01.setCellValue(totalpaxAll.doubleValue());
                cellTotal01.setCellStyle(styleTotal);
                sheet.addMergedRegion(CellRangeAddress.valueOf("A" + (count + i + 3) + ":E" + (count + i + 3)));
                sheet.addMergedRegion(CellRangeAddress.valueOf("G" + (count + i + 3) + ":M" + (count + i + 3)));
                for (int j = 1; j < 16; j++) {
                    if (j != 5 && j != 13 && j != 14 && j != 15) {
                        HSSFCell cellTotal05 = row.createCell(j);
                        cellTotal05.setCellStyle(styleC29);
                    }
                }
            } else {
                HSSFCell cellTotal01 = row.createCell(4);
                cellTotal01.setCellValue(totalpaxAll.doubleValue());
                cellTotal01.setCellStyle(styleTotal);
                sheet.addMergedRegion(CellRangeAddress.valueOf("A" + (count + i + 3) + ":D" + (count + i + 3)));
                sheet.addMergedRegion(CellRangeAddress.valueOf("F" + (count + i + 3) + ":M" + (count + i + 3)));
                for (int j = 1; j < 16; j++) {
                    if (j != 4 && j != 13 && j != 14 && j != 15) {
                        HSSFCell cellTotal05 = row.createCell(j);
                        cellTotal05.setCellStyle(styleC29);
                    }
                }
            }
            HSSFCell cellTotalAll02 = row.createCell(13);
            cellTotalAll02.setCellValue(totalsaleAll.doubleValue());
            cellTotalAll02.setCellStyle(styleTotalCurrency);
            HSSFCell cellTotalAll03 = row.createCell(14);
            cellTotalAll03.setCellValue(totalcostAll.doubleValue());
            cellTotalAll03.setCellStyle(styleTotalCurrency);
            HSSFCell cellTotalAll04 = row.createCell(15);
            cellTotalAll04.setCellValue(totalprofitAll.doubleValue());
            cellTotalAll04.setCellStyle(styleTotalCurrency);
        }
    }

    for (int x = 0; x < 17; x++) {
        sheet.autoSizeColumn(x);
    }
    sheet.setColumnWidth(6, 256 * 25);
    sheet.setColumnWidth(7, 256 * 25);
    sheet.setColumnWidth(8, 256 * 25);

    sheet.setColumnWidth(13, 256 * 15);
    sheet.setColumnWidth(14, 256 * 15);
    sheet.setColumnWidth(15, 256 * 15);
}

From source file:com.smi.travel.controller.excel.booking.OutboundProductSummary.java

private void getPaymentSummary(HSSFWorkbook wb, List listPaymentSummary) {
    List<PaymentOutboundAllDetail> paymentSummaryList = listPaymentSummary;
    String sheetName = "PaymentSummary";// name of sheet
    HSSFSheet sheet = wb.createSheet(sheetName);
    UtilityExcelFunction excelFunction = new UtilityExcelFunction();
    // Set align Text
    HSSFCellStyle styleAlignRight = wb.createCellStyle();
    styleAlignRight.setAlignment(styleAlignRight.ALIGN_RIGHT);
    HSSFCellStyle styleAlignLeft = wb.createCellStyle();
    styleAlignLeft.setAlignment(styleAlignLeft.ALIGN_LEFT);
    HSSFDataFormat currency = wb.createDataFormat();
    // Set align Text
    HSSFCellStyle styleNumber = wb.createCellStyle();
    styleNumber.setAlignment(styleNumber.ALIGN_RIGHT);
    styleNumber.setDataFormat(currency.getFormat("#,##0.00"));

    // set Header Report (Row 1)
    HSSFCellStyle styleHeader1 = wb.createCellStyle();
    HSSFRow row1 = sheet.createRow(0);//  w ww.  j a  v a 2 s .  c  om
    HSSFCell cell1 = row1.createCell(0);
    cell1.setCellValue("Payment Outbound Summary");
    styleHeader1.setFont(excelFunction.getHeaderFont(wb.createFont()));
    cell1.setCellStyle(styleHeader1);
    sheet.addMergedRegion(CellRangeAddress.valueOf("A1:I1"));

    if (paymentSummaryList != null && paymentSummaryList.size() != 0) {
        PaymentOutboundAllDetail poad = new PaymentOutboundAllDetail();
        poad = paymentSummaryList.get(0);
        // ROW 1
        HSSFRow row2 = sheet.createRow(1);
        HSSFCell cell21 = row2.createCell(0);
        cell21.setCellValue("Invoice Sup : ");
        cell21.setCellStyle(styleAlignRight);
        sheet.autoSizeColumn(0);
        HSSFCell cell22 = row2.createCell(1);
        cell22.setCellValue(poad.getHeaderinvoicesupcode());
        cell22.setCellStyle(styleAlignLeft);
        sheet.autoSizeColumn(1);

        HSSFCell cell23 = row2.createCell(2);
        cell23.setCellValue("Staff : ");
        cell23.setCellStyle(styleAlignRight);
        sheet.autoSizeColumn(2);
        HSSFCell cell24 = row2.createCell(3);
        cell24.setCellValue(poad.getHeaderstaff());
        cell24.setCellStyle(styleAlignLeft);
        sheet.autoSizeColumn(3);

        // ROW 2   
        HSSFRow row3 = sheet.createRow(2);
        HSSFCell cell31 = row3.createCell(0);
        cell31.setCellValue("Pay Date : ");
        cell31.setCellStyle(styleAlignRight);
        sheet.autoSizeColumn(0);
        HSSFCell cell32 = row3.createCell(1);
        cell32.setCellValue(poad.getDatefromto());
        cell32.setCellStyle(styleAlignLeft);
        sheet.autoSizeColumn(1);

        HSSFCell cell33 = row3.createCell(2);
        cell33.setCellValue("Ref No : ");
        cell33.setCellStyle(styleAlignRight);
        sheet.autoSizeColumn(2);
        HSSFCell cell34 = row3.createCell(3);
        cell34.setCellValue(poad.getHeaderrefno());
        cell34.setCellStyle(styleAlignLeft);
        sheet.autoSizeColumn(3);

        HSSFRow row4 = sheet.createRow(3);
        HSSFCell cell41 = row4.createCell(0);
        cell41.setCellValue("Inv Date : ");
        cell41.setCellStyle(styleAlignRight);
        sheet.autoSizeColumn(0);
        HSSFCell cell42 = row4.createCell(1);
        cell42.setCellValue(poad.getInvdatefromto());
        cell42.setCellStyle(styleAlignLeft);
        sheet.autoSizeColumn(1);
        HSSFCell cell43 = row4.createCell(2);
        cell43.setCellValue("Inv Name : ");
        cell43.setCellStyle(styleAlignRight);
        sheet.autoSizeColumn(0);
        HSSFCell cell44 = row4.createCell(3);
        cell44.setCellValue(poad.getHeaderinvname());
        cell44.setCellStyle(styleAlignLeft);
        sheet.autoSizeColumn(1);

        HSSFRow row5 = sheet.createRow(4);
        HSSFCell cell51 = row5.createCell(0);
        cell51.setCellValue("Country : ");
        cell51.setCellStyle(styleAlignRight);
        sheet.autoSizeColumn(0);
        HSSFCell cell52 = row5.createCell(1);
        cell52.setCellValue(poad.getHeadercountry());
        cell52.setCellStyle(styleAlignLeft);
        sheet.autoSizeColumn(1);
        HSSFCell cell53 = row5.createCell(2);
        cell53.setCellValue("City : ");
        cell53.setCellStyle(styleAlignRight);
        sheet.autoSizeColumn(0);
        HSSFCell cell54 = row5.createCell(3);
        cell54.setCellValue(poad.getHeadercity());
        cell54.setCellStyle(styleAlignLeft);
        sheet.autoSizeColumn(1);

        HSSFRow row6 = sheet.createRow(5);
        HSSFCell cell61 = row6.createCell(0);
        cell61.setCellValue("Product Type : ");
        cell61.setCellStyle(styleAlignRight);
        sheet.autoSizeColumn(0);
        HSSFCell cell62 = row6.createCell(1);
        cell62.setCellValue(poad.getHeaderproducttype());
        cell62.setCellStyle(styleAlignLeft);
        sheet.autoSizeColumn(1);
        HSSFCell cell63 = row6.createCell(2);
        cell63.setCellValue("Product : ");
        cell63.setCellStyle(styleAlignRight);
        sheet.autoSizeColumn(0);
        HSSFCell cell64 = row6.createCell(3);
        cell64.setCellValue(poad.getHeaderproductname());
        cell64.setCellStyle(styleAlignLeft);
        sheet.autoSizeColumn(1);

    }

    // Header Table
    HSSFCellStyle styleHeader = wb.createCellStyle();
    styleHeader.setFont(excelFunction.getHeaderTable(wb.createFont()));
    styleHeader.setAlignment(styleHeader.ALIGN_CENTER);
    styleHeader.setBorderTop(styleHeader.BORDER_THIN);
    styleHeader.setBorderLeft(styleHeader.BORDER_THIN);
    styleHeader.setBorderBottom(styleHeader.BORDER_THIN);
    styleHeader.setBorderRight(styleHeader.BORDER_THIN);
    styleHeader.setVerticalAlignment(styleHeader.VERTICAL_CENTER);
    HSSFCellStyle styleDetailTable = wb.createCellStyle();
    styleDetailTable.setAlignment(styleDetailTable.ALIGN_LEFT);
    styleDetailTable.setBorderLeft(styleDetailTable.BORDER_THIN);
    styleDetailTable.setBorderRight(styleDetailTable.BORDER_THIN);
    styleDetailTable.setVerticalAlignment(styleDetailTable.VERTICAL_CENTER);
    HSSFCellStyle styleDetailTableCenter = wb.createCellStyle();
    styleDetailTableCenter.setAlignment(styleDetailTableCenter.ALIGN_CENTER);
    styleDetailTableCenter.setBorderTop(styleDetailTableCenter.BORDER_THIN);
    styleDetailTableCenter.setBorderBottom(styleDetailTableCenter.BORDER_THIN);
    styleDetailTableCenter.setBorderRight(styleDetailTableCenter.BORDER_THIN);
    styleDetailTableCenter.setBorderLeft(styleDetailTableCenter.BORDER_THIN);
    styleDetailTableCenter.setWrapText(true);
    styleDetailTableCenter.setDataFormat(currency.getFormat("#,##0"));
    styleDetailTableCenter.setVerticalAlignment(styleDetailTableCenter.VERTICAL_CENTER);
    HSSFCellStyle styleDetailTableNumber = wb.createCellStyle();
    styleDetailTableNumber.setAlignment(styleDetailTableNumber.ALIGN_RIGHT);
    styleDetailTableNumber.setBorderLeft(styleDetailTableNumber.BORDER_THIN);
    styleDetailTableNumber.setBorderRight(styleDetailTableNumber.BORDER_THIN);
    styleDetailTableNumber.setDataFormat(currency.getFormat("#,##0.00"));
    styleDetailTableNumber.setWrapText(true);
    styleDetailTableNumber.setVerticalAlignment(styleDetailTableNumber.VERTICAL_CENTER);
    HSSFCellStyle styleDetailTableBorderBottom = wb.createCellStyle();
    styleDetailTableBorderBottom.setBorderTop(styleDetailTableBorderBottom.BORDER_THIN);
    HSSFCellStyle styleBorderTop = wb.createCellStyle();
    styleBorderTop.setBorderBottom(styleBorderTop.BORDER_THIN);
    styleBorderTop.setFont(excelFunction.getHeaderTable(wb.createFont()));
    styleBorderTop.setAlignment(styleBorderTop.ALIGN_CENTER);
    HSSFCellStyle styleBorderRight = wb.createCellStyle();
    styleBorderRight.setBorderRight(styleBorderRight.BORDER_THIN);
    styleBorderRight.setAlignment(styleBorderRight.ALIGN_CENTER);
    HSSFCellStyle styleBorderBottomAndRight = wb.createCellStyle();
    styleBorderBottomAndRight.setBorderRight(styleBorderBottomAndRight.BORDER_THIN);
    styleBorderBottomAndRight.setBorderBottom(styleBorderBottomAndRight.BORDER_THIN);
    styleBorderBottomAndRight.setAlignment(styleBorderBottomAndRight.ALIGN_CENTER);
    styleBorderBottomAndRight.setVerticalAlignment(styleBorderBottomAndRight.VERTICAL_CENTER);

    HSSFCellStyle styleAlignLeftBorderTopRight = wb.createCellStyle(); // use
    styleAlignLeftBorderTopRight.setAlignment(styleAlignLeftBorderTopRight.ALIGN_LEFT);
    styleAlignLeftBorderTopRight.setBorderTop(styleAlignLeftBorderTopRight.BORDER_THIN);
    styleAlignLeftBorderTopRight.setBorderRight(styleAlignLeftBorderTopRight.BORDER_THIN);
    styleAlignLeftBorderTopRight.setVerticalAlignment(styleAlignLeftBorderTopRight.VERTICAL_CENTER);
    HSSFCellStyle styleAlignLeftBorderTopLeft = wb.createCellStyle(); // use
    styleAlignLeftBorderTopLeft.setAlignment(styleAlignLeftBorderTopLeft.ALIGN_LEFT);
    styleAlignLeftBorderTopLeft.setBorderTop(styleAlignLeftBorderTopLeft.BORDER_THIN);
    styleAlignLeftBorderTopLeft.setBorderLeft(styleAlignLeftBorderTopLeft.BORDER_THIN);
    styleAlignLeftBorderTopLeft.setVerticalAlignment(styleAlignLeftBorderTopLeft.VERTICAL_CENTER);
    HSSFCellStyle styleBorderTopP = wb.createCellStyle(); // use
    styleBorderTopP.setBorderTop(styleBorderTopP.BORDER_THIN);
    HSSFCellStyle styleAlignRightBorderBottomRight = wb.createCellStyle();//use
    styleAlignRightBorderBottomRight.setAlignment(styleAlignRightBorderBottomRight.ALIGN_LEFT);
    styleAlignRightBorderBottomRight.setBorderBottom(styleAlignRightBorderBottomRight.BORDER_THIN);
    styleAlignRightBorderBottomRight.setBorderRight(styleAlignRightBorderBottomRight.BORDER_THIN);
    styleAlignRightBorderBottomRight.setVerticalAlignment(styleAlignRightBorderBottomRight.VERTICAL_CENTER);
    HSSFCellStyle styleAlignRightBorderBottomLeft = wb.createCellStyle();
    styleAlignRightBorderBottomLeft.setAlignment(styleAlignRightBorderBottomLeft.ALIGN_LEFT);
    styleAlignRightBorderBottomLeft.setBorderBottom(styleAlignRightBorderBottomLeft.BORDER_THIN);
    styleAlignRightBorderBottomLeft.setBorderLeft(styleAlignRightBorderBottomLeft.BORDER_THIN);
    styleAlignRightBorderBottomLeft.setVerticalAlignment(styleAlignRightBorderBottomLeft.VERTICAL_CENTER);
    HSSFCellStyle styleBorderBottom = wb.createCellStyle(); //use
    styleBorderBottom.setBorderBottom(styleBorderBottom.BORDER_THIN);
    HSSFCellStyle styleAlignRightBorderRight = wb.createCellStyle(); //use
    styleAlignRightBorderRight.setAlignment(styleAlignRightBorderRight.ALIGN_RIGHT);
    styleAlignRightBorderRight.setBorderRight(styleAlignRightBorderRight.BORDER_THIN);
    HSSFCellStyle styleAlignLeftBorderRight = wb.createCellStyle();
    styleAlignLeftBorderRight.setAlignment(styleAlignLeftBorderRight.ALIGN_LEFT);
    styleAlignLeftBorderRight.setBorderRight(styleAlignLeftBorderRight.BORDER_THIN);
    HSSFCellStyle styleAlignRightBorderLeft = wb.createCellStyle();//use
    styleAlignRightBorderLeft.setAlignment(styleAlignRightBorderLeft.ALIGN_RIGHT);
    styleAlignRightBorderLeft.setBorderLeft(styleAlignRightBorderLeft.BORDER_THIN);
    HSSFCellStyle styleAlignRightBorderAllNumber = wb.createCellStyle();
    styleAlignRightBorderAllNumber.setAlignment(styleAlignRightBorderAllNumber.ALIGN_RIGHT);
    styleAlignRightBorderAllNumber.setDataFormat(currency.getFormat("#,##0.00"));
    styleAlignRightBorderAllNumber.setBorderTop(styleAlignRightBorderAllNumber.BORDER_THIN);
    styleAlignRightBorderAllNumber.setBorderBottom(styleAlignRightBorderAllNumber.BORDER_THIN);
    styleAlignRightBorderAllNumber.setBorderRight(styleAlignRightBorderAllNumber.BORDER_THIN);
    styleAlignRightBorderAllNumber.setBorderLeft(styleAlignRightBorderAllNumber.BORDER_THIN);
    styleAlignRightBorderAllNumber.setVerticalAlignment(styleAlignRightBorderAllNumber.VERTICAL_CENTER);
    styleAlignRightBorderAllNumber.setWrapText(true);
    HSSFCellStyle styleAlignRightBorderAll = wb.createCellStyle();
    styleAlignRightBorderAll.setAlignment(styleAlignRightBorderAll.ALIGN_RIGHT);
    styleAlignRightBorderAll.setBorderTop(styleAlignRightBorderAll.BORDER_THIN);
    styleAlignRightBorderAll.setBorderBottom(styleAlignRightBorderAll.BORDER_THIN);
    styleAlignRightBorderAll.setBorderRight(styleAlignRightBorderAll.BORDER_THIN);
    styleAlignRightBorderAll.setBorderLeft(styleAlignRightBorderAll.BORDER_THIN);
    styleAlignRightBorderAll.setVerticalAlignment(styleAlignRightBorderAll.VERTICAL_CENTER);
    styleAlignRightBorderAll.setWrapText(true);
    HSSFCellStyle styleAlignLeftBorderAllNumber = wb.createCellStyle();
    styleAlignLeftBorderAllNumber.setAlignment(styleAlignLeftBorderAllNumber.ALIGN_LEFT);
    styleAlignLeftBorderAllNumber.setDataFormat(currency.getFormat("#,##0.00"));
    styleAlignLeftBorderAllNumber.setBorderTop(styleAlignLeftBorderAllNumber.BORDER_THIN);
    styleAlignLeftBorderAllNumber.setBorderBottom(styleAlignLeftBorderAllNumber.BORDER_THIN);
    styleAlignLeftBorderAllNumber.setBorderRight(styleAlignLeftBorderAllNumber.BORDER_THIN);
    styleAlignLeftBorderAllNumber.setBorderLeft(styleAlignLeftBorderAllNumber.BORDER_THIN);
    styleAlignLeftBorderAllNumber.setVerticalAlignment(styleAlignLeftBorderAllNumber.VERTICAL_CENTER);
    styleAlignLeftBorderAllNumber.setWrapText(true);
    HSSFCellStyle styleAlignLeftBorderAll = wb.createCellStyle();
    styleAlignLeftBorderAll.setAlignment(styleAlignLeftBorderAll.ALIGN_LEFT);
    styleAlignLeftBorderAll.setBorderTop(styleAlignLeftBorderAll.BORDER_THIN);
    styleAlignLeftBorderAll.setBorderBottom(styleAlignLeftBorderAll.BORDER_THIN);
    styleAlignLeftBorderAll.setBorderRight(styleAlignLeftBorderAll.BORDER_THIN);
    styleAlignLeftBorderAll.setBorderLeft(styleAlignLeftBorderAll.BORDER_THIN);
    styleAlignLeftBorderAll.setVerticalAlignment(styleAlignLeftBorderAll.VERTICAL_CENTER);
    styleAlignLeftBorderAll.setWrapText(true);
    HSSFCellStyle styleAlignRightBorderAllNumberRate = wb.createCellStyle();
    styleAlignRightBorderAllNumberRate.setAlignment(styleAlignRightBorderAllNumberRate.ALIGN_RIGHT);
    styleAlignRightBorderAllNumberRate.setDataFormat(currency.getFormat("#,##0.0000"));
    styleAlignRightBorderAllNumberRate.setBorderTop(styleAlignRightBorderAllNumberRate.BORDER_THIN);
    styleAlignRightBorderAllNumberRate.setBorderBottom(styleAlignRightBorderAllNumberRate.BORDER_THIN);
    styleAlignRightBorderAllNumberRate.setBorderRight(styleAlignRightBorderAllNumberRate.BORDER_THIN);
    styleAlignRightBorderAllNumberRate.setBorderLeft(styleAlignRightBorderAllNumberRate.BORDER_THIN);
    styleAlignRightBorderAllNumberRate.setVerticalAlignment(styleAlignRightBorderAllNumberRate.VERTICAL_CENTER);
    styleAlignRightBorderAllNumberRate.setWrapText(true);

    HSSFRow row4 = sheet.createRow(6);
    for (int x = 0; x < 46; x++) {
        //            if( (x > 8 && x < 12) || ( x>17 && x < 26) || x == 30 || x == 31){
        row4.createCell(x).setCellStyle(styleBorderTop);
        //            }
    }

    HSSFRow row5 = sheet.createRow(7);
    HSSFCell cell51 = row5.createCell(0);
    cell51.setCellValue("REF NO");
    cell51.setCellStyle(styleHeader);
    sheet.autoSizeColumn(0);
    HSSFCell cell52 = row5.createCell(1);
    cell52.setCellValue("ISSUE DATE");
    cell52.setCellStyle(styleHeader);
    sheet.autoSizeColumn(1);
    HSSFCell cell53 = row5.createCell(2);
    cell53.setCellValue("TOUR CODE");
    cell53.setCellStyle(styleHeader);
    sheet.autoSizeColumn(2);
    HSSFCell cell54 = row5.createCell(3);
    cell54.setCellValue("INV NO");
    cell54.setCellStyle(styleHeader);
    sheet.autoSizeColumn(3);
    HSSFCell cell55 = row5.createCell(4);
    cell55.setCellValue("INV DATE");
    cell55.setCellStyle(styleHeader);
    sheet.autoSizeColumn(4);
    HSSFCell cell56 = row5.createCell(5);
    cell56.setCellValue("STAFF");
    cell56.setCellStyle(styleHeader);
    sheet.autoSizeColumn(5);
    HSSFCell cell57 = row5.createCell(6);
    cell57.setCellValue("INV TO");
    cell57.setCellStyle(styleHeader);
    sheet.autoSizeColumn(6);
    HSSFCell cell58 = row5.createCell(7);
    cell58.setCellValue("PAX");
    cell58.setCellStyle(styleHeader);
    sheet.autoSizeColumn(7);
    HSSFCell cell59 = row5.createCell(10);
    cell59.setCellValue("COUNTRY");
    cell59.setCellStyle(styleHeader);
    sheet.autoSizeColumn(10);
    HSSFCell cell60 = row5.createCell(11);
    cell60.setCellValue("CITY");
    cell60.setCellStyle(styleHeader);
    sheet.autoSizeColumn(11);
    HSSFCell cell61 = row5.createCell(12);
    cell61.setCellValue("P TYPE");
    cell61.setCellStyle(styleHeader);
    sheet.autoSizeColumn(12);
    HSSFCell cell62 = row5.createCell(13);
    cell62.setCellValue("DEPARTTURE");
    cell62.setCellStyle(styleHeader);
    sheet.autoSizeColumn(13);
    HSSFCell cell63 = row5.createCell(14);
    cell63.setCellValue("NO TICKET");
    cell63.setCellStyle(styleHeader);
    sheet.autoSizeColumn(14);
    HSSFCell cell64 = row5.createCell(15);
    cell64.setCellValue("DESCRIPTION");
    cell64.setCellStyle(styleHeader);
    sheet.autoSizeColumn(15);
    HSSFCell cell65 = row5.createCell(16);
    cell65.setCellValue("PERIOD OF USED");
    cell65.setCellStyle(styleHeader);
    sheet.autoSizeColumn(16);
    HSSFCell cell66 = row5.createCell(18);
    cell66.setCellValue("QTY");
    cell66.setCellStyle(styleHeader);
    sheet.autoSizeColumn(18);
    HSSFCell cell67 = row5.createCell(21);
    cell67.setCellValue("BEFORE VAT");
    cell67.setCellStyle(styleHeader);
    sheet.autoSizeColumn(21);
    HSSFCell cell68 = row5.createCell(22);
    cell68.setCellValue("PRICE");
    cell68.setCellStyle(styleHeader);
    sheet.autoSizeColumn(22);
    HSSFCell cell69 = row5.createCell(23);
    cell69.setCellValue("ACC");
    cell69.setCellStyle(styleHeader);
    sheet.autoSizeColumn(23);
    HSSFCell cell70 = row5.createCell(24);
    cell70.setCellValue("PAID");
    cell70.setCellStyle(styleHeader);
    sheet.autoSizeColumn(24);
    HSSFCell cell71 = row5.createCell(33);
    cell71.setCellValue("AMOUNT LOCAL (R)");
    cell71.setCellStyle(styleHeader);
    sheet.autoSizeColumn(33);
    HSSFCell cell72 = row5.createCell(34);
    cell72.setCellValue("AMOUNT LOCAL (P)");
    cell72.setCellStyle(styleHeader);
    sheet.autoSizeColumn(34);
    HSSFCell cell73 = row5.createCell(35);
    cell73.setCellValue("VAT");
    cell73.setCellStyle(styleHeader);
    sheet.autoSizeColumn(35);
    HSSFCell cell74 = row5.createCell(36);
    cell74.setCellValue("WHT");
    cell74.setCellStyle(styleHeader);
    sheet.autoSizeColumn(36);
    HSSFCell cell75 = row5.createCell(37);
    cell75.setCellValue("GROSS PROFIT");
    cell75.setCellStyle(styleHeader);
    sheet.autoSizeColumn(37);
    HSSFCell cell76 = row5.createCell(39);
    cell76.setCellValue("PAYCOM");
    cell76.setCellStyle(styleHeader);
    sheet.autoSizeColumn(39);
    HSSFCell cell77 = row5.createCell(43);
    cell77.setCellValue("PROFIT BALANCE");
    cell77.setCellStyle(styleHeader);
    sheet.autoSizeColumn(43);
    HSSFCell cell78 = row5.createCell(44);
    cell78.setCellValue("RECEIPT NO");
    cell78.setCellStyle(styleHeader);
    sheet.autoSizeColumn(44);
    HSSFCell cell79 = row5.createCell(45);
    cell79.setCellValue("RECEIPT DATE");
    cell79.setCellStyle(styleHeader);
    sheet.autoSizeColumn(45);
    //        HSSFCell cell80 = row5.createCell(45);
    //            cell80.setCellValue("");
    //            cell80.setCellStyle(styleHeader);
    //            sheet.autoSizeColumn(45);

    sheet.addMergedRegion(CellRangeAddress.valueOf("H8:J8"));
    sheet.addMergedRegion(CellRangeAddress.valueOf("Q8:R8"));
    sheet.addMergedRegion(CellRangeAddress.valueOf("S8:U8"));
    sheet.addMergedRegion(CellRangeAddress.valueOf("Y8:AG8"));
    sheet.addMergedRegion(CellRangeAddress.valueOf("AL8:AM8"));
    sheet.addMergedRegion(CellRangeAddress.valueOf("AN8:AQ8"));

    //        row5.createCell(11).setCellStyle(styleBorderRight); 
    //        row5.createCell(25).setCellStyle(styleBorderRight); 
    //        row5.createCell(31).setCellStyle(styleBorderRight); 

    String merge[] = { "A", "B", "C", "D", "E", "F", "G", "K", "L", "M", "N", "O", "P", "V", "W", "X", "AH",
            "AI", "AJ", "AK", "AR", "AS", "AT" };
    for (int x = 0; x < merge.length; x++) {
        sheet.addMergedRegion(CellRangeAddress.valueOf(merge[x] + "8:" + merge[x] + "9"));
    }

    HSSFRow row6 = sheet.createRow(8);
    for (int x = 0; x < 46; x++) {
        row6.createCell(x).setCellStyle(styleBorderBottomAndRight);
    }

    HSSFCell cell073 = row6.createCell(7);
    cell073.setCellValue("AD");
    cell073.setCellStyle(styleHeader);
    sheet.autoSizeColumn(7);
    HSSFCell cell074 = row6.createCell(8);
    cell074.setCellValue("CH");
    cell074.setCellStyle(styleHeader);
    sheet.autoSizeColumn(8);
    HSSFCell cell075 = row6.createCell(9);
    cell075.setCellValue("IN");
    cell075.setCellStyle(styleHeader);
    sheet.autoSizeColumn(9);
    HSSFCell cell0018 = row6.createCell(16);
    cell0018.setCellValue("IN");
    cell0018.setCellStyle(styleHeader);
    sheet.autoSizeColumn(16);
    HSSFCell cell0019 = row6.createCell(17);
    cell0019.setCellValue("OUT");
    cell0019.setCellStyle(styleHeader);
    sheet.autoSizeColumn(17);
    HSSFCell cell0020 = row6.createCell(18);
    cell0020.setCellValue("ROOM");
    cell0020.setCellStyle(styleHeader);
    sheet.autoSizeColumn(18);
    HSSFCell cell0021 = row6.createCell(19);
    cell0021.setCellValue("NIGHT");
    cell0021.setCellStyle(styleHeader);
    sheet.autoSizeColumn(19);
    HSSFCell cell0022 = row6.createCell(20);
    cell0022.setCellValue("TTL");
    cell0022.setCellStyle(styleHeader);
    sheet.autoSizeColumn(20);
    HSSFCell cell076 = row6.createCell(24);
    cell076.setCellValue("PV NO");
    cell076.setCellStyle(styleHeader);
    sheet.autoSizeColumn(24);
    HSSFCell cell077 = row6.createCell(25);
    cell077.setCellValue("DATE");
    cell077.setCellStyle(styleHeader);
    sheet.autoSizeColumn(25);
    HSSFCell cell078 = row6.createCell(26);
    cell078.setCellValue("INV SUP");
    cell078.setCellStyle(styleHeader);
    sheet.autoSizeColumn(26);
    HSSFCell cell079 = row6.createCell(27);
    cell079.setCellValue("INV NO");
    cell079.setCellStyle(styleHeader);
    sheet.autoSizeColumn(27);
    HSSFCell cell0079 = row6.createCell(28);
    cell0079.setCellValue("INV DATE");
    cell0079.setCellStyle(styleHeader);
    sheet.autoSizeColumn(28);
    HSSFCell cell080 = row6.createCell(29);
    cell080.setCellValue("AMOUNT");
    cell080.setCellStyle(styleHeader);
    sheet.autoSizeColumn(29);
    HSSFCell cell081 = row6.createCell(30);
    cell081.setCellValue("CUR");
    cell081.setCellStyle(styleHeader);
    sheet.autoSizeColumn(30);
    HSSFCell cell082 = row6.createCell(31);
    cell082.setCellValue("REAL RATE");
    cell082.setCellStyle(styleHeader);
    sheet.autoSizeColumn(31);
    HSSFCell cell083 = row6.createCell(32);
    cell083.setCellValue("PAY RATE");
    cell083.setCellStyle(styleHeader);
    sheet.autoSizeColumn(32);
    HSSFCell cell084 = row6.createCell(37);
    cell084.setCellValue("REAL");
    cell084.setCellStyle(styleHeader);
    sheet.autoSizeColumn(37);
    HSSFCell cell85 = row6.createCell(38);
    cell85.setCellValue("PAY");
    cell85.setCellStyle(styleHeader);
    sheet.autoSizeColumn(38);
    HSSFCell cell86 = row6.createCell(39);
    cell86.setCellValue("DATE");
    cell86.setCellStyle(styleHeader);
    sheet.autoSizeColumn(39);
    HSSFCell cell87 = row6.createCell(40);
    cell87.setCellValue("PAYEE");
    cell87.setCellStyle(styleHeader);
    sheet.autoSizeColumn(40);
    HSSFCell cell88 = row6.createCell(41);
    cell88.setCellValue("PV NO");
    cell88.setCellStyle(styleHeader);
    sheet.autoSizeColumn(41);
    HSSFCell cell89 = row6.createCell(42);
    cell89.setCellValue("COM");
    cell89.setCellStyle(styleHeader);
    sheet.autoSizeColumn(42);

    int count = 9;
    for (int i = 0; i < listPaymentSummary.size(); i++) {
        PaymentOutboundAllDetail data = (PaymentOutboundAllDetail) listPaymentSummary.get(i);
        HSSFRow row = sheet.createRow(count + i);

        HSSFCell celldata00 = row.createCell(0);
        celldata00.setCellValue(String.valueOf(data.getRefno()));
        celldata00.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata01 = row.createCell(1);
        celldata01.setCellValue(String.valueOf(data.getIssuedate()));
        celldata01.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata02 = row.createCell(2);
        celldata02.setCellValue(String.valueOf(data.getTourcode()));
        celldata02.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata03 = row.createCell(3);
        celldata03.setCellValue(String.valueOf(data.getInvno()));
        celldata03.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata04 = row.createCell(4);
        celldata04.setCellValue(String.valueOf(data.getInvdate()));
        celldata04.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata05 = row.createCell(5);
        celldata05.setCellValue(String.valueOf(data.getStaff()));
        celldata05.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata06 = row.createCell(6);
        celldata06.setCellValue(String.valueOf(data.getInvto()));
        celldata06.setCellStyle(styleAlignLeftBorderAll);

        HSSFCell celldata07 = row.createCell(7);
        celldata07.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAdult())) ? 0
                : (new BigDecimal(data.getAdult())).doubleValue());
        celldata07.setCellStyle(styleDetailTableCenter);
        HSSFCell celldata08 = row.createCell(8);
        celldata08.setCellValue("".equalsIgnoreCase(String.valueOf(data.getChild())) ? 0
                : (new BigDecimal(data.getChild())).doubleValue());
        celldata08.setCellStyle(styleDetailTableCenter);
        HSSFCell celldata09 = row.createCell(9);
        celldata09.setCellValue("".equalsIgnoreCase(String.valueOf(data.getInfant())) ? 0
                : (new BigDecimal(data.getInfant())).doubleValue());
        celldata09.setCellStyle(styleDetailTableCenter);

        HSSFCell celldata10 = row.createCell(10);
        celldata10.setCellValue(String.valueOf(data.getCountry()));
        celldata10.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata11 = row.createCell(11);
        celldata11.setCellValue(String.valueOf(data.getCity()));
        celldata11.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata12 = row.createCell(12);
        celldata12.setCellValue(String.valueOf(data.getProducttype()));
        celldata12.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata13 = row.createCell(13);
        celldata13.setCellValue(String.valueOf(data.getDepartdate()));
        celldata13.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata14 = row.createCell(14);
        celldata14.setCellValue(String.valueOf(data.getNoticket()));
        celldata14.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata15 = row.createCell(15);
        celldata15.setCellValue(String.valueOf(data.getDescription()));
        celldata15.setCellStyle(styleAlignLeftBorderAll);

        HSSFCell celldata16 = row.createCell(16);
        celldata16.setCellValue(String.valueOf(data.getPeriodin()));
        celldata16.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata17 = row.createCell(17);
        celldata17.setCellValue(String.valueOf(data.getPeriodout()));
        celldata17.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata18 = row.createCell(18);
        celldata18.setCellValue("".equalsIgnoreCase(String.valueOf(data.getQtyroom())) ? 0
                : (new BigDecimal(data.getQtyroom())).doubleValue());
        celldata18.setCellStyle(styleDetailTableCenter);
        HSSFCell celldata19 = row.createCell(19);
        celldata19.setCellValue("".equalsIgnoreCase(String.valueOf(data.getQtynight())) ? 0
                : (new BigDecimal(data.getQtynight())).doubleValue());
        celldata19.setCellStyle(styleDetailTableCenter);
        HSSFCell celldata20 = row.createCell(20);
        celldata20.setCellValue("".equalsIgnoreCase(String.valueOf(data.getQtyttl())) ? 0
                : (new BigDecimal(data.getQtyttl())).doubleValue());
        celldata20.setCellStyle(styleDetailTableCenter);
        HSSFCell celldata21 = row.createCell(21);
        celldata21.setCellValue(
                "".equalsIgnoreCase(String.valueOf(data.getBeforevat())) || data.getBeforevat() == null ? 0
                        : (new BigDecimal(data.getBeforevat())).doubleValue());
        celldata21.setCellStyle(styleAlignRightBorderAllNumber);
        HSSFCell celldata22 = row.createCell(22);
        celldata22.setCellValue("".equalsIgnoreCase(String.valueOf(data.getPrice())) ? 0
                : (new BigDecimal(data.getPrice())).doubleValue());
        celldata22.setCellStyle(styleAlignRightBorderAllNumber);
        HSSFCell celldata23 = row.createCell(23);
        celldata23.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAcc())) ? 0
                : (new BigDecimal(data.getAcc())).doubleValue());
        celldata23.setCellStyle(styleDetailTableCenter);

        HSSFCell celldata24 = row.createCell(24);
        celldata24.setCellValue(String.valueOf(data.getPvno()));
        celldata24.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata25 = row.createCell(25);
        celldata25.setCellValue(String.valueOf(data.getPaydate()));
        celldata25.setCellStyle(styleDetailTableCenter);
        HSSFCell celldata26 = row.createCell(26);
        celldata26.setCellValue(String.valueOf(data.getInvsup()));
        celldata26.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata27 = row.createCell(27);
        celldata27.setCellValue(String.valueOf(data.getPayinvno()));
        celldata27.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata28 = row.createCell(28);
        celldata28.setCellValue(String.valueOf(data.getPayinvdate()));
        celldata28.setCellStyle(styleDetailTableCenter);
        HSSFCell celldata29 = row.createCell(29);
        celldata29.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmount())) ? 0
                : (new BigDecimal(data.getAmount())).doubleValue());
        celldata29.setCellStyle(styleAlignRightBorderAllNumber);
        HSSFCell celldata30 = row.createCell(30);
        celldata30.setCellValue(String.valueOf(data.getPaycur()));
        celldata30.setCellStyle(styleDetailTableCenter);
        HSSFCell celldata31 = row.createCell(31);
        celldata31.setCellValue("".equalsIgnoreCase(String.valueOf(data.getRealrate())) ? 0
                : (new BigDecimal(data.getRealrate())).doubleValue());
        celldata31.setCellStyle(styleAlignRightBorderAllNumberRate);
        HSSFCell celldata32 = row.createCell(32);
        celldata32.setCellValue("".equalsIgnoreCase(String.valueOf(data.getPayrate())) ? 0
                : (new BigDecimal(data.getPayrate())).doubleValue());
        celldata32.setCellStyle(styleAlignRightBorderAllNumberRate);
        HSSFCell celldata33 = row.createCell(33);
        celldata33.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmountlocalr())) ? 0
                : (new BigDecimal(data.getAmountlocalr())).doubleValue());
        celldata33.setCellStyle(styleAlignRightBorderAllNumber);
        HSSFCell celldata34 = row.createCell(34);
        celldata34.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmountlocalp())) ? 0
                : (new BigDecimal(data.getAmountlocalp())).doubleValue());
        celldata34.setCellStyle(styleAlignRightBorderAllNumber);
        HSSFCell celldata35 = row.createCell(35);
        celldata35.setCellValue("".equalsIgnoreCase(String.valueOf(data.getVat())) ? 0
                : (new BigDecimal(data.getVat())).doubleValue());
        celldata35.setCellStyle(styleAlignRightBorderAllNumber);
        HSSFCell celldata36 = row.createCell(36);
        celldata36.setCellValue("".equalsIgnoreCase(String.valueOf(data.getWht())) ? 0
                : (new BigDecimal(data.getWht())).doubleValue());
        celldata36.setCellStyle(styleAlignRightBorderAllNumber);
        HSSFCell celldata37 = row.createCell(37);
        celldata37.setCellValue("".equalsIgnoreCase(String.valueOf(data.getGrossreal())) ? 0
                : (new BigDecimal(data.getGrossreal())).doubleValue());
        celldata37.setCellStyle(styleAlignRightBorderAllNumber);
        HSSFCell celldata38 = row.createCell(38);
        celldata38.setCellValue("".equalsIgnoreCase(String.valueOf(data.getGrosspay())) ? 0
                : (new BigDecimal(data.getGrosspay())).doubleValue());
        celldata38.setCellStyle(styleAlignRightBorderAllNumber);
        HSSFCell celldata39 = row.createCell(39);
        celldata39.setCellValue(String.valueOf(data.getPaycomdate().trim()));
        celldata39.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata40 = row.createCell(40);
        celldata40.setCellValue(String.valueOf(data.getPaycomstaff()));
        celldata40.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata41 = row.createCell(41);
        celldata41.setCellValue(String.valueOf(data.getPaycompvno()));
        celldata41.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata42 = row.createCell(42);
        System.out.println("data.getPaycommission() : " + data.getPaycommission());
        celldata42.setCellValue("".equalsIgnoreCase(String.valueOf(data.getPaycommission())) ? 0
                : (new BigDecimal(data.getPaycommission().replaceAll(",", ""))).doubleValue());
        celldata42.setCellStyle(styleAlignRightBorderAllNumber);
        HSSFCell celldata43 = row.createCell(43);
        celldata43.setCellValue("".equalsIgnoreCase(String.valueOf(data.getBalanceprofit())) ? 0
                : (new BigDecimal(data.getBalanceprofit())).doubleValue());
        celldata43.setCellStyle(styleAlignRightBorderAllNumber);
        HSSFCell celldata44 = row.createCell(44);
        celldata44.setCellValue(String.valueOf(data.getReceiptno()));
        celldata44.setCellStyle(styleAlignLeftBorderAll);
        HSSFCell celldata45 = row.createCell(45);
        celldata45.setCellValue(String.valueOf(data.getReceiptdate()));
        celldata45.setCellStyle(styleAlignLeftBorderAll);

        if (i == (listPaymentSummary.size() - 1)) {
            row = sheet.createRow(count + i + 1);
            for (int k = 0; k < 46; k++) {
                HSSFCellStyle styleSum = wb.createCellStyle();
                styleSum.setAlignment(styleSum.ALIGN_RIGHT);
                styleSum.setBorderTop(HSSFCellStyle.BORDER_THIN);
                styleSum.setBorderBottom(HSSFCellStyle.BORDER_THIN);
                HSSFCell cellSum = row.createCell(k);
                if (k == 0) {
                    styleSum.setBorderLeft(HSSFCellStyle.BORDER_THIN);
                }
                if (k == 45) {
                    styleSum.setBorderRight(HSSFCellStyle.BORDER_THIN);
                }
                cellSum.setCellStyle(styleSum);
            }
            HSSFCellStyle styleSum = wb.createCellStyle();
            styleSum.setFont(excelFunction.getTotalDetailBoldFont(wb.createFont()));
            styleSum.setAlignment(styleSum.ALIGN_RIGHT);
            styleSum.setBorderLeft(HSSFCellStyle.BORDER_THIN);
            styleSum.setBorderRight(HSSFCellStyle.BORDER_THIN);
            styleSum.setBorderTop(HSSFCellStyle.BORDER_THIN);
            styleSum.setBorderBottom(HSSFCellStyle.BORDER_THIN);
            styleSum.setDataFormat(currency.getFormat("#,##0.00"));

            HSSFCellStyle styleSumCenter = wb.createCellStyle();
            styleSumCenter.setFont(excelFunction.getTotalDetailBoldFont(wb.createFont()));
            styleSumCenter.setAlignment(styleSum.ALIGN_CENTER);
            styleSumCenter.setBorderLeft(HSSFCellStyle.BORDER_THIN);
            styleSumCenter.setBorderRight(HSSFCellStyle.BORDER_THIN);
            styleSumCenter.setBorderTop(HSSFCellStyle.BORDER_THIN);
            styleSumCenter.setBorderBottom(HSSFCellStyle.BORDER_THIN);
            styleSumCenter.setDataFormat(currency.getFormat("#,##0"));

            String sumAd = "SUM(H" + 10 + ":H" + (count + i + 1) + ")";
            String sumCh = "SUM(I" + 10 + ":I" + (count + i + 1) + ")";
            String sumIn = "SUM(J" + 10 + ":J" + (count + i + 1) + ")";
            String sumRoom = "SUM(S" + 10 + ":S" + (count + i + 1) + ")";
            String sumNight = "SUM(T" + 10 + ":T" + (count + i + 1) + ")";
            String sumTtl = "SUM(U" + 10 + ":U" + (count + i + 1) + ")";
            String sumBeforeVat = "SUM(V" + 10 + ":V" + (count + i + 1) + ")";
            String sumPrice = "SUM(W" + 10 + ":W" + (count + i + 1) + ")";
            String sumAmount = "SUM(AD" + 10 + ":AD" + (count + i + 1) + ")";
            String sumLocalR = "SUM(AH" + 10 + ":AH" + (count + i + 1) + ")";
            String sumLocalP = "SUM(AI" + 10 + ":AI" + (count + i + 1) + ")";
            String sumVat = "SUM(AJ" + 10 + ":AJ" + (count + i + 1) + ")";
            String sumWht = "SUM(AK" + 10 + ":AK" + (count + i + 1) + ")";
            String sumGrossReal = "SUM(AL" + 10 + ":AL" + (count + i + 1) + ")";
            String sumGrossPay = "SUM(AM" + 10 + ":AM" + (count + i + 1) + ")";
            String sumPaycomCom = "SUM(AQ" + 10 + ":AQ" + (count + i + 1) + ")";
            String sumProfitBalance = "SUM(AR" + 10 + ":AR" + (count + i + 1) + ")";

            HSSFCell cell5Sum = row.createCell(6);
            cell5Sum.setCellValue("Total");
            cell5Sum.setCellStyle(styleSumCenter);
            HSSFCell cell7Sum = row.createCell(7);
            cell7Sum.setCellFormula(sumAd);
            cell7Sum.setCellStyle(styleSumCenter);
            HSSFCell cell8Sum = row.createCell(8);
            cell8Sum.setCellFormula(sumCh);
            cell8Sum.setCellStyle(styleSumCenter);
            HSSFCell cell9Sum = row.createCell(9);
            cell9Sum.setCellFormula(sumIn);
            cell9Sum.setCellStyle(styleSumCenter);
            HSSFCell cell18Sum = row.createCell(18);
            cell18Sum.setCellFormula(sumRoom);
            cell18Sum.setCellStyle(styleSumCenter);
            HSSFCell cell19Sum = row.createCell(19);
            cell19Sum.setCellFormula(sumNight);
            cell19Sum.setCellStyle(styleSumCenter);
            HSSFCell cell20Sum = row.createCell(20);
            cell20Sum.setCellFormula(sumTtl);
            cell20Sum.setCellStyle(styleSumCenter);
            HSSFCell cell21Sum = row.createCell(21);
            cell21Sum.setCellFormula(sumBeforeVat);
            cell21Sum.setCellStyle(styleSum);
            HSSFCell cell22Sum = row.createCell(22);
            cell22Sum.setCellFormula(sumPrice);
            cell22Sum.setCellStyle(styleSum);
            HSSFCell cell29Sum = row.createCell(29);
            cell29Sum.setCellFormula(sumAmount);
            cell29Sum.setCellStyle(styleSum);
            HSSFCell cell33Sum = row.createCell(33);
            cell33Sum.setCellFormula(sumLocalR);
            cell33Sum.setCellStyle(styleSum);
            HSSFCell cell34Sum = row.createCell(34);
            cell34Sum.setCellFormula(sumLocalP);
            cell34Sum.setCellStyle(styleSum);
            HSSFCell cell35Sum = row.createCell(35);
            cell35Sum.setCellFormula(sumVat);
            cell35Sum.setCellStyle(styleSum);
            HSSFCell cell36Sum = row.createCell(36);
            cell36Sum.setCellFormula(sumWht);
            cell36Sum.setCellStyle(styleSum);
            HSSFCell cell37Sum = row.createCell(37);
            cell37Sum.setCellFormula(sumGrossReal);
            cell37Sum.setCellStyle(styleSum);
            HSSFCell cell38Sum = row.createCell(38);
            cell38Sum.setCellFormula(sumGrossPay);
            cell38Sum.setCellStyle(styleSum);
            HSSFCell cell42Sum = row.createCell(42);
            cell42Sum.setCellFormula(sumPaycomCom);
            cell42Sum.setCellStyle(styleSum);
            HSSFCell cell43Sum = row.createCell(43);
            cell43Sum.setCellFormula(sumProfitBalance);
            cell43Sum.setCellStyle(styleSum);
        }
    }
    sheet.setColumnWidth(2, 256 * 20);
    sheet.setColumnWidth(3, 256 * 15);
    sheet.setColumnWidth(4, 256 * 15);
    sheet.setColumnWidth(5, 256 * 30);
    sheet.setColumnWidth(6, 256 * 15);
    sheet.setColumnWidth(10, 256 * 15);
    sheet.setColumnWidth(11, 256 * 15);
    sheet.setColumnWidth(12, 256 * 15);

    sheet.setColumnWidth(16, 256 * 15);
    sheet.setColumnWidth(17, 256 * 15);
    sheet.setColumnWidth(18, 256 * 10);
    sheet.setColumnWidth(19, 256 * 10);
    sheet.setColumnWidth(20, 256 * 10);

    sheet.setColumnWidth(21, 256 * 15);
    sheet.setColumnWidth(22, 256 * 15);
    sheet.setColumnWidth(23, 256 * 15);
    sheet.setColumnWidth(24, 256 * 15);
    sheet.setColumnWidth(25, 256 * 15);
    sheet.setColumnWidth(26, 256 * 30);
    sheet.setColumnWidth(27, 256 * 15);
    sheet.setColumnWidth(28, 256 * 15);
    sheet.setColumnWidth(29, 256 * 15);

    sheet.setColumnWidth(35, 256 * 10);
    sheet.setColumnWidth(36, 256 * 10);
    sheet.setColumnWidth(37, 256 * 15);
    sheet.setColumnWidth(38, 256 * 15);
    sheet.setColumnWidth(39, 256 * 15);
    sheet.setColumnWidth(40, 256 * 20);
    sheet.setColumnWidth(41, 256 * 15);
    sheet.setColumnWidth(42, 256 * 15);
}

From source file:com.smi.travel.controller.excel.checking.airticket.AirlineSummary.java

public void genTicketFareSummaryAirlineReport(HSSFWorkbook wb, List ticketSummaryAirline) {
    String sheetNamePax = "Pax"; // name of sheet
    String sheetNameDetail = "Detail";
    String sheetNameRounting = "Rounting";
    HSSFSheet sheetPax = wb.createSheet(sheetNamePax);
    HSSFSheet sheetDetail = wb.createSheet(sheetNameDetail);
    HSSFSheet sheetRounting = wb.createSheet(sheetNameRounting);

    UtilityExcelFunction excelFunction = new UtilityExcelFunction();

    TicketSummaryAirlineView dataheader = new TicketSummaryAirlineView();

    HSSFDataFormat currency = wb.createDataFormat();
    // Set align Text
    HSSFCellStyle styleC21 = wb.createCellStyle();
    styleC21.setAlignment(styleC21.ALIGN_RIGHT);
    HSSFCellStyle styleC22 = wb.createCellStyle();
    styleC22.setAlignment(styleC22.ALIGN_LEFT);
    HSSFCellStyle styleC23 = wb.createCellStyle();
    styleC23.setAlignment(styleC22.ALIGN_CENTER);

    HSSFCellStyle styleC25 = wb.createCellStyle();
    styleC25.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC25.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC25.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC25.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC25.setDataFormat(currency.getFormat("#,##0.00"));

    HSSFCellStyle styleC26 = wb.createCellStyle();
    styleC26.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC26.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC26.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC26.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC26.setDataFormat(currency.getFormat("#,##0"));
    styleC26.setAlignment(styleC22.ALIGN_CENTER);

    HSSFCellStyle styleC27 = wb.createCellStyle();
    styleC27.setAlignment(styleC27.ALIGN_RIGHT);
    styleC27.setDataFormat(currency.getFormat("#,##0.00"));

    HSSFCellStyle styleC28 = wb.createCellStyle();
    styleC28.setAlignment(styleC28.ALIGN_CENTER);
    styleC28.setDataFormat(currency.getFormat("#,##0"));

    HSSFCellStyle styleC29 = wb.createCellStyle();
    styleC29.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC29.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC29.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC29.setBorderBottom(HSSFCellStyle.BORDER_THIN);

    HSSFCellStyle styleC30 = wb.createCellStyle();
    styleC30.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC30.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC30.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC30.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC30.setAlignment(styleC22.ALIGN_CENTER);

    HSSFCellStyle stylebordertotal = wb.createCellStyle();
    stylebordertotal.setBorderBottom(HSSFCellStyle.BORDER_THIN);

    HSSFCellStyle stylebordertotalleft = wb.createCellStyle();
    stylebordertotalleft.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    stylebordertotalleft.setBorderBottom(HSSFCellStyle.BORDER_THIN);

    if (!ticketSummaryAirline.isEmpty()) {
        dataheader = (TicketSummaryAirlineView) ticketSummaryAirline.get(0);
        for (int x = 1; x < 4; x++) {
            if (x == 1) {
                // set Header Report (Row 1)
                HSSFCellStyle styleC1 = wb.createCellStyle();
                HSSFRow row1 = sheetPax.createRow(0);
                HSSFCell cell1 = row1.createCell(0);
                cell1.setCellValue("List Summary Airline");
                styleC1.setFont(excelFunction.getHeaderFont(wb.createFont()));
                cell1.setCellStyle(styleC1);
                sheetPax.addMergedRegion(CellRangeAddress.valueOf("A1:E1"));

                // Row 2
                HSSFRow row2 = sheetPax.createRow(1);
                HSSFCell cell21 = row2.createCell(0);
                cell21.setCellValue("Invoice Date : ");
                cell21.setCellStyle(styleC21);
                HSSFCell cell22 = row2.createCell(1);
                cell22.setCellValue(dataheader.getHeaderdatefrom());
                cell22.setCellStyle(styleC22);
                //sheetPax.addMergedRegion(CellRangeAddress.valueOf("B2:C2"));
                HSSFCell cell23 = row2.createCell(2);
                if (!"".equalsIgnoreCase(dataheader.getHeaderdateto())) {
                    cell23.setCellValue(" to " + dataheader.getHeaderdateto());
                    cell23.setCellStyle(styleC22);
                }//from  ww  w . j  av a2 s  . c om
                HSSFCell cell24 = row2.createCell(3);
                cell24.setCellValue("Print on : ");
                cell24.setCellStyle(styleC21);
                HSSFCell cell25 = row2.createCell(4);
                cell25.setCellValue(dataheader.getHeaderprinton());
                cell25.setCellStyle(styleC22);

                // Row 3
                HSSFRow row3 = sheetPax.createRow(2);
                HSSFCell cell31 = row3.createCell(0);
                cell31.setCellValue("Issue Date : ");
                cell31.setCellStyle(styleC21);
                HSSFCell cell32 = row3.createCell(1);
                cell32.setCellValue(dataheader.getHeaderissuedatefrom());
                cell32.setCellStyle(styleC22);
                HSSFCell cell33 = row3.createCell(2);
                if (!"".equalsIgnoreCase(dataheader.getHeaderissuedateto())) {
                    cell33.setCellValue(" to " + dataheader.getHeaderissuedateto());
                    cell33.setCellStyle(styleC22);
                }
                HSSFCell cell34 = row3.createCell(3);
                cell34.setCellValue("Routing Detail : ");
                cell34.setCellStyle(styleC21);
                HSSFCell cell35 = row3.createCell(4);
                cell35.setCellValue(dataheader.getHeaderroutingdetail());
                cell35.setCellStyle(styleC22);

                // Row 4
                HSSFRow row4 = sheetPax.createRow(3);
                HSSFCell cell41 = row4.createCell(0);
                cell41.setCellValue("Type Routing : ");
                cell41.setCellStyle(styleC21);
                HSSFCell cell42 = row4.createCell(1);
                cell42.setCellValue(dataheader.getHeadertyperouting());
                cell42.setCellStyle(styleC22);
                HSSFCell cell43 = row4.createCell(3);
                cell43.setCellValue("Passenger : ");
                cell43.setCellStyle(styleC21);
                HSSFCell cell44 = row4.createCell(4);
                cell44.setCellValue(dataheader.getHeaderpassenger());
                cell44.setCellStyle(styleC22);

                // Row 5
                HSSFRow row5 = sheetPax.createRow(4);
                HSSFCell cell51 = row5.createCell(0);
                cell51.setCellValue("Airline Code : ");
                cell51.setCellStyle(styleC21);
                HSSFCell cell52 = row5.createCell(1);
                cell52.setCellValue(dataheader.getHeaderair());
                cell52.setCellStyle(styleC22);
                HSSFCell cell53 = row5.createCell(3);
                cell53.setCellValue("Sale Staff : ");
                cell53.setCellStyle(styleC21);
                HSSFCell cell54 = row5.createCell(4);
                cell54.setCellValue(dataheader.getHeadersalestaff());
                cell54.setCellStyle(styleC22);

                // Row 6
                HSSFRow row6 = sheetPax.createRow(5);
                HSSFCell cell61 = row6.createCell(0);
                cell61.setCellValue("Agent Name : ");
                cell61.setCellStyle(styleC21);
                HSSFCell cell62 = row6.createCell(1);
                cell62.setCellValue(dataheader.getHeaderagentname());
                cell62.setCellStyle(styleC22);
                HSSFCell cell63 = row6.createCell(3);
                cell63.setCellValue("Department : ");
                cell63.setCellStyle(styleC21);
                HSSFCell cell64 = row6.createCell(4);
                cell64.setCellValue(dataheader.getHeaderdepartment());
                cell64.setCellStyle(styleC22);

                // Row 7
                HSSFRow row7 = sheetPax.createRow(6);
                HSSFCell cell71 = row7.createCell(0);
                cell71.setCellValue("Term Pay : ");
                cell71.setCellStyle(styleC21);
                HSSFCell cell72 = row7.createCell(1);
                cell72.setCellValue(dataheader.getHeadertermpay());
                cell72.setCellStyle(styleC22);
                HSSFCell cell73 = row7.createCell(3);
                cell73.setCellValue("Print By : ");
                cell73.setCellStyle(styleC21);
                HSSFCell cell74 = row7.createCell(4);
                cell74.setCellValue(dataheader.getHeaderprintby());
                cell74.setCellStyle(styleC22);
            }
            if (x == 2) {
                // set Header Report (Row 1)
                HSSFCellStyle styleC1 = wb.createCellStyle();
                HSSFRow row1 = sheetDetail.createRow(0);
                HSSFCell cell1 = row1.createCell(0);
                cell1.setCellValue("List Summary Airline");
                styleC1.setFont(excelFunction.getHeaderFont(wb.createFont()));
                cell1.setCellStyle(styleC1);
                sheetDetail.addMergedRegion(CellRangeAddress.valueOf("A1:E1"));

                // Row 2
                HSSFRow row2 = sheetDetail.createRow(1);
                HSSFCell cell21 = row2.createCell(0);
                cell21.setCellValue("Invoice Date : ");
                cell21.setCellStyle(styleC21);
                HSSFCell cell22 = row2.createCell(1);
                cell22.setCellValue(dataheader.getHeaderdatefrom());
                cell22.setCellStyle(styleC22);
                //sheetDetail.addMergedRegion(CellRangeAddress.valueOf("B2:C2"));
                HSSFCell cell23 = row2.createCell(2);
                if (!"".equalsIgnoreCase(dataheader.getHeaderdateto())) {
                    cell23.setCellValue(" to " + dataheader.getHeaderdateto());
                    cell23.setCellStyle(styleC22);
                }
                HSSFCell cell24 = row2.createCell(3);
                cell24.setCellValue("Print on : ");
                cell24.setCellStyle(styleC21);
                HSSFCell cell25 = row2.createCell(4);
                cell25.setCellValue(dataheader.getHeaderprinton());
                cell25.setCellStyle(styleC22);

                // Row 3
                HSSFRow row3 = sheetDetail.createRow(2);
                HSSFCell cell31 = row3.createCell(0);
                cell31.setCellValue("Issue Date : ");
                cell31.setCellStyle(styleC21);
                HSSFCell cell32 = row3.createCell(1);
                cell32.setCellValue(dataheader.getHeaderissuedatefrom());
                cell32.setCellStyle(styleC22);
                HSSFCell cell33 = row3.createCell(2);
                if (!"".equalsIgnoreCase(dataheader.getHeaderissuedateto())) {
                    cell33.setCellValue(" to " + dataheader.getHeaderissuedateto());
                    cell33.setCellStyle(styleC22);
                }
                HSSFCell cell34 = row3.createCell(3);
                cell34.setCellValue("Routing Detail : ");
                cell34.setCellStyle(styleC21);
                HSSFCell cell35 = row3.createCell(4);
                cell35.setCellValue(dataheader.getHeaderroutingdetail());
                cell35.setCellStyle(styleC22);

                // Row 4
                HSSFRow row4 = sheetDetail.createRow(3);
                HSSFCell cell41 = row4.createCell(0);
                cell41.setCellValue("Type Routing : ");
                cell41.setCellStyle(styleC21);
                HSSFCell cell42 = row4.createCell(1);
                cell42.setCellValue(dataheader.getHeadertyperouting());
                cell42.setCellStyle(styleC22);
                HSSFCell cell43 = row4.createCell(3);
                cell43.setCellValue("Passenger : ");
                cell43.setCellStyle(styleC21);
                HSSFCell cell44 = row4.createCell(4);
                cell44.setCellValue(dataheader.getHeaderpassenger());
                cell44.setCellStyle(styleC22);

                // Row 5
                HSSFRow row5 = sheetDetail.createRow(4);
                HSSFCell cell51 = row5.createCell(0);
                cell51.setCellValue("Airline Code : ");
                cell51.setCellStyle(styleC21);
                HSSFCell cell52 = row5.createCell(1);
                cell52.setCellValue(dataheader.getHeaderair());
                cell52.setCellStyle(styleC22);
                HSSFCell cell53 = row5.createCell(3);
                cell53.setCellValue("Sale Staff : ");
                cell53.setCellStyle(styleC21);
                HSSFCell cell54 = row5.createCell(4);
                cell54.setCellValue(dataheader.getHeadersalestaff());
                cell54.setCellStyle(styleC22);

                // Row 6
                HSSFRow row6 = sheetDetail.createRow(5);
                HSSFCell cell61 = row6.createCell(0);
                cell61.setCellValue("Agent Name : ");
                cell61.setCellStyle(styleC21);
                HSSFCell cell62 = row6.createCell(1);
                cell62.setCellValue(dataheader.getHeaderagentname());
                cell62.setCellStyle(styleC22);
                HSSFCell cell63 = row6.createCell(3);
                cell63.setCellValue("Department : ");
                cell63.setCellStyle(styleC21);
                HSSFCell cell64 = row6.createCell(4);
                cell64.setCellValue(dataheader.getHeaderdepartment());
                cell64.setCellStyle(styleC22);

                // Row 7
                HSSFRow row7 = sheetDetail.createRow(6);
                HSSFCell cell71 = row7.createCell(0);
                cell71.setCellValue("Term Pay : ");
                cell71.setCellStyle(styleC21);
                HSSFCell cell72 = row7.createCell(1);
                cell72.setCellValue(dataheader.getHeadertermpay());
                cell72.setCellStyle(styleC22);
                HSSFCell cell73 = row7.createCell(3);
                cell73.setCellValue("Print By : ");
                cell73.setCellStyle(styleC21);
                HSSFCell cell74 = row7.createCell(4);
                cell74.setCellValue(dataheader.getHeaderprintby());
                cell74.setCellStyle(styleC22);
            }
            if (x == 3) {
                // set Header Report (Row 1)
                HSSFCellStyle styleC1 = wb.createCellStyle();
                HSSFRow row1 = sheetRounting.createRow(0);
                HSSFCell cell1 = row1.createCell(0);
                cell1.setCellValue("List Summary Airline");
                styleC1.setFont(excelFunction.getHeaderFont(wb.createFont()));
                cell1.setCellStyle(styleC1);
                sheetRounting.addMergedRegion(CellRangeAddress.valueOf("A1:E1"));

                // Row 2
                HSSFRow row2 = sheetRounting.createRow(1);
                HSSFCell cell21 = row2.createCell(0);
                cell21.setCellValue("Invoice Date : ");
                cell21.setCellStyle(styleC21);
                HSSFCell cell22 = row2.createCell(1);
                cell22.setCellValue(dataheader.getHeaderdatefrom());
                cell22.setCellStyle(styleC22);
                //sheetRounting.addMergedRegion(CellRangeAddress.valueOf("B2:C2"));
                HSSFCell cell23 = row2.createCell(2);
                if (!"".equalsIgnoreCase(dataheader.getHeaderdateto())) {
                    cell23.setCellValue(" to " + dataheader.getHeaderdateto());
                    cell23.setCellStyle(styleC22);
                }
                HSSFCell cell24 = row2.createCell(3);
                cell24.setCellValue("Print on : ");
                cell24.setCellStyle(styleC21);
                HSSFCell cell25 = row2.createCell(4);
                cell25.setCellValue(dataheader.getHeaderprinton());
                cell25.setCellStyle(styleC22);

                // Row 3
                HSSFRow row3 = sheetRounting.createRow(2);
                HSSFCell cell31 = row3.createCell(0);
                cell31.setCellValue("Issue Date : ");
                cell31.setCellStyle(styleC21);
                HSSFCell cell32 = row3.createCell(1);
                cell32.setCellValue(dataheader.getHeaderissuedatefrom());
                cell32.setCellStyle(styleC22);
                HSSFCell cell33 = row3.createCell(2);
                if (!"".equalsIgnoreCase(dataheader.getHeaderissuedateto())) {
                    cell33.setCellValue(" to " + dataheader.getHeaderissuedateto());
                    cell33.setCellStyle(styleC22);
                }
                HSSFCell cell34 = row3.createCell(3);
                cell34.setCellValue("Routing Detail : ");
                cell34.setCellStyle(styleC21);
                HSSFCell cell35 = row3.createCell(4);
                cell35.setCellValue(dataheader.getHeaderroutingdetail());
                cell35.setCellStyle(styleC22);

                // Row 4
                HSSFRow row4 = sheetRounting.createRow(3);
                HSSFCell cell41 = row4.createCell(0);
                cell41.setCellValue("Type Routing : ");
                cell41.setCellStyle(styleC21);
                HSSFCell cell42 = row4.createCell(1);
                cell42.setCellValue(dataheader.getHeadertyperouting());
                cell42.setCellStyle(styleC22);
                HSSFCell cell43 = row4.createCell(3);
                cell43.setCellValue("Passenger : ");
                cell43.setCellStyle(styleC21);
                HSSFCell cell44 = row4.createCell(4);
                cell44.setCellValue(dataheader.getHeaderpassenger());
                cell44.setCellStyle(styleC22);

                // Row 5
                HSSFRow row5 = sheetRounting.createRow(4);
                HSSFCell cell51 = row5.createCell(0);
                cell51.setCellValue("Airline Code : ");
                cell51.setCellStyle(styleC21);
                HSSFCell cell52 = row5.createCell(1);
                cell52.setCellValue(dataheader.getHeaderair());
                cell52.setCellStyle(styleC22);
                HSSFCell cell53 = row5.createCell(3);
                cell53.setCellValue("Sale Staff : ");
                cell53.setCellStyle(styleC21);
                HSSFCell cell54 = row5.createCell(4);
                cell54.setCellValue(dataheader.getHeadersalestaff());
                cell54.setCellStyle(styleC22);

                // Row 6
                HSSFRow row6 = sheetRounting.createRow(5);
                HSSFCell cell61 = row6.createCell(0);
                cell61.setCellValue("Agent Name : ");
                cell61.setCellStyle(styleC21);
                HSSFCell cell62 = row6.createCell(1);
                cell62.setCellValue(dataheader.getHeaderagentname());
                cell62.setCellStyle(styleC22);
                HSSFCell cell63 = row6.createCell(3);
                cell63.setCellValue("Department : ");
                cell63.setCellStyle(styleC21);
                HSSFCell cell64 = row6.createCell(4);
                cell64.setCellValue(dataheader.getHeaderdepartment());
                cell64.setCellStyle(styleC22);

                // Row 7
                HSSFRow row7 = sheetRounting.createRow(6);
                HSSFCell cell71 = row7.createCell(0);
                cell71.setCellValue("Term Pay : ");
                cell71.setCellStyle(styleC21);
                HSSFCell cell72 = row7.createCell(1);
                cell72.setCellValue(dataheader.getHeadertermpay());
                cell72.setCellStyle(styleC22);
                HSSFCell cell73 = row7.createCell(3);
                cell73.setCellValue("Print By : ");
                cell73.setCellStyle(styleC21);
                HSSFCell cell74 = row7.createCell(4);
                cell74.setCellValue(dataheader.getHeaderprintby());
                cell74.setCellStyle(styleC22);
            }
        }
        // Header Table
        HSSFCellStyle styleC3 = wb.createCellStyle();
        styleC3.setFont(excelFunction.getHeaderTable(wb.createFont()));
        styleC3.setAlignment(styleC3.ALIGN_CENTER);
        styleC3.setBorderBottom(HSSFCellStyle.BORDER_THIN);
        styleC3.setBorderLeft(HSSFCellStyle.BORDER_THIN);
        styleC3.setBorderRight(HSSFCellStyle.BORDER_THIN);
        styleC3.setBorderTop(HSSFCellStyle.BORDER_THIN);

        int count = 9;
        int tempcount = 0;
        int tempcount2 = 0;
        int tempcount3 = 0;
        int rowdetail = 0;
        int rowrouting = 0;
        int x = 0;
        int y = 0;
        for (int i = 0; i < ticketSummaryAirline.size(); i++) {
            TicketSummaryAirlineView data = (TicketSummaryAirlineView) ticketSummaryAirline.get(i);

            if ("pax".equalsIgnoreCase(data.getPage())) {
                //pax
                HSSFRow row8 = sheetPax.createRow(8);
                HSSFCell cell81 = row8.createCell(0);
                cell81.setCellValue("Payment Type");
                cell81.setCellStyle(styleC3);
                //                    sheetPax.autoSizeColumn(0);
                HSSFCell cell82 = row8.createCell(1);
                cell82.setCellValue("Type Routing");
                cell82.setCellStyle(styleC3);
                //                    sheetPax.autoSizeColumn(1);
                HSSFCell cell83 = row8.createCell(2);
                cell83.setCellValue("Pax");
                //                    sheetPax.autoSizeColumn(2);
                cell83.setCellStyle(styleC3);
                HSSFCell cell84 = row8.createCell(3);
                cell84.setCellValue("Net Sales");
                cell84.setCellStyle(styleC3);
                //                    sheetPax.autoSizeColumn(3);
                HSSFCell cell85 = row8.createCell(4);
                cell85.setCellValue("Tax");
                cell85.setCellStyle(styleC3);
                //                    sheetPax.autoSizeColumn(4);
                HSSFCell cell86 = row8.createCell(5);
                cell86.setCellValue("Ins.");
                cell86.setCellStyle(styleC3);
                //                    sheetPax.autoSizeColumn(5);
                HSSFCell cell87 = row8.createCell(6);
                cell87.setCellValue("Comms");
                cell87.setCellStyle(styleC3);
                //                    sheetPax.autoSizeColumn(6);
                HSSFCell cell88 = row8.createCell(7);
                cell88.setCellValue("Amount Wendy");
                cell88.setCellStyle(styleC3);
                //                    sheetPax.autoSizeColumn(7);
                HSSFCell cell89 = row8.createCell(8);
                cell89.setCellValue("Amount Outbound");
                cell89.setCellStyle(styleC3);
                //                    sheetPax.autoSizeColumn(8);
                HSSFCell cell90 = row8.createCell(9);
                cell90.setCellValue("Amount Inbound");
                cell90.setCellStyle(styleC3);
                //                    sheetPax.autoSizeColumn(9);

                HSSFRow row = sheetPax.createRow(count + i);
                HSSFCell celldata0 = row.createCell(0);
                celldata0.setCellValue(String.valueOf(data.getPaymenttypeP()));
                celldata0.setCellStyle(styleC30);

                HSSFCell celldata1 = row.createCell(1);
                celldata1.setCellValue(String.valueOf(data.getTyperoutingP()));
                celldata1.setCellStyle(styleC30);

                HSSFCell celldata2 = row.createCell(2);
                celldata2.setCellValue("".equalsIgnoreCase(String.valueOf(data.getPaxP())) ? 0
                        : (new BigDecimal(data.getPaxP())).doubleValue());
                celldata2.setCellStyle(styleC26);

                HSSFCell celldata3 = row.createCell(3);
                celldata3.setCellValue("".equalsIgnoreCase(String.valueOf(data.getNetsalesP())) ? 0
                        : (new BigDecimal(data.getNetsalesP())).doubleValue());
                celldata3.setCellStyle(styleC25);

                HSSFCell celldata4 = row.createCell(4);
                celldata4.setCellValue("".equalsIgnoreCase(String.valueOf(data.getTaxP())) ? 0
                        : (new BigDecimal(data.getTaxP())).doubleValue());
                celldata4.setCellStyle(styleC25);

                HSSFCell celldata5 = row.createCell(5);
                celldata5.setCellValue("".equalsIgnoreCase(String.valueOf(data.getInsP())) ? 0
                        : (new BigDecimal(data.getInsP())).doubleValue());
                celldata5.setCellStyle(styleC25);

                HSSFCell celldata6 = row.createCell(6);
                celldata6.setCellValue("".equalsIgnoreCase(String.valueOf(data.getCommsP())) ? 0
                        : (new BigDecimal(data.getCommsP())).doubleValue());
                celldata6.setCellStyle(styleC25);

                HSSFCell celldata7 = row.createCell(7);
                celldata7.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmountwendyP())) ? 0
                        : (new BigDecimal(data.getAmountwendyP())).doubleValue());
                celldata7.setCellStyle(styleC25);

                HSSFCell celldata8 = row.createCell(8);
                celldata8.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmountoutboundP())) ? 0
                        : (new BigDecimal(data.getAmountoutboundP())).doubleValue());
                celldata8.setCellStyle(styleC25);

                HSSFCell celldata9 = row.createCell(9);
                celldata9.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmountinboundP())) ? 0
                        : (new BigDecimal(data.getAmountinboundP())).doubleValue());
                celldata9.setCellStyle(styleC25);

                tempcount = count + i + 1;
            }

            //detail
            if ("detail".equalsIgnoreCase(data.getPage())) {
                //Total Pax
                HSSFRow rowtotal = sheetPax.createRow(tempcount);
                String totalPax = "SUM(C" + 10 + ":C" + (tempcount) + ")";
                String totalNet = "SUM(D" + 10 + ":D" + (tempcount) + ")";
                String totalTax = "SUM(E" + 10 + ":E" + (tempcount) + ")";
                String totalIns = "SUM(F" + 10 + ":F" + (tempcount) + ")";
                String totalComms = "SUM(G" + 10 + ":G" + (tempcount) + ")";
                String totalAmountWen = "SUM(H" + 10 + ":H" + (tempcount) + ")";
                String totalAmountOut = "SUM(I" + 10 + ":I" + (tempcount) + ")";
                String totalAmountIn = "SUM(J" + 10 + ":J" + (tempcount) + ")";

                HSSFCellStyle styleTotal = wb.createCellStyle();
                styleTotal.setFont(excelFunction.getHeaderTable(wb.createFont()));
                styleTotal.setBorderLeft(HSSFCellStyle.BORDER_THIN);
                styleTotal.setBorderRight(HSSFCellStyle.BORDER_THIN);
                styleTotal.setBorderTop(HSSFCellStyle.BORDER_THIN);
                styleTotal.setBorderBottom(HSSFCellStyle.BORDER_THIN);
                styleTotal.setAlignment(styleC22.ALIGN_RIGHT);

                HSSFCell cellTotal0 = rowtotal.createCell(0);
                cellTotal0.setCellStyle(styleC29);
                HSSFCell cellTotal00 = rowtotal.createCell(1);
                cellTotal00.setCellValue("Total");
                cellTotal00.setCellStyle(styleTotal);
                HSSFCell cellTotal01 = rowtotal.createCell(2);
                cellTotal01.setCellFormula(totalPax);
                cellTotal01.setCellStyle(styleC26);
                HSSFCell cellTotal02 = rowtotal.createCell(3);
                cellTotal02.setCellFormula(totalNet);
                cellTotal02.setCellStyle(styleC25);
                HSSFCell cellTotal03 = rowtotal.createCell(4);
                cellTotal03.setCellFormula(totalTax);
                cellTotal03.setCellStyle(styleC25);
                HSSFCell cellTotal04 = rowtotal.createCell(5);
                cellTotal04.setCellFormula(totalIns);
                cellTotal04.setCellStyle(styleC25);
                HSSFCell cellTotal05 = rowtotal.createCell(6);
                cellTotal05.setCellFormula(totalComms);
                cellTotal05.setCellStyle(styleC25);
                HSSFCell cellTotal06 = rowtotal.createCell(7);
                cellTotal06.setCellFormula(totalAmountWen);
                cellTotal06.setCellStyle(styleC25);
                HSSFCell cellTotal07 = rowtotal.createCell(8);
                cellTotal07.setCellFormula(totalAmountOut);
                cellTotal07.setCellStyle(styleC25);
                HSSFCell cellTotal08 = rowtotal.createCell(9);
                cellTotal08.setCellFormula(totalAmountIn);
                cellTotal08.setCellStyle(styleC25);

                //                    if(tempcount != 0){
                //                        rowdetail = tempcount+3;
                //                    }

                HSSFRow row8 = sheetDetail.createRow(8);
                HSSFCell cell81 = row8.createCell(0);
                cell81.setCellValue("Invoice No");
                cell81.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(0);
                HSSFCell cell82 = row8.createCell(1);
                cell82.setCellValue("Invoice Date");
                cell82.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(1);
                HSSFCell cell83 = row8.createCell(2);
                cell83.setCellValue("Department");
                //                    sheetDetail.autoSizeColumn(2);
                cell83.setCellStyle(styleC3);
                HSSFCell cell84 = row8.createCell(3);
                cell84.setCellValue("Staff");
                cell84.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(3);
                HSSFCell cell85 = row8.createCell(4);
                cell85.setCellValue("Term Pay");
                cell85.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(4);
                HSSFCell cell86 = row8.createCell(5);
                cell86.setCellValue("Passenger");
                cell86.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(5);
                HSSFCell cell87 = row8.createCell(6);
                cell87.setCellValue("Type Payment");
                cell87.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(6);
                HSSFCell cell88 = row8.createCell(7);
                cell88.setCellValue("Type Routing");
                cell88.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(7);
                HSSFCell cell89 = row8.createCell(8);
                cell89.setCellValue("Routing");
                cell89.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(8);
                HSSFCell cell90 = row8.createCell(9);
                cell90.setCellValue("Pax");
                cell90.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(9);

                HSSFCell cell91 = row8.createCell(10);
                cell91.setCellValue("Air");
                cell91.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(10);
                HSSFCell cell92 = row8.createCell(11);
                cell92.setCellValue("Ticket No");
                cell92.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(11);
                HSSFCell cell93 = row8.createCell(12);
                cell93.setCellValue("Ref No.");
                cell93.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(12);
                HSSFCell cell94 = row8.createCell(13);
                cell94.setCellValue("Issue Date");
                cell94.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(13);
                HSSFCell cell95 = row8.createCell(14);
                cell95.setCellValue("Net Sales");
                cell95.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(14);
                HSSFCell cell96 = row8.createCell(15);
                cell96.setCellValue("Tax");
                cell96.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(15);
                HSSFCell cell97 = row8.createCell(16);
                cell97.setCellValue("Ins.");
                cell97.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(16);
                HSSFCell cell98 = row8.createCell(17);
                cell98.setCellValue("Comms");
                cell98.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(17);
                HSSFCell cell99 = row8.createCell(18);
                cell99.setCellValue("Amount Wendy");
                cell99.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(18);
                HSSFCell cell910 = row8.createCell(19);
                cell910.setCellValue("Amount Outbound");
                cell910.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(19);
                HSSFCell cell911 = row8.createCell(20);
                cell911.setCellValue("Amount Inbound");
                cell911.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(20);
                HSSFCell cell912 = row8.createCell(21);
                cell912.setCellValue("Amt No Invoice");
                cell912.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(21);
                HSSFCell cell913 = row8.createCell(22);
                cell913.setCellValue("Amt Business Trip");
                cell913.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(22);
                HSSFCell cell914 = row8.createCell(23);
                cell914.setCellValue("Amt Annual Leave");
                cell914.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(23);
                HSSFCell cell915 = row8.createCell(24);
                cell915.setCellValue("Amt Refund");
                cell915.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(24);
                HSSFCell cell916 = row8.createCell(25);
                cell916.setCellValue("Remarks");
                cell916.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(25);
                HSSFCell cell917 = row8.createCell(26);
                cell917.setCellValue("Diff");
                cell917.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(26);

                HSSFRow row = sheetDetail.createRow(count + x);
                HSSFCell celldata0 = row.createCell(0);

                celldata0.setCellValue(String.valueOf(data.getInvnoD()));
                celldata0.setCellStyle(styleC29);

                HSSFCell celldata1 = row.createCell(1);
                celldata1.setCellValue(String.valueOf(data.getInvdateD()));
                celldata1.setCellStyle(styleC30);

                HSSFCell celldata2 = row.createCell(2);
                celldata2.setCellValue(String.valueOf(data.getDepartmentD()));
                celldata2.setCellStyle(styleC29);

                HSSFCell celldata3 = row.createCell(3);
                celldata3.setCellValue(String.valueOf(data.getStaffD()));
                celldata3.setCellStyle(styleC29);

                HSSFCell celldata4 = row.createCell(4);
                celldata4.setCellValue(String.valueOf(data.getTermpayD()));
                celldata4.setCellStyle(styleC29);

                HSSFCell celldata5 = row.createCell(5);
                celldata5.setCellValue(String.valueOf(data.getPassengerD()));
                celldata5.setCellStyle(styleC29);

                HSSFCell celldata6 = row.createCell(6);
                celldata6.setCellValue(String.valueOf(data.getTypepaymentD()));
                celldata6.setCellStyle(styleC29);

                HSSFCell celldata7 = row.createCell(7);
                celldata7.setCellValue(String.valueOf(data.getTyperoutingD()));
                celldata7.setCellStyle(styleC29);

                HSSFCell celldata8 = row.createCell(8);
                celldata8.setCellValue(String.valueOf(data.getRoutingD()));
                celldata8.setCellStyle(styleC29);

                HSSFCell celldata9 = row.createCell(9);
                celldata9.setCellValue("".equalsIgnoreCase(String.valueOf(data.getPaxD())) ? 0
                        : (new BigDecimal(data.getPaxD())).doubleValue());
                celldata9.setCellStyle(styleC26);

                HSSFCell celldata10 = row.createCell(10);
                celldata10.setCellValue(String.valueOf(data.getAirD()));
                celldata10.setCellStyle(styleC30);

                HSSFCell celldata11 = row.createCell(11);
                celldata11.setCellValue(String.valueOf(data.getTicketnoD()));
                celldata11.setCellStyle(styleC29);

                HSSFCell celldata12 = row.createCell(12);
                celldata12.setCellValue(String.valueOf(data.getRefnoD()));
                celldata12.setCellStyle(styleC29);

                HSSFCell celldata13 = row.createCell(13);
                celldata13.setCellValue(String.valueOf(data.getIssuedateD()));
                celldata13.setCellStyle(styleC29);

                HSSFCell celldata14 = row.createCell(14);
                celldata14.setCellValue("".equalsIgnoreCase(String.valueOf(data.getNetsalesD())) ? 0
                        : (new BigDecimal(data.getNetsalesD())).doubleValue());
                celldata14.setCellStyle(styleC25);

                HSSFCell celldata15 = row.createCell(15);
                celldata15.setCellValue("".equalsIgnoreCase(String.valueOf(data.getTaxD())) ? 0
                        : (new BigDecimal(data.getTaxD())).doubleValue());
                celldata15.setCellStyle(styleC25);

                HSSFCell celldata16 = row.createCell(16);
                celldata16.setCellValue("".equalsIgnoreCase(String.valueOf(data.getInsD())) ? 0
                        : (new BigDecimal(data.getInsD())).doubleValue());
                celldata16.setCellStyle(styleC25);

                HSSFCell celldata17 = row.createCell(17);
                celldata17.setCellValue("".equalsIgnoreCase(String.valueOf(data.getCommsD())) ? 0
                        : (new BigDecimal(data.getCommsD())).doubleValue());
                celldata17.setCellStyle(styleC25);

                HSSFCell celldata18 = row.createCell(18);
                celldata18.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmountwendyD())) ? 0
                        : (new BigDecimal(data.getAmountwendyD())).doubleValue());
                celldata18.setCellStyle(styleC25);

                HSSFCell celldata19 = row.createCell(19);
                celldata19.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmountoutboundD())) ? 0
                        : (new BigDecimal(data.getAmountoutboundD())).doubleValue());
                celldata19.setCellStyle(styleC25);

                HSSFCell celldata20 = row.createCell(20);
                celldata20.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmountinboundD())) ? 0
                        : (new BigDecimal(data.getAmountinboundD())).doubleValue());
                celldata20.setCellStyle(styleC25);

                HSSFCell celldata21 = row.createCell(21);
                celldata21.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmtnoinvoiceD())) ? 0
                        : (new BigDecimal(data.getAmtnoinvoiceD())).doubleValue());
                celldata21.setCellStyle(styleC25);

                HSSFCell celldata22 = row.createCell(22);
                celldata22.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmtbusinesstripD())) ? 0
                        : (new BigDecimal(data.getAmtbusinesstripD())).doubleValue());
                celldata22.setCellStyle(styleC25);

                HSSFCell celldata23 = row.createCell(23);
                celldata23.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmtannualleaveD())) ? 0
                        : (new BigDecimal(data.getAmtannualleaveD())).doubleValue());
                celldata23.setCellStyle(styleC25);

                HSSFCell celldata24 = row.createCell(24);
                celldata24.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmtrefundD())) ? 0
                        : (new BigDecimal(data.getAmtrefundD())).doubleValue());
                celldata24.setCellStyle(styleC25);

                HSSFCell celldata25 = row.createCell(25);
                celldata25.setCellValue(String.valueOf(data.getRemarksD()));
                celldata25.setCellStyle(styleC29);

                HSSFCell celldata26 = row.createCell(26);
                celldata26.setCellValue("".equalsIgnoreCase(String.valueOf(data.getDiffD())) ? 0
                        : (new BigDecimal(data.getDiffD())).doubleValue());
                celldata26.setCellStyle(styleC25);
                x++;
            }

            if ("routing".equalsIgnoreCase(data.getPage())) {
                tempcount2 = count + x;
                HSSFRow rowtotal = sheetDetail.createRow(tempcount2);
                String totalPax = "SUM(J" + 10 + ":J" + (tempcount2) + ")";
                String totalNet = "SUM(O" + 10 + ":O" + (tempcount2) + ")";
                String totalTax = "SUM(P" + 10 + ":P" + (tempcount2) + ")";
                String totalIns = "SUM(Q" + 10 + ":Q" + (tempcount2) + ")";
                String totalComms = "SUM(R" + 10 + ":R" + (tempcount2) + ")";
                String totalAmountWen = "SUM(S" + 10 + ":S" + (tempcount2) + ")";
                String totalAmountOut = "SUM(T" + 10 + ":T" + (tempcount2) + ")";
                String totalAmountIn = "SUM(U" + 10 + ":U" + (tempcount2) + ")";
                String totalAmountNoInv = "SUM(V" + 10 + ":V" + (tempcount2) + ")";
                String totalAmountBuss = "SUM(W" + 10 + ":W" + (tempcount2) + ")";
                String totalAmountAnn = "SUM(X" + 10 + ":X" + (tempcount2) + ")";
                String totalAmountRef = "SUM(Y" + 10 + ":Y" + (tempcount2) + ")";
                String totalAmountDiff = "SUM(AA" + 10 + ":AA" + (tempcount2) + ")";

                HSSFCellStyle styleTotal = wb.createCellStyle();
                styleTotal.setFont(excelFunction.getHeaderTable(wb.createFont()));
                styleTotal.setBorderLeft(HSSFCellStyle.BORDER_THIN);
                styleTotal.setBorderRight(HSSFCellStyle.BORDER_THIN);
                styleTotal.setBorderTop(HSSFCellStyle.BORDER_THIN);
                styleTotal.setBorderBottom(HSSFCellStyle.BORDER_THIN);
                styleTotal.setAlignment(styleC22.ALIGN_RIGHT);

                HSSFCell cellTotal000 = rowtotal.createCell(0);
                cellTotal000.setCellStyle(stylebordertotalleft);

                HSSFCell cellTotal001 = rowtotal.createCell(1);
                cellTotal001.setCellStyle(stylebordertotal);
                HSSFCell cellTotal002 = rowtotal.createCell(2);
                cellTotal002.setCellStyle(stylebordertotal);
                HSSFCell cellTotal003 = rowtotal.createCell(3);
                cellTotal003.setCellStyle(stylebordertotal);
                HSSFCell cellTotal004 = rowtotal.createCell(4);
                cellTotal004.setCellStyle(stylebordertotal);
                HSSFCell cellTotal005 = rowtotal.createCell(5);
                cellTotal005.setCellStyle(stylebordertotal);
                HSSFCell cellTotal006 = rowtotal.createCell(6);
                cellTotal006.setCellStyle(stylebordertotal);
                HSSFCell cellTotal007 = rowtotal.createCell(7);
                cellTotal007.setCellStyle(stylebordertotal);
                HSSFCell cellTotal008 = rowtotal.createCell(10);
                cellTotal008.setCellStyle(stylebordertotal);
                HSSFCell cellTotal009 = rowtotal.createCell(11);
                cellTotal009.setCellStyle(stylebordertotal);
                HSSFCell cellTotal010 = rowtotal.createCell(12);
                cellTotal010.setCellStyle(stylebordertotal);
                HSSFCell cellTotal011 = rowtotal.createCell(13);
                cellTotal011.setCellStyle(stylebordertotal);
                HSSFCell cellTotal012 = rowtotal.createCell(25);
                cellTotal012.setCellStyle(stylebordertotal);

                HSSFCell cellTotal00 = rowtotal.createCell(8);
                cellTotal00.setCellValue("Total");
                cellTotal00.setCellStyle(styleTotal);
                HSSFCell cellTotal01 = rowtotal.createCell(9);
                cellTotal01.setCellFormula(totalPax);
                cellTotal01.setCellStyle(styleC26);
                HSSFCell cellTotal02 = rowtotal.createCell(14);
                cellTotal02.setCellFormula(totalNet);
                cellTotal02.setCellStyle(styleC25);
                HSSFCell cellTotal03 = rowtotal.createCell(15);
                cellTotal03.setCellFormula(totalTax);
                cellTotal03.setCellStyle(styleC25);
                HSSFCell cellTotal04 = rowtotal.createCell(16);
                cellTotal04.setCellFormula(totalIns);
                cellTotal04.setCellStyle(styleC25);
                HSSFCell cellTotal05 = rowtotal.createCell(17);
                cellTotal05.setCellFormula(totalComms);
                cellTotal05.setCellStyle(styleC25);
                HSSFCell cellTotal06 = rowtotal.createCell(18);
                cellTotal06.setCellFormula(totalAmountWen);
                cellTotal06.setCellStyle(styleC25);
                HSSFCell cellTotal07 = rowtotal.createCell(19);
                cellTotal07.setCellFormula(totalAmountOut);
                cellTotal07.setCellStyle(styleC25);
                HSSFCell cellTotal08 = rowtotal.createCell(20);
                cellTotal08.setCellFormula(totalAmountIn);
                cellTotal08.setCellStyle(styleC25);
                HSSFCell cellTotal09 = rowtotal.createCell(21);
                cellTotal09.setCellFormula(totalAmountNoInv);
                cellTotal09.setCellStyle(styleC25);
                HSSFCell cellTotal10 = rowtotal.createCell(22);
                cellTotal10.setCellFormula(totalAmountBuss);
                cellTotal10.setCellStyle(styleC25);
                HSSFCell cellTotal11 = rowtotal.createCell(23);
                cellTotal11.setCellFormula(totalAmountAnn);
                cellTotal11.setCellStyle(styleC25);
                HSSFCell cellTotal12 = rowtotal.createCell(24);
                cellTotal12.setCellFormula(totalAmountRef);
                cellTotal12.setCellStyle(styleC25);
                HSSFCell cellTotal13 = rowtotal.createCell(26);
                cellTotal13.setCellFormula(totalAmountDiff);
                cellTotal13.setCellStyle(styleC25);
                //                    if(tempcount2 != 0){
                //                        rowrouting = tempcount2+3;
                //                    }

                HSSFRow row8 = sheetRounting.createRow(8);
                HSSFCell cell81 = row8.createCell(0);
                cell81.setCellValue("Routing");
                cell81.setCellStyle(styleC3);
                //                    sheetRounting.autoSizeColumn(0);
                HSSFCell cell82 = row8.createCell(1);
                cell82.setCellValue("Pax");
                cell82.setCellStyle(styleC3);
                //                    sheetRounting.autoSizeColumn(1);
                HSSFCell cell83 = row8.createCell(2);
                cell83.setCellValue("Net Sales");
                //                    sheetRounting.autoSizeColumn(2);
                cell83.setCellStyle(styleC3);
                HSSFCell cell84 = row8.createCell(3);
                cell84.setCellValue("Tax");
                cell84.setCellStyle(styleC3);
                //                    sheetRounting.autoSizeColumn(3);
                HSSFCell cell85 = row8.createCell(4);
                cell85.setCellValue("Ins.");
                cell85.setCellStyle(styleC3);
                //                    sheetRounting.autoSizeColumn(4);
                HSSFCell cell86 = row8.createCell(5);
                cell86.setCellValue("Comms");
                cell86.setCellStyle(styleC3);
                //                    sheetRounting.autoSizeColumn(5);
                HSSFCell cell87 = row8.createCell(6);
                cell87.setCellValue("Amount Wendy");
                cell87.setCellStyle(styleC3);
                //                    sheetRounting.autoSizeColumn(6);
                HSSFCell cell88 = row8.createCell(7);
                cell88.setCellValue("Amount Outbound");
                cell88.setCellStyle(styleC3);
                //                    sheetRounting.autoSizeColumn(7);
                HSSFCell cell89 = row8.createCell(8);
                cell89.setCellValue("Amount Inbound");
                cell89.setCellStyle(styleC3);
                //                    sheetRounting.autoSizeColumn(8);
                HSSFCell cell90 = row8.createCell(9);
                cell90.setCellValue("Diff");
                cell90.setCellStyle(styleC3);
                //                    sheetRounting.autoSizeColumn(9);

                HSSFRow row = sheetRounting.createRow(count + y);

                HSSFCell celldata0 = row.createCell(0);
                celldata0.setCellValue(String.valueOf(data.getRoutingR()));
                celldata0.setCellStyle(styleC29);

                HSSFCell celldata1 = row.createCell(1);
                celldata1.setCellValue("".equalsIgnoreCase(String.valueOf(data.getPaxR())) ? 0
                        : (new BigDecimal(data.getPaxR())).doubleValue());
                celldata1.setCellStyle(styleC26);

                HSSFCell celldata2 = row.createCell(2);
                celldata2.setCellValue("".equalsIgnoreCase(String.valueOf(data.getNetsalesR())) ? 0
                        : (new BigDecimal(data.getNetsalesR())).doubleValue());
                celldata2.setCellStyle(styleC25);

                HSSFCell celldata3 = row.createCell(3);
                celldata3.setCellValue("".equalsIgnoreCase(String.valueOf(data.getTaxR())) ? 0
                        : (new BigDecimal(data.getTaxR())).doubleValue());
                celldata3.setCellStyle(styleC25);

                HSSFCell celldata4 = row.createCell(4);
                celldata4.setCellValue("".equalsIgnoreCase(String.valueOf(data.getInsR())) ? 0
                        : (new BigDecimal(data.getInsR())).doubleValue());
                celldata4.setCellStyle(styleC25);

                HSSFCell celldata5 = row.createCell(5);
                celldata5.setCellValue("".equalsIgnoreCase(String.valueOf(data.getCommsR())) ? 0
                        : (new BigDecimal(data.getCommsR())).doubleValue());
                celldata5.setCellStyle(styleC25);

                HSSFCell celldata6 = row.createCell(6);
                celldata6.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmountwendyR())) ? 0
                        : (new BigDecimal(data.getAmountwendyR())).doubleValue());
                celldata6.setCellStyle(styleC25);

                HSSFCell celldata7 = row.createCell(7);
                celldata7.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmountoutboundR())) ? 0
                        : (new BigDecimal(data.getAmountoutboundR())).doubleValue());
                celldata7.setCellStyle(styleC25);

                HSSFCell celldata8 = row.createCell(8);
                celldata8.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmountinboundR())) ? 0
                        : (new BigDecimal(data.getAmountinboundR())).doubleValue());
                celldata8.setCellStyle(styleC25);

                HSSFCell celldata9 = row.createCell(9);
                celldata9.setCellValue("".equalsIgnoreCase(String.valueOf(data.getDiffR())) ? 0
                        : (new BigDecimal(data.getDiffR())).doubleValue());
                celldata9.setCellStyle(styleC25);
                y++;
            }

            if (i == (ticketSummaryAirline.size() - 1)) {
                tempcount3 = count + y;
                HSSFRow rowtotal = sheetRounting.createRow(tempcount3);
                String totalPax = "SUM(B" + 10 + ":B" + (tempcount3) + ")";
                String totalNet = "SUM(C" + 10 + ":C" + (tempcount3) + ")";
                String totalTax = "SUM(D" + 10 + ":D" + (tempcount3) + ")";
                String totalIns = "SUM(E" + 10 + ":E" + (tempcount3) + ")";
                String totalComms = "SUM(F" + 10 + ":F" + (tempcount3) + ")";
                String totalAmountWen = "SUM(G" + 10 + ":G" + (tempcount3) + ")";
                String totalAmountOut = "SUM(H" + 10 + ":H" + (tempcount3) + ")";
                String totalAmountIn = "SUM(I" + 10 + ":I" + (tempcount3) + ")";
                String totalAmountDiff = "SUM(J" + 10 + ":J" + (tempcount3) + ")";

                HSSFCellStyle styleTotal = wb.createCellStyle();
                styleTotal.setFont(excelFunction.getHeaderTable(wb.createFont()));
                styleTotal.setBorderLeft(HSSFCellStyle.BORDER_THIN);
                styleTotal.setBorderRight(HSSFCellStyle.BORDER_THIN);
                styleTotal.setBorderTop(HSSFCellStyle.BORDER_THIN);
                styleTotal.setBorderBottom(HSSFCellStyle.BORDER_THIN);
                styleTotal.setAlignment(styleC22.ALIGN_RIGHT);

                HSSFCell cellTotal00 = rowtotal.createCell(0);
                cellTotal00.setCellValue("Total");
                cellTotal00.setCellStyle(styleTotal);
                HSSFCell cellTotal01 = rowtotal.createCell(1);
                cellTotal01.setCellFormula(totalPax);
                cellTotal01.setCellStyle(styleC26);
                HSSFCell cellTotal02 = rowtotal.createCell(2);
                cellTotal02.setCellFormula(totalNet);
                cellTotal02.setCellStyle(styleC25);
                HSSFCell cellTotal03 = rowtotal.createCell(3);
                cellTotal03.setCellFormula(totalTax);
                cellTotal03.setCellStyle(styleC25);
                HSSFCell cellTotal04 = rowtotal.createCell(4);
                cellTotal04.setCellFormula(totalIns);
                cellTotal04.setCellStyle(styleC25);
                HSSFCell cellTotal05 = rowtotal.createCell(5);
                cellTotal05.setCellFormula(totalComms);
                cellTotal05.setCellStyle(styleC25);
                HSSFCell cellTotal06 = rowtotal.createCell(6);
                cellTotal06.setCellFormula(totalAmountWen);
                cellTotal06.setCellStyle(styleC25);
                HSSFCell cellTotal07 = rowtotal.createCell(7);
                cellTotal07.setCellFormula(totalAmountOut);
                cellTotal07.setCellStyle(styleC25);
                HSSFCell cellTotal08 = rowtotal.createCell(8);
                cellTotal08.setCellFormula(totalAmountIn);
                cellTotal08.setCellStyle(styleC25);
                HSSFCell cellTotal09 = rowtotal.createCell(9);
                cellTotal09.setCellFormula(totalAmountDiff);
                cellTotal09.setCellStyle(styleC25);
            }
        }

    }
    for (int i = 0; i < 30; i++) {
        sheetPax.autoSizeColumn(i);
        sheetDetail.autoSizeColumn(i);
        sheetRounting.autoSizeColumn(i);
    }

    sheetDetail.setColumnWidth(15, 256 * 12);
    sheetDetail.setColumnWidth(16, 256 * 12);

    sheetPax.setColumnWidth(5, 256 * 12);

    sheetRounting.setColumnWidth(5, 256 * 12);
    sheetRounting.setColumnWidth(9, 256 * 12);
}

From source file:com.smi.travel.controller.excel.checking.airticket.AirlineSummary.java

public void genSummaryAirlinePaxReport(HSSFWorkbook wb, List summaryAirlinePax) {
    String sheetNameInv = "Invoice"; // name of sheet
    String sheetNameDetail = "Detail";
    HSSFSheet sheetInv = wb.createSheet(sheetNameInv);
    HSSFSheet sheetDetail = wb.createSheet(sheetNameDetail);
    UtilityExcelFunction excelFunction = new UtilityExcelFunction();

    SummaryAirlinePaxView dataheader = new SummaryAirlinePaxView();

    HSSFDataFormat currency = wb.createDataFormat();
    // Set align Text
    HSSFCellStyle styleC21 = wb.createCellStyle();
    styleC21.setAlignment(styleC21.ALIGN_RIGHT);
    HSSFCellStyle styleC22 = wb.createCellStyle();
    styleC22.setAlignment(styleC22.ALIGN_LEFT);
    HSSFCellStyle styleC23 = wb.createCellStyle();
    styleC23.setAlignment(styleC22.ALIGN_CENTER);

    HSSFCellStyle styleC25 = wb.createCellStyle();
    styleC25.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC25.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC25.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC25.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC25.setDataFormat(currency.getFormat("#,##0.00"));

    HSSFCellStyle styleC26 = wb.createCellStyle();
    styleC26.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC26.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC26.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC26.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC26.setDataFormat(currency.getFormat("#,##0"));
    styleC26.setAlignment(styleC22.ALIGN_CENTER);

    HSSFCellStyle styleC27 = wb.createCellStyle();
    styleC27.setAlignment(styleC27.ALIGN_RIGHT);
    styleC27.setDataFormat(currency.getFormat("#,##0.00"));

    HSSFCellStyle styleC28 = wb.createCellStyle();
    styleC28.setAlignment(styleC28.ALIGN_CENTER);
    styleC28.setDataFormat(currency.getFormat("#,##0"));

    HSSFCellStyle styleC29 = wb.createCellStyle();
    styleC29.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC29.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC29.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC29.setBorderBottom(HSSFCellStyle.BORDER_THIN);

    HSSFCellStyle styleC30 = wb.createCellStyle();
    styleC30.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC30.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC30.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC30.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC30.setAlignment(styleC22.ALIGN_CENTER);

    if (!summaryAirlinePax.isEmpty()) {
        dataheader = (SummaryAirlinePaxView) summaryAirlinePax.get(0);
        for (int x = 1; x < 4; x++) {
            if (x == 1) {
                // set Header Report (Row 1)
                HSSFCellStyle styleC1 = wb.createCellStyle();
                HSSFRow row1 = sheetInv.createRow(0);
                HSSFCell cell1 = row1.createCell(0);
                cell1.setCellValue("List Summary Airline (Pax)");
                styleC1.setFont(excelFunction.getHeaderFont(wb.createFont()));
                cell1.setCellStyle(styleC1);
                sheetInv.addMergedRegion(CellRangeAddress.valueOf("A1:E1"));

                // Row 2
                HSSFRow row2 = sheetInv.createRow(1);
                HSSFCell cell21 = row2.createCell(0);
                cell21.setCellValue("Invoice Date : ");
                cell21.setCellStyle(styleC21);
                HSSFCell cell22 = row2.createCell(1);
                cell22.setCellValue(dataheader.getHeaderinvdatefrom());
                cell22.setCellStyle(styleC22);
                HSSFCell cell23 = row2.createCell(2);
                if (!"".equalsIgnoreCase(dataheader.getHeaderinvdateto())) {
                    cell23.setCellValue(" to " + dataheader.getHeaderinvdateto());
                    cell23.setCellStyle(styleC22);
                }/*w  ww  . j av a 2s .  com*/
                HSSFCell cell24 = row2.createCell(3);
                cell24.setCellValue("Print By : ");
                cell24.setCellStyle(styleC21);
                HSSFCell cell25 = row2.createCell(4);
                cell25.setCellValue(dataheader.getHeaderprintby());
                cell25.setCellStyle(styleC22);

                // Row 3
                HSSFRow row3 = sheetInv.createRow(2);
                HSSFCell cell31 = row3.createCell(0);
                cell31.setCellValue("Issue Date : ");
                cell31.setCellStyle(styleC21);
                HSSFCell cell32 = row3.createCell(1);
                cell32.setCellValue(dataheader.getHeaderissuedatefrom());
                cell32.setCellStyle(styleC22);
                HSSFCell cell33 = row3.createCell(2);
                if (!"".equalsIgnoreCase(dataheader.getHeaderissuedateto())) {
                    cell33.setCellValue(" to " + dataheader.getHeaderissuedateto());
                    cell33.setCellStyle(styleC22);
                }
                HSSFCell cell34 = row3.createCell(3);
                cell34.setCellValue("Print on : ");
                cell34.setCellStyle(styleC21);
                HSSFCell cell35 = row3.createCell(4);
                cell35.setCellValue(dataheader.getHeaderprinton());
                cell35.setCellStyle(styleC22);

                // Row 4
                HSSFRow row4 = sheetInv.createRow(3);
                HSSFCell cell41 = row4.createCell(0);
                cell41.setCellValue("Type Routing : ");
                cell41.setCellStyle(styleC21);
                HSSFCell cell42 = row4.createCell(1);
                cell42.setCellValue(dataheader.getHeadertyperouting());
                cell42.setCellStyle(styleC22);
                HSSFCell cell43 = row4.createCell(3);
                cell43.setCellValue("Routing Detail : ");
                cell43.setCellStyle(styleC21);
                HSSFCell cell44 = row4.createCell(4);
                cell44.setCellValue(dataheader.getHeaderroutingdetail());
                cell44.setCellStyle(styleC22);

                // Row 5
                HSSFRow row5 = sheetInv.createRow(4);
                HSSFCell cell51 = row5.createCell(0);
                cell51.setCellValue("Airline Code : ");
                cell51.setCellStyle(styleC21);
                HSSFCell cell52 = row5.createCell(1);
                cell52.setCellValue(dataheader.getHeaderair());
                cell52.setCellStyle(styleC22);
                HSSFCell cell53 = row5.createCell(3);
                cell53.setCellValue("Passenger : ");
                cell53.setCellStyle(styleC21);
                HSSFCell cell54 = row5.createCell(4);
                cell54.setCellValue(dataheader.getHeaderpassenger());
                cell54.setCellStyle(styleC22);

                // Row 6
                HSSFRow row6 = sheetInv.createRow(5);
                HSSFCell cell61 = row6.createCell(0);
                cell61.setCellValue("Agent Name : ");
                cell61.setCellStyle(styleC21);
                HSSFCell cell62 = row6.createCell(1);
                cell62.setCellValue(dataheader.getHeaderagentname());
                cell62.setCellStyle(styleC22);
                HSSFCell cell63 = row6.createCell(3);
                cell63.setCellValue("Department : ");
                cell63.setCellStyle(styleC21);
                HSSFCell cell64 = row6.createCell(4);
                cell64.setCellValue(dataheader.getHeaderdepartment());
                cell64.setCellStyle(styleC22);

                // Row 7
                HSSFRow row7 = sheetInv.createRow(6);
                HSSFCell cell71 = row7.createCell(0);
                cell71.setCellValue("Term Pay : ");
                cell71.setCellStyle(styleC21);
                HSSFCell cell72 = row7.createCell(1);
                cell72.setCellValue(dataheader.getHeadertermpay());
                cell72.setCellStyle(styleC22);
                HSSFCell cell73 = row7.createCell(3);
                cell73.setCellValue("Sale Staff : ");
                cell73.setCellStyle(styleC21);
                HSSFCell cell74 = row7.createCell(4);
                cell74.setCellValue(dataheader.getHeadersalestaff());
                cell74.setCellStyle(styleC22);
            }
            if (x == 2) {
                // set Header Report (Row 1)
                HSSFCellStyle styleC1 = wb.createCellStyle();
                HSSFRow row1 = sheetDetail.createRow(0);
                HSSFCell cell1 = row1.createCell(0);
                cell1.setCellValue("List Summary Airline (Pax)");
                styleC1.setFont(excelFunction.getHeaderFont(wb.createFont()));
                cell1.setCellStyle(styleC1);
                sheetDetail.addMergedRegion(CellRangeAddress.valueOf("A1:E1"));

                // Row 2
                HSSFRow row2 = sheetDetail.createRow(1);
                HSSFCell cell21 = row2.createCell(0);
                cell21.setCellValue("Invoice Date : ");
                cell21.setCellStyle(styleC21);
                HSSFCell cell22 = row2.createCell(1);
                cell22.setCellValue(dataheader.getHeaderinvdatefrom());
                cell22.setCellStyle(styleC22);
                HSSFCell cell23 = row2.createCell(2);
                if (!"".equalsIgnoreCase(dataheader.getHeaderinvdateto())) {
                    cell23.setCellValue(" to " + dataheader.getHeaderinvdateto());
                    cell23.setCellStyle(styleC22);
                }
                HSSFCell cell24 = row2.createCell(3);
                cell24.setCellValue("Print By : ");
                cell24.setCellStyle(styleC21);
                HSSFCell cell25 = row2.createCell(4);
                cell25.setCellValue(dataheader.getHeaderprintby());
                cell25.setCellStyle(styleC22);

                // Row 3
                HSSFRow row3 = sheetDetail.createRow(2);
                HSSFCell cell31 = row3.createCell(0);
                cell31.setCellValue("Issue Date : ");
                cell31.setCellStyle(styleC21);
                HSSFCell cell32 = row3.createCell(1);
                cell32.setCellValue(dataheader.getHeaderissuedatefrom());
                cell32.setCellStyle(styleC22);
                HSSFCell cell33 = row3.createCell(2);
                if (!"".equalsIgnoreCase(dataheader.getHeaderissuedateto())) {
                    cell33.setCellValue(" to " + dataheader.getHeaderissuedateto());
                    cell33.setCellStyle(styleC22);
                }
                HSSFCell cell34 = row3.createCell(3);
                cell34.setCellValue("Print on : ");
                cell34.setCellStyle(styleC21);
                HSSFCell cell35 = row3.createCell(4);
                cell35.setCellValue(dataheader.getHeaderprinton());
                cell35.setCellStyle(styleC22);

                // Row 4
                HSSFRow row4 = sheetDetail.createRow(3);
                HSSFCell cell41 = row4.createCell(0);
                cell41.setCellValue("Type Routing : ");
                cell41.setCellStyle(styleC21);
                HSSFCell cell42 = row4.createCell(1);
                cell42.setCellValue(dataheader.getHeadertyperouting());
                cell42.setCellStyle(styleC22);
                HSSFCell cell43 = row4.createCell(3);
                cell43.setCellValue("Routing Detail : ");
                cell43.setCellStyle(styleC21);
                HSSFCell cell44 = row4.createCell(4);
                cell44.setCellValue(dataheader.getHeaderroutingdetail());
                cell44.setCellStyle(styleC22);

                // Row 5
                HSSFRow row5 = sheetDetail.createRow(4);
                HSSFCell cell51 = row5.createCell(0);
                cell51.setCellValue("Airline Code : ");
                cell51.setCellStyle(styleC21);
                HSSFCell cell52 = row5.createCell(1);
                cell52.setCellValue(dataheader.getHeaderair());
                cell52.setCellStyle(styleC22);
                HSSFCell cell53 = row5.createCell(3);
                cell53.setCellValue("Passenger : ");
                cell53.setCellStyle(styleC21);
                HSSFCell cell54 = row5.createCell(4);
                cell54.setCellValue(dataheader.getHeaderpassenger());
                cell54.setCellStyle(styleC22);

                // Row 6
                HSSFRow row6 = sheetDetail.createRow(5);
                HSSFCell cell61 = row6.createCell(0);
                cell61.setCellValue("Agent Name : ");
                cell61.setCellStyle(styleC21);
                HSSFCell cell62 = row6.createCell(1);
                cell62.setCellValue(dataheader.getHeaderagentname());
                cell62.setCellStyle(styleC22);
                HSSFCell cell63 = row6.createCell(3);
                cell63.setCellValue("Department : ");
                cell63.setCellStyle(styleC21);
                HSSFCell cell64 = row6.createCell(4);
                cell64.setCellValue(dataheader.getHeaderdepartment());
                cell64.setCellStyle(styleC22);

                // Row 7
                HSSFRow row7 = sheetDetail.createRow(6);
                HSSFCell cell71 = row7.createCell(0);
                cell71.setCellValue("Term Pay : ");
                cell71.setCellStyle(styleC21);
                HSSFCell cell72 = row7.createCell(1);
                cell72.setCellValue(dataheader.getHeadertermpay());
                cell72.setCellStyle(styleC22);
                HSSFCell cell73 = row7.createCell(3);
                cell73.setCellValue("Sale Staff : ");
                cell73.setCellStyle(styleC21);
                HSSFCell cell74 = row7.createCell(4);
                cell74.setCellValue(dataheader.getHeadersalestaff());
                cell74.setCellStyle(styleC22);
            }
        }
        // Header Table
        HSSFCellStyle styleC3 = wb.createCellStyle();
        styleC3.setFont(excelFunction.getHeaderTable(wb.createFont()));
        styleC3.setAlignment(styleC3.ALIGN_CENTER);
        styleC3.setBorderBottom(HSSFCellStyle.BORDER_THIN);
        styleC3.setBorderLeft(HSSFCellStyle.BORDER_THIN);
        styleC3.setBorderRight(HSSFCellStyle.BORDER_THIN);
        styleC3.setBorderTop(HSSFCellStyle.BORDER_THIN);

        int count = 9;
        int tempcount = 0;
        int tempcount2 = 0;
        int rowdetail = 0;
        int rowrouting = 0;
        int x = 0;
        int y = 0;
        for (int i = 0; i < summaryAirlinePax.size(); i++) {
            SummaryAirlinePaxView data = (SummaryAirlinePaxView) summaryAirlinePax.get(i);

            if ("inv".equalsIgnoreCase(data.getPage())) {
                //inv
                HSSFRow row8 = sheetInv.createRow(8);
                HSSFCell cell81 = row8.createCell(0);
                cell81.setCellValue("INV No.");
                cell81.setCellStyle(styleC3);
                //                    sheetInv.autoSizeColumn(0);
                HSSFCell cell82 = row8.createCell(1);
                cell82.setCellValue("Amount Wendy");
                cell82.setCellStyle(styleC3);
                //                    sheetInv.autoSizeColumn(1);
                HSSFCell cell83 = row8.createCell(2);
                cell83.setCellValue("Amount Outbound");
                //                    sheetInv.autoSizeColumn(2);
                cell83.setCellStyle(styleC3);
                HSSFCell cell84 = row8.createCell(3);
                cell84.setCellValue("Amount Inbound");
                //                    sheetInv.autoSizeColumn(3);
                cell84.setCellStyle(styleC3);

                HSSFRow row = sheetInv.createRow(count + i);
                HSSFCell celldata0 = row.createCell(0);
                celldata0.setCellValue(String.valueOf(data.getInvnoPax()));
                celldata0.setCellStyle(styleC26);

                HSSFCell celldata1 = row.createCell(1);
                celldata1.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmountwendy())) ? 0
                        : (new BigDecimal(data.getAmountwendy())).doubleValue());
                celldata1.setCellStyle(styleC25);

                HSSFCell celldata2 = row.createCell(2);
                celldata2.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmountoutbound())) ? 0
                        : (new BigDecimal(data.getAmountoutbound())).doubleValue());
                celldata2.setCellStyle(styleC25);

                HSSFCell celldata3 = row.createCell(3);
                celldata3.setCellValue("".equalsIgnoreCase(String.valueOf(data.getAmountinbound())) ? 0
                        : (new BigDecimal(data.getAmountinbound())).doubleValue());
                celldata3.setCellStyle(styleC25);

                tempcount = count + i + 1;
            }
            //detail
            if ("detail".equalsIgnoreCase(data.getPage())) {
                //Total inv
                HSSFRow rowtotal = sheetInv.createRow(tempcount);
                String totalwendy = "SUM(B" + 10 + ":B" + (tempcount) + ")";
                String totaloutbound = "SUM(C" + 10 + ":C" + (tempcount) + ")";
                String totalinbound = "SUM(D" + 10 + ":D" + (tempcount) + ")";

                HSSFCellStyle styleTotal = wb.createCellStyle();
                styleTotal.setFont(excelFunction.getHeaderTable(wb.createFont()));
                styleTotal.setBorderLeft(HSSFCellStyle.BORDER_THIN);
                styleTotal.setBorderRight(HSSFCellStyle.BORDER_THIN);
                styleTotal.setBorderTop(HSSFCellStyle.BORDER_THIN);
                styleTotal.setBorderBottom(HSSFCellStyle.BORDER_THIN);
                styleTotal.setAlignment(styleC22.ALIGN_RIGHT);

                HSSFCell cellTotal00 = rowtotal.createCell(0);
                cellTotal00.setCellValue("Total");
                cellTotal00.setCellStyle(styleTotal);
                HSSFCell cellTotal01 = rowtotal.createCell(1);
                cellTotal01.setCellFormula(totalwendy);
                cellTotal01.setCellStyle(styleC25);
                HSSFCell cellTotal02 = rowtotal.createCell(2);
                cellTotal02.setCellFormula(totaloutbound);
                cellTotal02.setCellStyle(styleC25);
                HSSFCell cellTotal03 = rowtotal.createCell(3);
                cellTotal03.setCellFormula(totalinbound);
                cellTotal03.setCellStyle(styleC25);

                //                    if(tempcount != 0){
                //                        rowdetail = tempcount+3;
                //                    }
                HSSFRow row8 = sheetDetail.createRow(8);
                HSSFCell cell81 = row8.createCell(0);
                cell81.setCellValue("Payment Type");
                cell81.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(0);
                HSSFCell cell82 = row8.createCell(1);
                cell82.setCellValue("Type Routing");
                cell82.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(1);
                HSSFCell cell83 = row8.createCell(2);
                cell83.setCellValue("Pax");
                //                    sheetDetail.autoSizeColumn(2);
                cell83.setCellStyle(styleC3);
                HSSFCell cell84 = row8.createCell(3);
                cell84.setCellValue("Air");
                cell84.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(3);
                HSSFCell cell85 = row8.createCell(4);
                cell85.setCellValue("Net Sales");
                cell85.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(4);
                HSSFCell cell86 = row8.createCell(5);
                cell86.setCellValue("Tax");
                cell86.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(5);
                HSSFCell cell87 = row8.createCell(6);
                cell87.setCellValue("Ins.");
                cell87.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(6);
                HSSFCell cell88 = row8.createCell(7);
                cell88.setCellValue("Comm");
                cell88.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(7);
                HSSFCell cell89 = row8.createCell(8);
                cell89.setCellValue("Inv. Amt");
                cell89.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(8);
                HSSFCell cell90 = row8.createCell(9);
                cell90.setCellValue("Cost");
                cell90.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(9);
                HSSFCell cell91 = row8.createCell(10);
                cell91.setCellValue("PF[LOSS]");
                cell91.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(10);
                HSSFCell cell92 = row8.createCell(11);
                cell92.setCellValue("No.Inv Amt");
                cell92.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(11);
                HSSFCell cell93 = row8.createCell(12);
                cell93.setCellValue("INV No.");
                cell93.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(12);
                HSSFCell cell94 = row8.createCell(13);
                cell94.setCellValue("Diff Vat");
                cell94.setCellStyle(styleC3);
                //                    sheetDetail.autoSizeColumn(13);

                HSSFRow row = sheetDetail.createRow(count + x);
                HSSFCell celldata0 = row.createCell(0);

                celldata0.setCellValue(String.valueOf(data.getTypepayment()));
                celldata0.setCellStyle(styleC29);

                HSSFCell celldata1 = row.createCell(1);
                celldata1.setCellValue(String.valueOf(data.getTyperounting()));
                celldata1.setCellStyle(styleC29);

                HSSFCell celldata2 = row.createCell(2);
                celldata2.setCellValue("".equalsIgnoreCase(String.valueOf(data.getPax())) ? 0
                        : (new BigDecimal(data.getPax())).doubleValue());
                celldata2.setCellStyle(styleC26);

                HSSFCell celldata3 = row.createCell(3);
                celldata3.setCellValue(String.valueOf(data.getAir()));
                celldata3.setCellStyle(styleC26);

                HSSFCell celldata4 = row.createCell(4);
                celldata4.setCellValue("".equalsIgnoreCase(String.valueOf(data.getNetsales())) ? 0
                        : (new BigDecimal(data.getNetsales())).doubleValue());
                celldata4.setCellStyle(styleC25);

                HSSFCell celldata5 = row.createCell(5);
                celldata5.setCellValue("".equalsIgnoreCase(String.valueOf(data.getTax())) ? 0
                        : (new BigDecimal(data.getTax())).doubleValue());
                celldata5.setCellStyle(styleC25);

                HSSFCell celldata6 = row.createCell(6);
                celldata6.setCellValue("".equalsIgnoreCase(String.valueOf(data.getIns())) ? 0
                        : (new BigDecimal(data.getIns())).doubleValue());
                celldata6.setCellStyle(styleC25);

                HSSFCell celldata7 = row.createCell(7);
                celldata7.setCellValue("".equalsIgnoreCase(String.valueOf(data.getComms())) ? 0
                        : (new BigDecimal(data.getComms())).doubleValue());
                celldata7.setCellStyle(styleC25);

                HSSFCell celldata8 = row.createCell(8);
                celldata8.setCellValue("".equalsIgnoreCase(String.valueOf(data.getInvamount())) ? 0
                        : (new BigDecimal(data.getInvamount())).doubleValue());
                celldata8.setCellStyle(styleC25);

                HSSFCell celldata9 = row.createCell(9);
                celldata9.setCellValue("".equalsIgnoreCase(String.valueOf(data.getCost())) ? 0
                        : (new BigDecimal(data.getCost())).doubleValue());
                celldata9.setCellStyle(styleC25);

                HSSFCell celldata10 = row.createCell(10);
                celldata10.setCellValue("".equalsIgnoreCase(String.valueOf(data.getPfloss())) ? 0
                        : (new BigDecimal(data.getPfloss())).doubleValue());
                celldata10.setCellStyle(styleC25);

                HSSFCell celldata11 = row.createCell(11); // No inv amount
                celldata11.setCellValue("".equalsIgnoreCase(String.valueOf(data.getNoinvamount())) ? 0
                        : (new BigDecimal(data.getNoinvamount())).doubleValue());
                celldata11.setCellStyle(styleC25);

                HSSFCell celldata12 = row.createCell(12);
                celldata12.setCellValue(String.valueOf(data.getInvno()));
                celldata12.setCellStyle(styleC29);

                HSSFCell celldata13 = row.createCell(13);
                celldata13.setCellValue("".equalsIgnoreCase(String.valueOf(data.getDiff())) ? 0
                        : (new BigDecimal(data.getDiff())).doubleValue());
                celldata13.setCellStyle(styleC25);
                //                    tempcount2 = count + i + 4;
                // set total last row
                if (i == (summaryAirlinePax.size() - 1)) {
                    HSSFRow rows = sheetDetail.createRow(count + x + 1);

                    String totalPax = "SUM(C" + 10 + ":C" + (count + x + 1) + ")";
                    String totalNet = "SUM(E" + 10 + ":E" + (count + x + 1) + ")";
                    String totalTax = "SUM(F" + 10 + ":F" + (count + x + 1) + ")";
                    String totalIns = "SUM(G" + 10 + ":G" + (count + x + 1) + ")";
                    String totalComm = "SUM(H" + 10 + ":H" + (count + x + 1) + ")";
                    String totalInvamt = "SUM(I" + 10 + ":I" + (count + x + 1) + ")";
                    String totalCost = "SUM(J" + 10 + ":J" + (count + x + 1) + ")";
                    String totalPfloss = "SUM(K" + 10 + ":K" + (count + x + 1) + ")";
                    String totalNoInvamt = "SUM(L" + 10 + ":L" + (count + x + 1) + ")";
                    String totalDiff = "SUM(N" + 10 + ":N" + (count + x + 1) + ")";

                    HSSFCell celldatas0 = rows.createCell(0);
                    celldatas0.setCellStyle(styleC29);
                    HSSFCell celldatas01 = rows.createCell(1);
                    celldatas01.setCellStyle(styleC29);
                    HSSFCell celldatas02 = rows.createCell(2);
                    celldatas02.setCellFormula(totalPax);
                    celldatas02.setCellStyle(styleC26);

                    HSSFCell celldatas03 = rows.createCell(4);
                    celldatas03.setCellFormula(totalNet);
                    celldatas03.setCellStyle(styleC25);
                    HSSFCell celldatas04 = rows.createCell(5);
                    celldatas04.setCellFormula(totalTax);
                    celldatas04.setCellStyle(styleC25);
                    HSSFCell celldatas05 = rows.createCell(6);
                    celldatas05.setCellFormula(totalIns);
                    celldatas05.setCellStyle(styleC25);
                    HSSFCell celldatas06 = rows.createCell(7);
                    celldatas06.setCellFormula(totalComm);
                    celldatas06.setCellStyle(styleC25);
                    HSSFCell celldatas07 = rows.createCell(8);
                    celldatas07.setCellFormula(totalInvamt);
                    celldatas07.setCellStyle(styleC25);
                    HSSFCell celldatas08 = rows.createCell(9);
                    celldatas08.setCellFormula(totalCost);
                    celldatas08.setCellStyle(styleC25);
                    HSSFCell celldatas09 = rows.createCell(10);
                    celldatas09.setCellFormula(totalPfloss);
                    celldatas09.setCellStyle(styleC25);
                    HSSFCell celldatas10 = rows.createCell(11);
                    celldatas10.setCellFormula(totalNoInvamt);
                    celldatas10.setCellStyle(styleC25);
                    HSSFCell celldatas11 = rows.createCell(13);
                    celldatas11.setCellFormula(totalDiff);
                    celldatas11.setCellStyle(styleC25);

                    HSSFCell celldatas12 = rows.createCell(3);
                    celldatas12.setCellStyle(styleC29);
                    HSSFCell celldatas13 = rows.createCell(12);
                    celldatas13.setCellStyle(styleC29);
                }
                x++;
            }

        }
        for (int j = 0; j < 30; j++) {
            sheetInv.autoSizeColumn(j);
            sheetDetail.autoSizeColumn(j);
        }

        sheetDetail.setColumnWidth(5, 256 * 12);
        sheetDetail.setColumnWidth(6, 256 * 12);
        sheetDetail.setColumnWidth(7, 256 * 12);
        sheetDetail.setColumnWidth(8, 256 * 12);
        sheetDetail.setColumnWidth(9, 256 * 12);
        sheetDetail.setColumnWidth(10, 256 * 12);
        sheetDetail.setColumnWidth(13, 256 * 12);
    }
}

From source file:com.smi.travel.controller.excel.checking.airticket.CheckingAirOthersummary.java

private void getTicketSummaryCommission(HSSFWorkbook wb, List listTicketummaryCommission) {
    String sheetName = "Ticket_commission_detail_summary";// name of sheet
    String sheetName1 = "Ticket_commission_air_summary";
    String sheetName2 = "Ticket_commission_agent_summary";
    HSSFSheet sheet = wb.createSheet(sheetName);
    HSSFSheet sheet1 = wb.createSheet(sheetName1);
    HSSFSheet sheet2 = wb.createSheet(sheetName2);

    UtilityExcelFunction excelFunction = new UtilityExcelFunction();
    // Set align Text
    HSSFCellStyle styleAlignRight = wb.createCellStyle();
    styleAlignRight.setAlignment(styleAlignRight.ALIGN_RIGHT);
    HSSFCellStyle styleAlignLeft = wb.createCellStyle();
    styleAlignLeft.setAlignment(styleAlignLeft.ALIGN_LEFT);

    HSSFDataFormat currency = wb.createDataFormat();
    HSSFCellStyle styleNumber = wb.createCellStyle();
    styleNumber.setAlignment(styleNumber.ALIGN_RIGHT);
    styleNumber.setDataFormat(currency.getFormat("#,##0.00"));

    HSSFCellStyle styleNumberBorderRight = wb.createCellStyle();
    styleNumberBorderRight.setAlignment(styleNumberBorderRight.ALIGN_RIGHT);
    styleNumberBorderRight.setDataFormat(currency.getFormat("#,##0.00"));
    styleNumberBorderRight.setBorderRight(styleNumberBorderRight.BORDER_THIN);

    HSSFCellStyle styleBorderTop = wb.createCellStyle();
    styleBorderTop.setBorderTop(styleBorderTop.BORDER_THIN);

    HSSFCellStyle styleAlignRightBorderAllHeaderTable = wb.createCellStyle();
    styleAlignRightBorderAllHeaderTable.setFont(excelFunction.getHeaderTable(wb.createFont()));
    styleAlignRightBorderAllHeaderTable.setAlignment(styleAlignRightBorderAllHeaderTable.ALIGN_CENTER);
    styleAlignRightBorderAllHeaderTable.setBorderTop(styleAlignRightBorderAllHeaderTable.BORDER_THIN);
    styleAlignRightBorderAllHeaderTable.setBorderBottom(styleAlignRightBorderAllHeaderTable.BORDER_THIN);
    styleAlignRightBorderAllHeaderTable.setBorderRight(styleAlignRightBorderAllHeaderTable.BORDER_THIN);
    styleAlignRightBorderAllHeaderTable.setBorderLeft(styleAlignRightBorderAllHeaderTable.BORDER_THIN);
    // Header Table
    HSSFCellStyle styleDetailTable = wb.createCellStyle();
    styleDetailTable.setAlignment(styleDetailTable.ALIGN_LEFT);
    styleDetailTable.setBorderLeft(styleDetailTable.BORDER_THIN);
    styleDetailTable.setBorderRight(styleDetailTable.BORDER_THIN);

    HSSFCellStyle styleDetailTableNumber = wb.createCellStyle();
    styleDetailTableNumber.setDataFormat(currency.getFormat("#,##0.00"));
    styleDetailTableNumber.setAlignment(styleDetailTableNumber.ALIGN_RIGHT);
    styleDetailTableNumber.setBorderLeft(styleDetailTableNumber.BORDER_THIN);
    styleDetailTableNumber.setBorderRight(styleDetailTableNumber.BORDER_THIN);

    HSSFCellStyle styleTotalTableNumber = wb.createCellStyle();
    styleTotalTableNumber.setDataFormat(currency.getFormat("#,##0.00"));
    styleTotalTableNumber.setAlignment(styleTotalTableNumber.ALIGN_RIGHT);
    styleTotalTableNumber.setBorderTop(styleTotalTableNumber.BORDER_THIN);
    styleTotalTableNumber.setBorderBottom(styleTotalTableNumber.BORDER_THIN);
    styleTotalTableNumber.setBorderRight(styleTotalTableNumber.BORDER_THIN);
    styleTotalTableNumber.setBorderLeft(styleTotalTableNumber.BORDER_THIN);

    HSSFCellStyle stylePaxNumber = wb.createCellStyle();
    stylePaxNumber.setDataFormat(currency.getFormat("#,##0"));
    stylePaxNumber.setAlignment(stylePaxNumber.ALIGN_CENTER);
    stylePaxNumber.setBorderRight(stylePaxNumber.BORDER_THIN);
    stylePaxNumber.setBorderLeft(stylePaxNumber.BORDER_THIN);

    HSSFCellStyle stylePaxNumberTotal = wb.createCellStyle();
    stylePaxNumberTotal.setDataFormat(currency.getFormat("#,##0"));
    stylePaxNumberTotal.setAlignment(stylePaxNumberTotal.ALIGN_CENTER);
    stylePaxNumberTotal.setBorderTop(stylePaxNumberTotal.BORDER_THIN);
    stylePaxNumberTotal.setBorderBottom(stylePaxNumberTotal.BORDER_THIN);
    stylePaxNumberTotal.setBorderRight(stylePaxNumberTotal.BORDER_THIN);
    stylePaxNumberTotal.setBorderLeft(stylePaxNumberTotal.BORDER_THIN);

    // set Header Report (Row 1)
    HSSFCellStyle styleHeader01 = wb.createCellStyle();
    HSSFRow row01 = sheet.createRow(0);/*from www .  j a  va 2 s.  co  m*/
    HSSFCell cell01 = row01.createCell(0);
    cell01.setCellValue("List summary commission");
    styleHeader01.setFont(excelFunction.getHeaderFont(wb.createFont()));
    cell01.setCellStyle(styleHeader01);
    sheet.addMergedRegion(CellRangeAddress.valueOf("A1:M1"));

    List<ListTicketSummaryCommission> listSummaryCommission = listTicketummaryCommission;

    List<TicketSummaryCommissionView> listDetail = listSummaryCommission.get(0)
            .getTicketCommissionDetailSummary();
    List<TicketSummaryCommissionView> listAir = listSummaryCommission.get(0).getTicketCommissionAirSummary();
    List<TicketSummaryCommissionView> listAgent = listSummaryCommission.get(0)
            .getTicketCommissionAgentSummary();
    TicketSummaryCommissionView ticketDetail = (listDetail.size() > 0 ? listDetail.get(0)
            : new TicketSummaryCommissionView());
    TicketSummaryCommissionView ticketAir = (listAir.size() > 0 ? listAir.get(0)
            : new TicketSummaryCommissionView());
    TicketSummaryCommissionView ticketAgent = (listAgent.size() > 0 ? listAgent.get(0)
            : new TicketSummaryCommissionView());
    // Row 2
    HSSFRow row02 = sheet.createRow(1);
    HSSFCell cell021 = row02.createCell(0);
    cell021.setCellValue("Agent Name : ");
    cell021.setCellStyle(styleAlignRight);
    sheet.autoSizeColumn(0);
    HSSFCell cell022 = row02.createCell(1);
    cell022.setCellValue(ticketDetail.getAgentNamePage() != null && !"".equals(ticketDetail.getAgentNamePage())
            ? ticketDetail.getAgentNamePage()
            : "ALL");
    cell022.setCellStyle(styleAlignLeft);
    sheet.autoSizeColumn(1);
    HSSFCell cell023 = row02.createCell(2);
    cell023.setCellValue("Issue date : ");
    cell023.setCellStyle(styleAlignRight);
    sheet.autoSizeColumn(2);
    HSSFCell cell024 = row02.createCell(3);
    cell024.setCellValue(
            ticketDetail.getIssuefromdatePage() != null && !"".equals(ticketDetail.getIssuefromdatePage())
                    ? ticketDetail.getIssuefromdatePage()
                    : "ALL");
    cell024.setCellStyle(styleAlignLeft);
    sheet.autoSizeColumn(3);
    HSSFCell cell025 = row02.createCell(4);
    cell025.setCellValue("Print By : ");
    cell025.setCellStyle(styleAlignRight);
    sheet.autoSizeColumn(4);
    HSSFCell cell026 = row02.createCell(5);
    cell026.setCellValue(ticketDetail.getPrintbyPage() != null && !"".equals(ticketDetail.getPrintbyPage())
            ? ticketDetail.getPrintbyPage()
            : "ALL");
    cell026.setCellStyle(styleAlignLeft);
    sheet.autoSizeColumn(5);

    // Row 3
    HSSFRow row03 = sheet.createRow(2);
    HSSFCell cell031 = row03.createCell(0);
    cell031.setCellValue("Type Routing : ");
    cell031.setCellStyle(styleAlignRight);
    sheet.autoSizeColumn(0);
    HSSFCell cell032 = row03.createCell(1);
    cell032.setCellValue(
            ticketDetail.getTypeRoutingPage() != null && !"".equals(ticketDetail.getTypeRoutingPage())
                    ? ticketDetail.getTypeRoutingPage()
                    : "ALL");
    cell032.setCellStyle(styleAlignLeft);
    sheet.autoSizeColumn(1);
    HSSFCell cell033 = row03.createCell(2);
    cell033.setCellValue("Over Comm Date : ");
    cell033.setCellStyle(styleAlignRight);
    sheet.autoSizeColumn(2);
    HSSFCell cell034 = row03.createCell(3);
    cell034.setCellValue(
            ticketDetail.getOverfromdatePage() != null && !"".equals(ticketDetail.getOverfromdatePage())
                    ? ticketDetail.getOverfromdatePage()
                    : "ALL");
    cell034.setCellStyle(styleAlignLeft);
    sheet.autoSizeColumn(3);
    HSSFCell cell035 = row03.createCell(4);
    cell035.setCellValue("Add Pay Date : ");
    cell035.setCellStyle(styleAlignRight);
    sheet.autoSizeColumn(4);
    HSSFCell cell036 = row03.createCell(5);
    cell036.setCellValue(
            ticketDetail.getAddpayfromdatePage() != null && !"".equals(ticketDetail.getAddpayfromdatePage())
                    ? ticketDetail.getAddpayfromdatePage()
                    : "ALL");
    cell036.setCellStyle(styleAlignLeft);
    sheet.autoSizeColumn(5);

    // Row 4
    HSSFRow row04 = sheet.createRow(3);
    HSSFCell cell041 = row04.createCell(0);
    cell041.setCellValue("Air : ");
    cell041.setCellStyle(styleAlignRight);
    sheet.autoSizeColumn(0);
    HSSFCell cell042 = row04.createCell(1);
    cell042.setCellValue(
            ticketDetail.getAirlineCodePage() != null && !"".equals(ticketDetail.getAirlineCodePage())
                    ? ticketDetail.getAirlineCodePage()
                    : "ALL");
    cell042.setCellStyle(styleAlignLeft);
    sheet.autoSizeColumn(1);
    HSSFCell cell043 = row04.createCell(2);
    cell043.setCellValue("Little Comm date : ");
    cell043.setCellStyle(styleAlignRight);
    sheet.autoSizeColumn(2);
    HSSFCell cell044 = row04.createCell(3);
    cell044.setCellValue(
            ticketDetail.getLittlefromdatePage() != null && !"".equals(ticketDetail.getLittlefromdatePage())
                    ? ticketDetail.getLittlefromdatePage()
                    : "ALL");
    cell044.setCellStyle(styleAlignLeft);
    sheet.autoSizeColumn(3);
    HSSFCell cell045 = row04.createCell(4);
    cell045.setCellValue("Decrease Pay Date : ");
    cell045.setCellStyle(styleAlignRight);
    sheet.autoSizeColumn(4);
    HSSFCell cell046 = row04.createCell(5);
    cell046.setCellValue(ticketDetail.getDecreasepayfromdatePage() != null
            && !"".equals(ticketDetail.getDecreasepayfromdatePage()) ? ticketDetail.getDecreasepayfromdatePage()
                    : "ALL");
    cell046.setCellStyle(styleAlignLeft);
    sheet.autoSizeColumn(5);

    // Row 5
    HSSFRow row05 = sheet.createRow(4);
    HSSFCell cell051 = row05.createCell(0);
    cell051.setCellValue("Routing Detail : ");
    cell051.setCellStyle(styleAlignRight);
    sheet.autoSizeColumn(0);
    HSSFCell cell052 = row05.createCell(1);
    cell052.setCellValue(
            ticketDetail.getRoutingDetailPage() != null && !"".equals(ticketDetail.getRoutingDetailPage())
                    ? ticketDetail.getRoutingDetailPage()
                    : "ALL");
    cell052.setCellStyle(styleAlignLeft);
    sheet.autoSizeColumn(1);
    HSSFCell cell053 = row05.createCell(2);
    cell053.setCellValue("Agent Comm Rev Date : ");
    cell053.setCellStyle(styleAlignRight);
    sheet.autoSizeColumn(2);
    HSSFCell cell054 = row05.createCell(3);
    cell054.setCellValue(ticketDetail.getAgemtcomreceivefromdatePage() != null
            && !"".equals(ticketDetail.getAgemtcomreceivefromdatePage())
                    ? ticketDetail.getAgemtcomreceivefromdatePage()
                    : "ALL");
    cell054.setCellStyle(styleAlignLeft);
    sheet.autoSizeColumn(3);
    HSSFCell cell055 = row05.createCell(4);
    cell055.setCellValue("Ticket No : ");
    cell055.setCellStyle(styleAlignRight);
    sheet.autoSizeColumn(4);
    HSSFCell cell056 = row05.createCell(5);
    cell056.setCellValue(
            ticketDetail.getTicketnoPagePage() != null && !"".equals(ticketDetail.getTicketnoPagePage())
                    ? ticketDetail.getTicketnoPagePage()
                    : "ALL");
    cell056.setCellStyle(styleAlignLeft);
    sheet.autoSizeColumn(5);

    // Row 6
    HSSFRow row06 = sheet.createRow(5);
    HSSFCell cell061 = row06.createCell(0);
    cell061.setCellValue("Sale Staff : ");
    cell061.setCellStyle(styleAlignRight);
    HSSFCell cell062 = row06.createCell(1);
    cell062.setCellValue(
            ticketDetail.getSalebyNamePage() != null && !"".equals(ticketDetail.getSalebyNamePage())
                    ? ticketDetail.getSalebyNamePage()
                    : "ALL");
    cell062.setCellStyle(styleAlignLeft);
    HSSFCell cell063 = row06.createCell(2);
    cell063.setCellValue("Refund Comm Date : ");
    cell063.setCellStyle(styleAlignRight);
    HSSFCell cell064 = row06.createCell(3);
    cell064.setCellValue(ticketDetail.getComrefundfromdatePage() != null
            && !"".equals(ticketDetail.getComrefundfromdatePage()) ? ticketDetail.getComrefundfromdatePage()
                    : "ALL");
    cell064.setCellStyle(styleAlignLeft);
    HSSFCell cell065 = row06.createCell(4);
    cell065.setCellValue("Ticket Comm Date : ");
    cell065.setCellStyle(styleAlignRight);
    HSSFCell cell066 = row06.createCell(5);
    cell066.setCellValue(ticketDetail.getTicketcomfromdatePage() != null
            && !"".equals(ticketDetail.getTicketcomfromdatePage()) ? ticketDetail.getTicketcomfromdatePage()
                    : "ALL");
    cell066.setCellStyle(styleAlignLeft);

    // Row 7
    HSSFRow row07 = sheet.createRow(6);
    HSSFCell cell071 = row07.createCell(0);
    cell071.setCellValue("Department : ");
    cell071.setCellStyle(styleAlignRight);
    HSSFCell cell072 = row07.createCell(1);
    cell072.setCellValue(
            ticketDetail.getDepartmentPage() != null && !"".equals(ticketDetail.getDepartmentPage())
                    ? ticketDetail.getDepartmentPage()
                    : "ALL");
    cell072.setCellStyle(styleAlignLeft);
    HSSFCell cell073 = row07.createCell(2);
    cell073.setCellValue("Invoice Date : ");
    cell073.setCellStyle(styleAlignRight);
    HSSFCell cell074 = row07.createCell(3);
    cell074.setCellValue(
            ticketDetail.getInvoicefromdatePage() != null && !"".equals(ticketDetail.getInvoicefromdatePage())
                    ? ticketDetail.getInvoicefromdatePage()
                    : "ALL");
    cell074.setCellStyle(styleAlignLeft);
    HSSFCell cell075 = row07.createCell(4);
    cell075.setCellValue("Print on : ");
    cell075.setCellStyle(styleAlignRight);
    HSSFCell cell076 = row07.createCell(5);
    cell076.setCellValue(ticketDetail.getPrintonPage() != null && !"".equals(ticketDetail.getPrintonPage())
            ? ticketDetail.getPrintonPage()
            : "ALL");
    cell076.setCellStyle(styleAlignLeft);

    // Row 8
    HSSFRow row08 = sheet.createRow(7);
    HSSFCell cell081 = row08.createCell(0);
    cell081.setCellValue("Term Pay : ");
    cell081.setCellStyle(styleAlignRight);
    HSSFCell cell082 = row08.createCell(1);
    cell082.setCellValue(ticketDetail.getTermPayPage() != null && !"".equals(ticketDetail.getTermPayPage())
            ? ticketDetail.getTermPayPage()
            : "ALL");
    cell082.setCellStyle(styleAlignLeft);
    HSSFCell cell083 = row08.createCell(2);
    cell083.setCellValue("Page : ");
    cell083.setCellStyle(styleAlignRight);
    HSSFCell cell084 = row08.createCell(3);
    cell084.setCellValue("1 ");
    cell084.setCellStyle(styleAlignLeft);

    // Header Table
    HSSFRow row09 = sheet.createRow(9);
    HSSFCell cell091 = row09.createCell(0);
    cell091.setCellValue("Inv No");
    cell091.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(0);

    HSSFCell cell092 = row09.createCell(1);
    cell092.setCellValue("Inv Date");
    cell092.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(1);

    HSSFCell cell093 = row09.createCell(2);
    cell093.setCellValue("Department");
    cell093.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(2);

    HSSFCell cell094 = row09.createCell(3);
    cell094.setCellValue("Staff");
    cell094.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(3);

    HSSFCell cell095 = row09.createCell(4);
    cell095.setCellValue("Term Pay");
    cell095.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(4);

    HSSFCell cell096 = row09.createCell(5);
    cell096.setCellValue("Agent");
    cell096.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(5);

    HSSFCell cell097 = row09.createCell(6);
    cell097.setCellValue("Type");
    cell097.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(6);

    HSSFCell cell0097 = row09.createCell(7);
    cell0097.setCellValue("Type Routing");
    cell0097.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(7);

    HSSFCell cell098 = row09.createCell(8);
    cell098.setCellValue("Buy");
    cell098.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(8);

    HSSFCell cell099 = row09.createCell(9);
    cell099.setCellValue("Pax");
    cell099.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(9);

    HSSFCell cell0100 = row09.createCell(10);
    cell0100.setCellValue("air");
    cell0100.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(10);

    HSSFCell cell0101 = row09.createCell(11);
    cell0101.setCellValue("Doc No");
    cell0101.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(11);

    HSSFCell cell0102 = row09.createCell(12);
    cell0102.setCellValue("Ref No");
    cell0102.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(12);

    HSSFCell cell103 = row09.createCell(13);
    cell103.setCellValue("Issue Date");
    cell103.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(13);

    HSSFCell cell0104 = row09.createCell(14);
    cell0104.setCellValue("Amount Wendy");
    cell0104.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(14);

    HSSFCell cell0105 = row09.createCell(15);
    cell0105.setCellValue("Amount Outbound");
    cell0105.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(15);

    HSSFCell cell0106 = row09.createCell(16);
    cell0106.setCellValue("Amount Inbound");
    cell0106.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(16);

    HSSFCell cell0107 = row09.createCell(17);
    cell0107.setCellValue("Amount Refund");
    cell0107.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(17);

    HSSFCell cell0108 = row09.createCell(18);
    cell0108.setCellValue("Amount Business Trip");
    cell0108.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(18);

    HSSFCell cell0109 = row09.createCell(19);
    cell0109.setCellValue("Amount Annual Leave");
    cell0109.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(19);

    HSSFCell cell0110 = row09.createCell(20);
    cell0110.setCellValue("Amount No Inv");
    cell0110.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(20);

    HSSFCell cell0111 = row09.createCell(21);
    cell0111.setCellValue("Sale");
    cell0111.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(21);

    HSSFCell cell0116 = row09.createCell(22);
    cell0116.setCellValue("Cost");
    cell0116.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(22);

    HSSFCell cell0112 = row09.createCell(23);
    cell0112.setCellValue("Over");
    cell0112.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(23);

    HSSFCell cell0113 = row09.createCell(24);
    cell0113.setCellValue("Add");
    cell0113.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(24);

    HSSFCell cell0114 = row09.createCell(25);
    cell0114.setCellValue("Dres");
    cell0114.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(25);

    HSSFCell cell0115 = row09.createCell(26);
    cell0115.setCellValue("Profit");
    cell0115.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(26);

    HSSFCell cell0117 = row09.createCell(27);
    cell0117.setCellValue("Comm");
    cell0117.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(27);

    HSSFCell cell0118 = row09.createCell(28);
    cell0118.setCellValue("Little");
    cell0118.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(28);

    HSSFCell cell0119 = row09.createCell(29);
    cell0119.setCellValue("Agent[Comm] Pay");
    cell0119.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(29);

    HSSFCell cell0130 = row09.createCell(30);
    cell0130.setCellValue("Agent[Comm] Receive");
    cell0130.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(30);

    HSSFCell cell0131 = row09.createCell(31);
    cell0131.setCellValue("Pay");
    cell0131.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(31);

    HSSFCell cell0132 = row09.createCell(32);
    cell0132.setCellValue("Net Comm Receive");
    cell0132.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet.autoSizeColumn(32);

    int count = 10 + listDetail.size();
    //        System.out.println(" listDetail.size() " + listDetail.size());
    //        System.out.println(" count " + count);
    if (listDetail != null && listDetail.size() != 0) {
        for (int r = 10; r < count; r++) {
            HSSFRow row = sheet.createRow(r);
            HSSFCell cell1 = row.createCell(0);
            cell1.setCellValue(listDetail.get(r - 10).getInvno());
            cell1.setCellStyle(styleDetailTable);
            HSSFCell cell2 = row.createCell(1);
            cell2.setCellValue(listDetail.get(r - 10).getInvdate());
            cell2.setCellStyle(styleDetailTable);
            HSSFCell cell3 = row.createCell(2);
            cell3.setCellValue(listDetail.get(r - 10).getDepartment());
            cell3.setCellStyle(styleDetailTable);
            HSSFCell cell4 = row.createCell(3);
            cell4.setCellValue(listDetail.get(r - 10).getOwner());
            cell4.setCellStyle(styleDetailTable);
            HSSFCell cell55 = row.createCell(4);
            cell55.setCellValue(listDetail.get(r - 10).getTermpay());
            cell55.setCellStyle(styleDetailTable);
            HSSFCell cell5 = row.createCell(5);
            cell5.setCellValue(listDetail.get(r - 10).getAgent());
            cell5.setCellStyle(styleDetailTable);
            HSSFCell cell6 = row.createCell(6);
            cell6.setCellValue(listDetail.get(r - 10).getType());
            cell6.setCellStyle(stylePaxNumber);
            HSSFCell cell07 = row.createCell(7);
            cell07.setCellValue(listDetail.get(r - 10).getRounting());
            cell07.setCellStyle(stylePaxNumber);
            HSSFCell cell7 = row.createCell(8);
            cell7.setCellValue(listDetail.get(r - 10).getBuy());
            cell7.setCellStyle(stylePaxNumber);
            HSSFCell cell8 = row.createCell(9);
            BigDecimal pax = new BigDecimal(
                    "".equals(listDetail.get(r - 10).getPax()) ? "0" : listDetail.get(r - 10).getPax());
            cell8.setCellValue((pax != null) ? pax.doubleValue() : new BigDecimal("0").doubleValue());
            cell8.setCellStyle(stylePaxNumber);
            HSSFCell cell9 = row.createCell(10);
            cell9.setCellValue(listDetail.get(r - 10).getAir());
            cell9.setCellStyle(stylePaxNumber);
            HSSFCell cell10 = row.createCell(11);
            cell10.setCellValue(listDetail.get(r - 10).getDocno());
            cell10.setCellStyle(styleDetailTable);
            HSSFCell cell11 = row.createCell(12);
            cell11.setCellValue(listDetail.get(r - 10).getRefno());
            cell11.setCellStyle(styleDetailTable);
            HSSFCell cell12 = row.createCell(13);
            cell12.setCellValue(listDetail.get(r - 10).getIssuedate());
            cell12.setCellStyle(stylePaxNumber);
            HSSFCell cell13 = row.createCell(14);
            BigDecimal amountwendy = new BigDecimal("".equals(listDetail.get(r - 10).getAmountwendy()) ? "0"
                    : listDetail.get(r - 10).getAmountwendy());
            cell13.setCellValue(
                    (amountwendy != null) ? amountwendy.doubleValue() : new BigDecimal("0").doubleValue());
            cell13.setCellStyle(styleDetailTableNumber);
            HSSFCell cell14 = row.createCell(15);
            BigDecimal amountoutbound = new BigDecimal(
                    "".equals(listDetail.get(r - 10).getAmountoutbound()) ? "0"
                            : listDetail.get(r - 10).getAmountoutbound());
            cell14.setCellValue((amountoutbound != null) ? amountoutbound.doubleValue()
                    : new BigDecimal("0").doubleValue());
            cell14.setCellStyle(styleDetailTableNumber);
            HSSFCell cell27 = row.createCell(16);
            BigDecimal amountinbound = new BigDecimal("".equals(listDetail.get(r - 10).getAmountinbound()) ? "0"
                    : listDetail.get(r - 10).getAmountinbound());
            cell27.setCellValue(
                    (amountinbound != null) ? amountinbound.doubleValue() : new BigDecimal("0").doubleValue());
            cell27.setCellStyle(styleDetailTableNumber);
            HSSFCell cell28 = row.createCell(17);
            BigDecimal amountref = new BigDecimal("".equals(listDetail.get(r - 10).getAmountrefund()) ? "0"
                    : listDetail.get(r - 10).getAmountrefund());
            cell28.setCellValue(
                    (amountref != null) ? amountref.doubleValue() : new BigDecimal("0").doubleValue());
            cell28.setCellStyle(styleDetailTableNumber);
            HSSFCell cell29 = row.createCell(18);
            BigDecimal amountbus = new BigDecimal(
                    "".equals(listDetail.get(r - 10).getAmountbusinesstrip()) ? "0"
                            : listDetail.get(r - 10).getAmountbusinesstrip());
            cell29.setCellValue(
                    (amountbus != null) ? amountbus.doubleValue() : new BigDecimal("0").doubleValue());
            cell29.setCellStyle(styleDetailTableNumber);
            HSSFCell cell30 = row.createCell(19);
            BigDecimal amountann = new BigDecimal("".equals(listDetail.get(r - 10).getAmountannualleave()) ? "0"
                    : listDetail.get(r - 10).getAmountannualleave());
            cell30.setCellValue(
                    (amountann != null) ? amountann.doubleValue() : new BigDecimal("0").doubleValue());
            cell30.setCellStyle(styleDetailTableNumber);
            HSSFCell cell31 = row.createCell(20);
            BigDecimal amountnoinv = new BigDecimal("".equals(listDetail.get(r - 10).getAmountnoinvoice()) ? "0"
                    : listDetail.get(r - 10).getAmountnoinvoice());
            cell31.setCellValue(
                    (amountnoinv != null) ? amountnoinv.doubleValue() : new BigDecimal("0").doubleValue());
            cell31.setCellStyle(styleDetailTableNumber);
            HSSFCell cell15 = row.createCell(21);
            BigDecimal sale = new BigDecimal(
                    "".equals(listDetail.get(r - 10).getSale()) ? "0" : listDetail.get(r - 10).getSale());
            cell15.setCellValue((sale != null) ? sale.doubleValue() : new BigDecimal("0").doubleValue());
            cell15.setCellStyle(styleDetailTableNumber);
            HSSFCell cell16 = row.createCell(22);
            BigDecimal cost = new BigDecimal(
                    "".equals(listDetail.get(r - 10).getCost()) ? "0" : listDetail.get(r - 10).getCost());
            cell16.setCellValue((cost != null) ? cost.doubleValue() : new BigDecimal("0").doubleValue());
            cell16.setCellStyle(styleDetailTableNumber);
            HSSFCell cell17 = row.createCell(23);
            BigDecimal over = new BigDecimal(
                    "".equals(listDetail.get(r - 10).getOver()) ? "0" : listDetail.get(r - 10).getOver());
            cell17.setCellValue((over != null) ? over.doubleValue() : new BigDecimal("0").doubleValue());
            cell17.setCellStyle(styleDetailTableNumber);
            HSSFCell cell18 = row.createCell(24);
            BigDecimal add = new BigDecimal(
                    "".equals(listDetail.get(r - 10).getAdd()) ? "0" : listDetail.get(r - 10).getAdd());
            cell18.setCellValue((add != null) ? add.doubleValue() : new BigDecimal("0").doubleValue());
            cell18.setCellStyle(styleDetailTableNumber);
            HSSFCell cell19 = row.createCell(25);
            BigDecimal dres = new BigDecimal(
                    "".equals(listDetail.get(r - 10).getDres()) ? "0" : listDetail.get(r - 10).getDres());
            cell19.setCellValue((dres != null) ? dres.doubleValue() : new BigDecimal("0").doubleValue());
            cell19.setCellStyle(styleDetailTableNumber);
            HSSFCell cell20 = row.createCell(26);
            BigDecimal profit = new BigDecimal(
                    "".equals(listDetail.get(r - 10).getProfit()) ? "0" : listDetail.get(r - 10).getProfit());
            cell20.setCellValue((profit != null) ? profit.doubleValue() : new BigDecimal("0").doubleValue());
            cell20.setCellStyle(styleDetailTableNumber);
            HSSFCell cell25 = row.createCell(27);
            BigDecimal ticcom = new BigDecimal(
                    "".equals(listDetail.get(r - 10).getTiccomm()) ? "0" : listDetail.get(r - 10).getTiccomm());
            cell25.setCellValue((ticcom != null) ? ticcom.doubleValue() : new BigDecimal("0").doubleValue());
            cell25.setCellStyle(styleDetailTableNumber);
            HSSFCell cell21 = row.createCell(28);
            BigDecimal little = new BigDecimal(
                    "".equals(listDetail.get(r - 10).getLittle()) ? "0" : listDetail.get(r - 10).getLittle());
            cell21.setCellValue((little != null) ? little.doubleValue() : new BigDecimal("0").doubleValue());
            cell21.setCellStyle(styleDetailTableNumber);
            HSSFCell cell22 = row.createCell(29);
            BigDecimal agentcommpay = new BigDecimal("".equals(listDetail.get(r - 10).getAgentcommpay()) ? "0"
                    : listDetail.get(r - 10).getAgentcommpay());
            cell22.setCellValue(
                    (agentcommpay != null) ? agentcommpay.doubleValue() : new BigDecimal("0").doubleValue());
            cell22.setCellStyle(styleDetailTableNumber);
            HSSFCell cell23 = row.createCell(30);
            BigDecimal agentcommrec = new BigDecimal("".equals(listDetail.get(r - 10).getAgentcommrec()) ? "0"
                    : listDetail.get(r - 10).getAgentcommrec());
            cell23.setCellValue(
                    (agentcommrec != null) ? agentcommrec.doubleValue() : new BigDecimal("0").doubleValue());
            cell23.setCellStyle(styleDetailTableNumber);
            HSSFCell cell24 = row.createCell(31);
            BigDecimal pay = new BigDecimal(
                    "".equals(listDetail.get(r - 10).getPay()) ? "0" : listDetail.get(r - 10).getPay());
            cell24.setCellValue((pay != null) ? pay.doubleValue() : new BigDecimal("0").doubleValue());
            cell24.setCellStyle(styleDetailTableNumber);
            HSSFCell cell26 = row.createCell(32);
            BigDecimal comm = new BigDecimal(
                    "".equals(listDetail.get(r - 10).getComm()) ? "0" : listDetail.get(r - 10).getComm());
            cell26.setCellValue((comm != null) ? comm.doubleValue() : new BigDecimal("0").doubleValue());
            cell26.setCellStyle(styleDetailTableNumber);

        }
        for (int i = 0; i < 33; i++) {
            sheet.autoSizeColumn(i);
        }
    } else {
        HSSFRow row = sheet.createRow(12);
        HSSFCell cell1 = row.createCell(0);
        cell1.setCellValue("No Data");
    }

    HSSFRow rowtotalDetail = sheet.createRow(count);
    String sumtotalpaxDetail = "SUM(J" + 11 + ":J" + (count) + ")";
    String sumtotalamountwenDetail = "SUM(O" + 11 + ":O" + (count) + ")";
    String sumtotalamountoutDetail = "SUM(P" + 11 + ":P" + (count) + ")";
    String sumtotalamountinDetail = "SUM(Q" + 11 + ":Q" + (count) + ")";
    String sumtotalamountreDetail = "SUM(R" + 11 + ":R" + (count) + ")";
    String sumtotalamountbusDetail = "SUM(S" + 11 + ":S" + (count) + ")";
    String sumtotalamountanDetail = "SUM(T" + 11 + ":T" + (count) + ")";
    String sumtotalamountinvDetail = "SUM(U" + 11 + ":U" + (count) + ")";
    String sumtotalsaleDetail = "SUM(V" + 11 + ":V" + (count) + ")";
    String sumtotalcostDetail = "SUM(W" + 11 + ":W" + (count) + ")";
    String sumtotaloverDetail = "SUM(X" + 11 + ":X" + (count) + ")";
    String sumtotaladdDetail = "SUM(Y" + 11 + ":Y" + (count) + ")";
    String sumtotaldresDetail = "SUM(Z" + 11 + ":Z" + (count) + ")";
    String sumtotalprofitDetail = "SUM(AA" + 11 + ":AA" + (count) + ")";
    String sumtotalticketcommDetail = "SUM(AB" + 11 + ":AB" + (count) + ")";
    String sumtotallittleDetail = "SUM(AC" + 11 + ":AC" + (count) + ")";
    String sumtotalagentcommpayDetail = "SUM(AD" + 11 + ":AD" + (count) + ")";
    String sumtotalagentcommrecDetail = "SUM(AE" + 11 + ":AE" + (count) + ")";
    String sumtotalpayDetail = "SUM(AF" + 11 + ":AF" + (count) + ")";
    String sumtotalnetcommDetail = "SUM(AG" + 11 + ":AG" + (count) + ")";
    //            sheetIncSum.addMergedRegion(CellRangeAddress.valueOf("A"+(count + x + 2)+":B"+(count + x + 2)));
    //            sheetIncSum.addMergedRegion(CellRangeAddress.valueOf("D"+(count + x + 2)+":E"+(count + x + 2)));
    HSSFCell cellTotalSumDetail0 = rowtotalDetail.createCell(0);
    cellTotalSumDetail0.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail1 = rowtotalDetail.createCell(1);
    cellTotalSumDetail1.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail2 = rowtotalDetail.createCell(3);
    cellTotalSumDetail2.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail3 = rowtotalDetail.createCell(2);
    cellTotalSumDetail3.setCellStyle(stylePaxNumberTotal);
    HSSFCell cellTotalSumDetail4 = rowtotalDetail.createCell(4);
    cellTotalSumDetail4.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail5 = rowtotalDetail.createCell(5);
    cellTotalSumDetail5.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail6 = rowtotalDetail.createCell(6);
    cellTotalSumDetail6.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail7 = rowtotalDetail.createCell(7);
    cellTotalSumDetail7.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail9 = rowtotalDetail.createCell(8);
    cellTotalSumDetail9.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail8 = rowtotalDetail.createCell(9);
    cellTotalSumDetail8.setCellFormula(sumtotalpaxDetail);
    cellTotalSumDetail8.setCellStyle(stylePaxNumberTotal);
    HSSFCell cellTotalSumDetail10 = rowtotalDetail.createCell(10);
    cellTotalSumDetail10.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail11 = rowtotalDetail.createCell(11);
    cellTotalSumDetail11.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail12 = rowtotalDetail.createCell(12);
    cellTotalSumDetail12.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail122 = rowtotalDetail.createCell(13);
    cellTotalSumDetail122.setCellStyle(styleTotalTableNumber);

    HSSFCell cellTotalSumDetail13 = rowtotalDetail.createCell(14);
    cellTotalSumDetail13.setCellFormula(sumtotalamountwenDetail);
    cellTotalSumDetail13.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail14 = rowtotalDetail.createCell(15);
    cellTotalSumDetail14.setCellFormula(sumtotalamountoutDetail);
    cellTotalSumDetail14.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail15 = rowtotalDetail.createCell(16);
    cellTotalSumDetail15.setCellFormula(sumtotalamountinDetail);
    cellTotalSumDetail15.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail16 = rowtotalDetail.createCell(17);
    cellTotalSumDetail16.setCellFormula(sumtotalamountreDetail);
    cellTotalSumDetail16.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail17 = rowtotalDetail.createCell(18);
    cellTotalSumDetail17.setCellFormula(sumtotalamountbusDetail);
    cellTotalSumDetail17.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail18 = rowtotalDetail.createCell(19);
    cellTotalSumDetail18.setCellFormula(sumtotalamountanDetail);
    cellTotalSumDetail18.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail19 = rowtotalDetail.createCell(20);
    cellTotalSumDetail19.setCellFormula(sumtotalamountinvDetail);
    cellTotalSumDetail19.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail20 = rowtotalDetail.createCell(21);
    cellTotalSumDetail20.setCellFormula(sumtotalsaleDetail);
    cellTotalSumDetail20.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail21 = rowtotalDetail.createCell(22);
    cellTotalSumDetail21.setCellFormula(sumtotalcostDetail);
    cellTotalSumDetail21.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail22 = rowtotalDetail.createCell(23);
    cellTotalSumDetail22.setCellFormula(sumtotaloverDetail);
    cellTotalSumDetail22.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail23 = rowtotalDetail.createCell(24);
    cellTotalSumDetail23.setCellFormula(sumtotaladdDetail);
    cellTotalSumDetail23.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail24 = rowtotalDetail.createCell(25);
    cellTotalSumDetail24.setCellFormula(sumtotaldresDetail);
    cellTotalSumDetail24.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail25 = rowtotalDetail.createCell(26);
    cellTotalSumDetail25.setCellFormula(sumtotalprofitDetail);
    cellTotalSumDetail25.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail26 = rowtotalDetail.createCell(27);
    cellTotalSumDetail26.setCellFormula(sumtotalticketcommDetail);
    cellTotalSumDetail26.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail27 = rowtotalDetail.createCell(28);
    cellTotalSumDetail27.setCellFormula(sumtotallittleDetail);
    cellTotalSumDetail27.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail28 = rowtotalDetail.createCell(29);
    cellTotalSumDetail28.setCellFormula(sumtotalagentcommpayDetail);
    cellTotalSumDetail28.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail29 = rowtotalDetail.createCell(30);
    cellTotalSumDetail29.setCellFormula(sumtotalagentcommrecDetail);
    cellTotalSumDetail29.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail30 = rowtotalDetail.createCell(31);
    cellTotalSumDetail30.setCellFormula(sumtotalpayDetail);
    cellTotalSumDetail30.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumDetail31 = rowtotalDetail.createCell(32);
    cellTotalSumDetail31.setCellFormula(sumtotalnetcommDetail);
    cellTotalSumDetail31.setCellStyle(styleTotalTableNumber);

    //        System.out.println(count);
    //        HSSFRow rowL = sheet.createRow(count);
    //        rowL.createCell(0).setCellStyle(styleBorderTop);
    //        rowL.createCell(1).setCellStyle(styleBorderTop);
    //        rowL.createCell(2).setCellStyle(styleBorderTop);
    //        rowL.createCell(3).setCellStyle(styleBorderTop);
    //        rowL.createCell(4).setCellStyle(styleBorderTop);
    //        rowL.createCell(5).setCellStyle(styleBorderTop);
    //        rowL.createCell(6).setCellStyle(styleBorderTop);
    //        rowL.createCell(7).setCellStyle(styleBorderTop);
    //        rowL.createCell(8).setCellStyle(styleBorderTop);
    //        rowL.createCell(9).setCellStyle(styleBorderTop);
    //        rowL.createCell(10).setCellStyle(styleBorderTop);
    //        rowL.createCell(11).setCellStyle(styleBorderTop);
    //        rowL.createCell(12).setCellStyle(styleBorderTop);
    //        rowL.createCell(13).setCellStyle(styleBorderTop);
    //        rowL.createCell(14).setCellStyle(styleBorderTop);
    //        rowL.createCell(15).setCellStyle(styleBorderTop);
    //        rowL.createCell(16).setCellStyle(styleBorderTop);
    //        rowL.createCell(17).setCellStyle(styleBorderTop);
    //        rowL.createCell(18).setCellStyle(styleBorderTop);
    //        rowL.createCell(19).setCellStyle(styleBorderTop);
    //        rowL.createCell(20).setCellStyle(styleBorderTop);
    //        rowL.createCell(21).setCellStyle(styleBorderTop);
    //        rowL.createCell(22).setCellStyle(styleBorderTop);
    //        rowL.createCell(23).setCellStyle(styleBorderTop);
    //        rowL.createCell(24).setCellStyle(styleBorderTop);
    //        rowL.createCell(25).setCellStyle(styleBorderTop);
    //        rowL.createCell(26).setCellStyle(styleBorderTop);
    //        rowL.createCell(27).setCellStyle(styleBorderTop);
    //        rowL.createCell(28).setCellStyle(styleBorderTop);
    //        rowL.createCell(29).setCellStyle(styleBorderTop);
    //        rowL.createCell(30).setCellStyle(styleBorderTop);
    //        rowL.createCell(31).setCellStyle(styleBorderTop);
    //**********************************************************************************************************************
    // set Header Report (Row 1)
    HSSFCellStyle styleHeader02 = wb.createCellStyle();
    HSSFRow row21 = sheet1.createRow(0);
    HSSFCell cell21 = row21.createCell(0);
    cell21.setCellValue("List summary commission");
    styleHeader02.setFont(excelFunction.getHeaderFont(wb.createFont()));
    cell21.setCellStyle(styleHeader02);
    sheet1.addMergedRegion(CellRangeAddress.valueOf("A1:M1"));

    // Row 2
    HSSFRow row22 = sheet1.createRow(1);
    HSSFCell cell221 = row22.createCell(0);
    cell221.setCellValue("Agent Name : ");
    cell221.setCellStyle(styleAlignRight);
    sheet1.autoSizeColumn(0);
    HSSFCell cell222 = row22.createCell(1);
    cell222.setCellValue(ticketAir.getAgentNamePage() != null && !"".equals(ticketDetail.getAgentNamePage())
            ? ticketDetail.getAgentNamePage()
            : "ALL");
    cell222.setCellStyle(styleAlignLeft);
    sheet1.autoSizeColumn(1);
    HSSFCell cell223 = row22.createCell(2);
    cell223.setCellValue("Issue date : ");
    cell223.setCellStyle(styleAlignRight);
    sheet1.autoSizeColumn(2);
    HSSFCell cell224 = row22.createCell(3);
    cell224.setCellValue(
            ticketAir.getIssuefromdatePage() != null && !"".equals(ticketDetail.getIssuefromdatePage())
                    ? ticketDetail.getIssuefromdatePage()
                    : "ALL");
    cell224.setCellStyle(styleAlignLeft);
    sheet1.autoSizeColumn(3);
    HSSFCell cell225 = row22.createCell(4);
    cell225.setCellValue("Print By : ");
    cell225.setCellStyle(styleAlignRight);
    sheet1.autoSizeColumn(4);
    HSSFCell cell226 = row22.createCell(5);
    cell226.setCellValue(ticketAir.getPrintbyPage() != null && !"".equals(ticketDetail.getPrintbyPage())
            ? ticketDetail.getPrintbyPage()
            : "ALL");
    cell226.setCellStyle(styleAlignLeft);
    sheet1.autoSizeColumn(5);

    // Row 3
    HSSFRow row23 = sheet1.createRow(2);
    HSSFCell cell231 = row23.createCell(0);
    cell231.setCellValue("Type Routing : ");
    cell231.setCellStyle(styleAlignRight);
    sheet1.autoSizeColumn(0);
    HSSFCell cell232 = row23.createCell(1);
    cell232.setCellValue(ticketAir.getTypeRoutingPage() != null && !"".equals(ticketDetail.getTypeRoutingPage())
            ? ticketDetail.getTypeRoutingPage()
            : "ALL");
    cell232.setCellStyle(styleAlignLeft);
    sheet1.autoSizeColumn(1);
    HSSFCell cell233 = row23.createCell(2);
    cell233.setCellValue("Over Comm Date : ");
    cell233.setCellStyle(styleAlignRight);
    sheet1.autoSizeColumn(2);
    HSSFCell cell234 = row23.createCell(3);
    cell234.setCellValue(
            ticketAir.getOverfromdatePage() != null && !"".equals(ticketDetail.getOverfromdatePage())
                    ? ticketDetail.getOverfromdatePage()
                    : "ALL");
    cell234.setCellStyle(styleAlignLeft);
    sheet1.autoSizeColumn(3);
    HSSFCell cell235 = row23.createCell(4);
    cell235.setCellValue("Add Pay Date : ");
    cell235.setCellStyle(styleAlignRight);
    sheet1.autoSizeColumn(4);
    HSSFCell cell236 = row23.createCell(5);
    cell236.setCellValue(
            ticketAir.getAddpayfromdatePage() != null && !"".equals(ticketDetail.getAddpayfromdatePage())
                    ? ticketDetail.getAddpayfromdatePage()
                    : "ALL");
    cell236.setCellStyle(styleAlignLeft);
    sheet1.autoSizeColumn(5);

    // Row 4
    HSSFRow row24 = sheet1.createRow(3);
    HSSFCell cell241 = row24.createCell(0);
    cell241.setCellValue("Air : ");
    cell241.setCellStyle(styleAlignRight);
    sheet1.autoSizeColumn(0);
    HSSFCell cell242 = row24.createCell(1);
    cell242.setCellValue(ticketAir.getAirlineCodePage() != null && !"".equals(ticketDetail.getAirlineCodePage())
            ? ticketDetail.getAirlineCodePage()
            : "ALL");
    cell242.setCellStyle(styleAlignLeft);
    sheet1.autoSizeColumn(1);
    HSSFCell cell243 = row24.createCell(2);
    cell243.setCellValue("Little Comm date : ");
    cell243.setCellStyle(styleAlignRight);
    sheet1.autoSizeColumn(2);
    HSSFCell cell244 = row24.createCell(3);
    cell244.setCellValue(
            ticketAir.getLittlefromdatePage() != null && !"".equals(ticketDetail.getLittlefromdatePage())
                    ? ticketDetail.getLittlefromdatePage()
                    : "ALL");
    cell244.setCellStyle(styleAlignLeft);
    sheet1.autoSizeColumn(3);
    HSSFCell cell245 = row24.createCell(4);
    cell245.setCellValue("Decrease Pay Date : ");
    cell245.setCellStyle(styleAlignRight);
    sheet1.autoSizeColumn(4);
    HSSFCell cell246 = row24.createCell(5);
    cell246.setCellValue(ticketAir.getDecreasepayfromdatePage() != null
            && !"".equals(ticketDetail.getDecreasepayfromdatePage()) ? ticketDetail.getDecreasepayfromdatePage()
                    : "ALL");
    cell246.setCellStyle(styleAlignLeft);
    sheet1.autoSizeColumn(5);

    // Row 5
    HSSFRow row25 = sheet1.createRow(4);
    HSSFCell cell251 = row25.createCell(0);
    cell251.setCellValue("Routing Detail : ");
    cell251.setCellStyle(styleAlignRight);
    sheet1.autoSizeColumn(0);
    HSSFCell cell252 = row25.createCell(1);
    cell252.setCellValue(
            ticketAir.getRoutingDetailPage() != null && !"".equals(ticketDetail.getRoutingDetailPage())
                    ? ticketDetail.getRoutingDetailPage()
                    : "ALL");
    cell252.setCellStyle(styleAlignLeft);
    sheet1.autoSizeColumn(1);
    HSSFCell cell253 = row25.createCell(2);
    cell253.setCellValue("Agent Comm Rev Date : ");
    cell253.setCellStyle(styleAlignRight);
    sheet1.autoSizeColumn(2);
    HSSFCell cell254 = row25.createCell(3);
    cell254.setCellValue(ticketAir.getAgemtcomreceivefromdatePage() != null
            && !"".equals(ticketDetail.getAgemtcomreceivefromdatePage())
                    ? ticketDetail.getAgemtcomreceivefromdatePage()
                    : "ALL");
    cell254.setCellStyle(styleAlignLeft);
    sheet1.autoSizeColumn(3);
    HSSFCell cell255 = row25.createCell(4);
    cell255.setCellValue("Ticket No : ");
    cell255.setCellStyle(styleAlignRight);
    sheet1.autoSizeColumn(4);
    HSSFCell cell256 = row25.createCell(5);
    cell256.setCellValue(
            ticketAir.getTicketcomfromdatePage() != null && !"".equals(ticketDetail.getTicketcomfromdatePage())
                    ? ticketDetail.getTicketcomfromdatePage()
                    : "ALL");
    cell256.setCellStyle(styleAlignLeft);
    sheet1.autoSizeColumn(5);

    // Row 6
    HSSFRow row26 = sheet1.createRow(5);
    HSSFCell cell261 = row26.createCell(0);
    cell261.setCellValue("Sale Staff : ");
    cell261.setCellStyle(styleAlignRight);
    HSSFCell cell262 = row26.createCell(1);
    cell262.setCellValue(ticketAir.getSalebyNamePage() != null && !"".equals(ticketDetail.getSalebyNamePage())
            ? ticketDetail.getSalebyNamePage()
            : "ALL");
    cell262.setCellStyle(styleAlignLeft);
    HSSFCell cell263 = row26.createCell(2);
    cell263.setCellValue("Refund Comm Date : ");
    cell263.setCellStyle(styleAlignRight);
    HSSFCell cell264 = row26.createCell(3);
    cell264.setCellValue(
            ticketAir.getComrefundfromdatePage() != null && !"".equals(ticketDetail.getComrefundfromdatePage())
                    ? ticketDetail.getComrefundfromdatePage()
                    : "ALL");
    cell264.setCellStyle(styleAlignLeft);
    HSSFCell cell265 = row26.createCell(4);
    cell265.setCellValue("Ticket Comm Date : ");
    cell265.setCellStyle(styleAlignRight);
    HSSFCell cell266 = row26.createCell(5);
    cell266.setCellValue(
            ticketAir.getTicketcomfromdatePage() != null && !"".equals(ticketDetail.getTicketcomfromdatePage())
                    ? ticketDetail.getTicketcomfromdatePage()
                    : "ALL");
    cell266.setCellStyle(styleAlignLeft);

    // Row 7
    HSSFRow row27 = sheet1.createRow(6);
    HSSFCell cell271 = row27.createCell(0);
    cell271.setCellValue("Department : ");
    cell271.setCellStyle(styleAlignRight);
    HSSFCell cell272 = row27.createCell(1);
    cell272.setCellValue(ticketAir.getDepartmentPage() != null && !"".equals(ticketDetail.getDepartmentPage())
            ? ticketDetail.getDepartmentPage()
            : "ALL");
    cell272.setCellStyle(styleAlignLeft);
    HSSFCell cell273 = row27.createCell(2);
    cell273.setCellValue("Invoice Date : ");
    cell273.setCellStyle(styleAlignRight);
    HSSFCell cell274 = row27.createCell(3);
    cell274.setCellValue(
            ticketAir.getInvoicefromdatePage() != null && !"".equals(ticketDetail.getInvoicefromdatePage())
                    ? ticketDetail.getInvoicefromdatePage()
                    : "ALL");
    cell274.setCellStyle(styleAlignLeft);
    HSSFCell cell275 = row27.createCell(4);
    cell275.setCellValue("Print on : ");
    cell275.setCellStyle(styleAlignRight);
    HSSFCell cell276 = row27.createCell(5);
    cell276.setCellValue(ticketAir.getPrintonPage() != null && !"".equals(ticketDetail.getPrintonPage())
            ? ticketDetail.getPrintonPage()
            : "ALL");
    cell276.setCellStyle(styleAlignLeft);

    // Row 8
    HSSFRow row28 = sheet1.createRow(7);
    HSSFCell cell281 = row28.createCell(0);
    cell281.setCellValue("Term Pay : ");
    cell281.setCellStyle(styleAlignRight);
    HSSFCell cell282 = row28.createCell(1);
    cell282.setCellValue(ticketAir.getTermPayPage() != null && !"".equals(ticketDetail.getTermPayPage())
            ? ticketDetail.getTermPayPage()
            : "ALL");
    cell282.setCellStyle(styleAlignLeft);
    HSSFCell cell283 = row28.createCell(2);
    cell283.setCellValue("Page : ");
    cell283.setCellStyle(styleAlignRight);
    HSSFCell cell284 = row28.createCell(3);
    cell284.setCellValue("1 ");
    cell284.setCellStyle(styleAlignLeft);

    // Header Table
    HSSFRow row29 = sheet1.createRow(9);
    HSSFCell cell291 = row29.createCell(0);
    cell291.setCellValue("Type Pay");
    cell291.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(0);

    HSSFCell cell292 = row29.createCell(1);
    cell292.setCellValue("Type Route");
    cell292.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(1);

    HSSFCell cell293 = row29.createCell(2);
    cell293.setCellValue("Pax");
    cell293.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(2);

    HSSFCell cell294 = row29.createCell(3);
    cell294.setCellValue("Air");
    cell294.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(3);

    HSSFCell cell295 = row29.createCell(4);
    cell295.setCellValue("Amount Wendy");
    cell295.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(4);

    HSSFCell cell296 = row29.createCell(5);
    cell296.setCellValue("Amount Outbound");
    cell296.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(5);

    HSSFCell cell2110 = row29.createCell(6);
    cell2110.setCellValue("Amount Inbound");
    cell2110.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(6);

    HSSFCell cell297 = row29.createCell(7);
    cell297.setCellValue("Sale Price");
    cell297.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(7);

    HSSFCell cell298 = row29.createCell(8);
    cell298.setCellValue("Cost");
    cell298.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(8);

    HSSFCell cell299 = row29.createCell(9);
    cell299.setCellValue("Over Comm");
    cell299.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(9);

    HSSFCell cell2100 = row29.createCell(10);
    cell2100.setCellValue("Add Pay");
    cell2100.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(10);

    HSSFCell cell2101 = row29.createCell(11);
    cell2101.setCellValue("Drecrease Pay");
    cell2101.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(11);

    HSSFCell cell2103 = row29.createCell(12);
    cell2103.setCellValue("Profit");
    cell2103.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(12);

    HSSFCell cell2104 = row29.createCell(13);
    cell2104.setCellValue("Comm");
    cell2104.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(13);

    HSSFCell cell2105 = row29.createCell(14);
    cell2105.setCellValue("Little Comm");
    cell2105.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(14);

    HSSFCell cell2106 = row29.createCell(15);
    cell2106.setCellValue("Agent[Comm] Pay");
    cell2106.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(15);

    HSSFCell cell2107 = row29.createCell(16);
    cell2107.setCellValue("Agent[Comm] Receive");
    cell2107.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(16);

    HSSFCell cell2108 = row29.createCell(17);
    cell2108.setCellValue("Pay Comm Refund");
    cell2108.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(17);

    HSSFCell cell2109 = row29.createCell(18);
    cell2109.setCellValue("Comm Receive");
    cell2109.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet1.autoSizeColumn(18);

    int count1 = 10 + listAir.size();
    if (listAir != null) {
        for (int r = 10; r < count1; r++) {
            HSSFRow row = sheet1.createRow(r);
            HSSFCell cell1 = row.createCell(0);
            cell1.setCellValue(listAir.get(r - 10).getTypepayment());
            cell1.setCellStyle(styleDetailTable);
            HSSFCell cell2 = row.createCell(1);
            cell2.setCellValue(listAir.get(r - 10).getTyperounting());
            cell2.setCellStyle(stylePaxNumber);
            HSSFCell cell3 = row.createCell(2);
            BigDecimal pax = new BigDecimal(
                    "".equals(listAir.get(r - 10).getPax()) ? "0" : listAir.get(r - 10).getPax());
            cell3.setCellValue((pax != null) ? pax.doubleValue() : new BigDecimal("0").doubleValue());
            cell3.setCellStyle(stylePaxNumber);
            HSSFCell cell4 = row.createCell(3);
            cell4.setCellValue(listAir.get(r - 10).getAir());
            cell4.setCellStyle(stylePaxNumber);
            HSSFCell cell5 = row.createCell(4);
            BigDecimal amountwendy = new BigDecimal("".equals(listAir.get(r - 10).getAmountwendy()) ? "0"
                    : listAir.get(r - 10).getAmountwendy());
            cell5.setCellValue(
                    (amountwendy != null) ? amountwendy.doubleValue() : new BigDecimal("0").doubleValue());
            cell5.setCellStyle(styleDetailTableNumber);
            HSSFCell cell19 = row.createCell(5);
            BigDecimal amountoutbound = new BigDecimal(
                    "null".equals(String.valueOf(listAir.get(r - 10).getAmountoutbound())) ? "0"
                            : listAir.get(r - 10).getAmountoutbound());
            cell19.setCellValue((amountoutbound != null) ? amountoutbound.doubleValue()
                    : new BigDecimal("0").doubleValue());
            cell19.setCellStyle(styleDetailTableNumber);
            HSSFCell cell6 = row.createCell(6);
            BigDecimal amountinbound = new BigDecimal(
                    "null".equals(String.valueOf(listAir.get(r - 10).getAmountinbound())) ? "0"
                            : listAir.get(r - 10).getAmountinbound());
            cell6.setCellValue(
                    (amountinbound != null) ? amountinbound.doubleValue() : new BigDecimal("0").doubleValue());
            cell6.setCellStyle(styleDetailTableNumber);
            HSSFCell cell7 = row.createCell(7);
            BigDecimal sale = new BigDecimal(
                    "".equals(listAir.get(r - 10).getSale()) ? "0" : listAir.get(r - 10).getSale());
            cell7.setCellValue((sale != null) ? sale.doubleValue() : new BigDecimal("0").doubleValue());
            cell7.setCellStyle(styleDetailTableNumber);
            HSSFCell cell8 = row.createCell(8);
            BigDecimal cost = new BigDecimal(
                    "".equals(listAir.get(r - 10).getCost()) ? "0" : listAir.get(r - 10).getCost());
            cell8.setCellValue((cost != null) ? cost.doubleValue() : new BigDecimal("0").doubleValue());
            cell8.setCellStyle(styleDetailTableNumber);
            HSSFCell cell9 = row.createCell(9);
            BigDecimal over = new BigDecimal(
                    "".equals(listAir.get(r - 10).getOver()) ? "0" : listAir.get(r - 10).getOver());
            cell9.setCellValue((over != null) ? over.doubleValue() : new BigDecimal("0").doubleValue());
            cell9.setCellStyle(styleDetailTableNumber);
            HSSFCell cell10 = row.createCell(10);
            BigDecimal add = new BigDecimal(
                    "".equals(listAir.get(r - 10).getAdd()) ? "0" : listAir.get(r - 10).getAdd());
            cell10.setCellValue((add != null) ? add.doubleValue() : new BigDecimal("0").doubleValue());
            cell10.setCellStyle(styleDetailTableNumber);
            HSSFCell cell11 = row.createCell(11);
            BigDecimal dres = new BigDecimal(
                    "".equals(listAir.get(r - 10).getDres()) ? "0" : listAir.get(r - 10).getDres());
            cell11.setCellValue((dres != null) ? dres.doubleValue() : new BigDecimal("0").doubleValue());
            cell11.setCellStyle(styleDetailTableNumber);
            HSSFCell cell12 = row.createCell(12);
            BigDecimal profit = new BigDecimal(
                    "".equals(listAir.get(r - 10).getProfit()) ? "0" : listAir.get(r - 10).getProfit());
            cell12.setCellValue((profit != null) ? profit.doubleValue() : new BigDecimal("0").doubleValue());
            cell12.setCellStyle(styleDetailTableNumber);
            HSSFCell cell13 = row.createCell(13);
            BigDecimal ticcom = new BigDecimal(
                    "".equals(listAir.get(r - 10).getTiccomm()) ? "0" : listAir.get(r - 10).getTiccomm());
            cell13.setCellValue((ticcom != null) ? ticcom.doubleValue() : new BigDecimal("0").doubleValue());
            cell13.setCellStyle(styleDetailTableNumber);
            HSSFCell cell14 = row.createCell(14);
            BigDecimal little = new BigDecimal(
                    "".equals(listAir.get(r - 10).getLittle()) ? "0" : listAir.get(r - 10).getLittle());
            cell14.setCellValue((little != null) ? little.doubleValue() : new BigDecimal("0").doubleValue());
            cell14.setCellStyle(styleDetailTableNumber);
            HSSFCell cell15 = row.createCell(15);
            BigDecimal agentcommpay = new BigDecimal("".equals(listAir.get(r - 10).getAgentcommpay()) ? "0"
                    : listAir.get(r - 10).getAgentcommpay());
            cell15.setCellValue(
                    (agentcommpay != null) ? agentcommpay.doubleValue() : new BigDecimal("0").doubleValue());
            cell15.setCellStyle(styleDetailTableNumber);
            HSSFCell cell16 = row.createCell(16);
            BigDecimal agentcommrec = new BigDecimal("".equals(listAir.get(r - 10).getAgentcommrec()) ? "0"
                    : listAir.get(r - 10).getAgentcommrec());
            cell16.setCellValue(
                    (agentcommrec != null) ? agentcommrec.doubleValue() : new BigDecimal("0").doubleValue());
            cell16.setCellStyle(styleDetailTableNumber);
            HSSFCell cell17 = row.createCell(17);
            BigDecimal pay = new BigDecimal(
                    "".equals(listAir.get(r - 10).getPay()) ? "0" : listAir.get(r - 10).getPay());
            cell17.setCellValue((pay != null) ? pay.doubleValue() : new BigDecimal("0").doubleValue());
            cell17.setCellStyle(styleDetailTableNumber);
            HSSFCell cell18 = row.createCell(18);
            BigDecimal comm = new BigDecimal(
                    "".equals(listAir.get(r - 10).getComm()) ? "0" : listAir.get(r - 10).getComm());
            cell18.setCellValue((comm != null) ? comm.doubleValue() : new BigDecimal("0").doubleValue());
            cell18.setCellStyle(styleDetailTableNumber);

        }
        for (int i = 0; i < 25; i++) {
            sheet1.autoSizeColumn(i);
        }
    }

    HSSFRow rowtotal = sheet1.createRow(count1);
    String sumtotalpax = "SUM(C" + 11 + ":C" + (count1) + ")";
    String sumtotalamountwen = "SUM(E" + 11 + ":E" + (count1) + ")";
    String sumtotalamountout = "SUM(F" + 11 + ":F" + (count1) + ")";
    String sumtotalamountin = "SUM(G" + 11 + ":G" + (count1) + ")";
    String sumtotalsale = "SUM(H" + 11 + ":H" + (count1) + ")";
    String sumtotalcost = "SUM(I" + 11 + ":I" + (count1) + ")";
    String sumtotalover = "SUM(J" + 11 + ":J" + (count1) + ")";
    String sumtotaladd = "SUM(K" + 11 + ":K" + (count1) + ")";
    String sumtotaldres = "SUM(L" + 11 + ":L" + (count1) + ")";
    String sumtotalprofit = "SUM(M" + 11 + ":M" + (count1) + ")";
    String sumtotalticketcomm = "SUM(N" + 11 + ":N" + (count1) + ")";
    String sumtotallittle = "SUM(O" + 11 + ":O" + (count1) + ")";
    String sumtotalagentcommpay = "SUM(P" + 11 + ":P" + (count1) + ")";
    String sumtotalagentcommrec = "SUM(Q" + 11 + ":Q" + (count1) + ")";
    String sumtotalpay = "SUM(R" + 11 + ":R" + (count1) + ")";
    String sumtotalcomm = "SUM(S" + 11 + ":S" + (count1) + ")";
    //            sheetIncSum.addMergedRegion(CellRangeAddress.valueOf("A"+(count + x + 2)+":B"+(count + x + 2)));
    //            sheetIncSum.addMergedRegion(CellRangeAddress.valueOf("D"+(count + x + 2)+":E"+(count + x + 2)));
    HSSFCell cellTotalSum00 = rowtotal.createCell(0);
    cellTotalSum00.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum16 = rowtotal.createCell(1);
    cellTotalSum16.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum17 = rowtotal.createCell(3);
    cellTotalSum17.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum01 = rowtotal.createCell(2);
    cellTotalSum01.setCellFormula(sumtotalpax);
    cellTotalSum01.setCellStyle(stylePaxNumberTotal);
    HSSFCell cellTotalSum18 = rowtotal.createCell(4);
    cellTotalSum18.setCellFormula(sumtotalamountwen);
    cellTotalSum18.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum02 = rowtotal.createCell(5);
    cellTotalSum02.setCellFormula(sumtotalamountout);
    cellTotalSum02.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum03 = rowtotal.createCell(6);
    cellTotalSum03.setCellFormula(sumtotalamountin);
    cellTotalSum03.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum04 = rowtotal.createCell(7);
    cellTotalSum04.setCellFormula(sumtotalsale);
    cellTotalSum04.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum05 = rowtotal.createCell(8);
    cellTotalSum05.setCellFormula(sumtotalcost);
    cellTotalSum05.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum06 = rowtotal.createCell(9);
    cellTotalSum06.setCellFormula(sumtotalover);
    cellTotalSum06.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum07 = rowtotal.createCell(10);
    cellTotalSum07.setCellFormula(sumtotaladd);
    cellTotalSum07.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum08 = rowtotal.createCell(11);
    cellTotalSum08.setCellFormula(sumtotaldres);
    cellTotalSum08.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum09 = rowtotal.createCell(12);
    cellTotalSum09.setCellFormula(sumtotalprofit);
    cellTotalSum09.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum10 = rowtotal.createCell(13);
    cellTotalSum10.setCellFormula(sumtotalticketcomm);
    cellTotalSum10.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum11 = rowtotal.createCell(14);
    cellTotalSum11.setCellFormula(sumtotallittle);
    cellTotalSum11.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum12 = rowtotal.createCell(15);
    cellTotalSum12.setCellFormula(sumtotalagentcommpay);
    cellTotalSum12.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum13 = rowtotal.createCell(16);
    cellTotalSum13.setCellFormula(sumtotalagentcommrec);
    cellTotalSum13.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum14 = rowtotal.createCell(17);
    cellTotalSum14.setCellFormula(sumtotalpay);
    cellTotalSum14.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSum15 = rowtotal.createCell(18);
    cellTotalSum15.setCellFormula(sumtotalcomm);
    cellTotalSum15.setCellStyle(styleTotalTableNumber);

    //                       
    //        HSSFRow rowLL = sheet1.createRow(count1+1);
    //         rowLL.createCell(0).setCellStyle(styleBorderTop);
    //         rowLL.createCell(1).setCellStyle(styleBorderTop);
    //         rowLL.createCell(2).setCellStyle(styleBorderTop);
    //         rowLL.createCell(3).setCellStyle(styleBorderTop);
    //         rowLL.createCell(4).setCellStyle(styleBorderTop);
    //         rowLL.createCell(5).setCellStyle(styleBorderTop);
    //         rowLL.createCell(6).setCellStyle(styleBorderTop);
    //         rowLL.createCell(7).setCellStyle(styleBorderTop);
    //         rowLL.createCell(8).setCellStyle(styleBorderTop);
    //         rowLL.createCell(9).setCellStyle(styleBorderTop);
    //         rowLL.createCell(10).setCellStyle(styleBorderTop);
    //         rowLL.createCell(11).setCellStyle(styleBorderTop);
    //         rowLL.createCell(12).setCellStyle(styleBorderTop);
    //         rowLL.createCell(13).setCellStyle(styleBorderTop);
    //         rowLL.createCell(14).setCellStyle(styleBorderTop);
    //         rowLL.createCell(15).setCellStyle(styleBorderTop);
    //         rowLL.createCell(16).setCellStyle(styleBorderTop);
    //         rowLL.createCell(17).setCellStyle(styleBorderTop);

    //****************************************************************************************************************      
    // set Header Report (Row 1)
    HSSFCellStyle styleHeader03 = wb.createCellStyle();
    HSSFRow row31 = sheet2.createRow(0);
    HSSFCell cell31 = row31.createCell(0);
    cell31.setCellValue("List summary commission");
    styleHeader03.setFont(excelFunction.getHeaderFont(wb.createFont()));
    cell31.setCellStyle(styleHeader03);
    sheet2.addMergedRegion(CellRangeAddress.valueOf("A1:M1"));

    // Row 2
    HSSFRow row32 = sheet2.createRow(1);
    HSSFCell cell321 = row32.createCell(0);
    cell321.setCellValue("Agent Name : ");
    cell321.setCellStyle(styleAlignRight);
    sheet2.autoSizeColumn(0);
    HSSFCell cell322 = row32.createCell(1);
    cell322.setCellValue(ticketAgent.getAgentNamePage() != null && !"".equals(ticketAgent.getAgentNamePage())
            ? ticketAgent.getAgentNamePage()
            : "ALL");
    cell322.setCellStyle(styleAlignLeft);
    sheet2.autoSizeColumn(1);
    HSSFCell cell323 = row32.createCell(2);
    cell323.setCellValue("Issue date : ");
    cell323.setCellStyle(styleAlignRight);
    sheet2.autoSizeColumn(2);
    HSSFCell cell324 = row32.createCell(3);
    cell324.setCellValue(
            ticketAgent.getIssuefromdatePage() != null && !"".equals(ticketAgent.getIssuefromdatePage())
                    ? ticketAgent.getIssuefromdatePage()
                    : "ALL");
    cell324.setCellStyle(styleAlignLeft);
    sheet2.autoSizeColumn(3);
    HSSFCell cell325 = row32.createCell(4);
    cell325.setCellValue("Print By : ");
    cell325.setCellStyle(styleAlignRight);
    sheet2.autoSizeColumn(4);
    HSSFCell cell326 = row32.createCell(5);
    cell326.setCellValue(ticketAgent.getPrintbyPage() != null && !"".equals(ticketAgent.getPrintbyPage())
            ? ticketAgent.getPrintbyPage()
            : "ALL");
    cell326.setCellStyle(styleAlignLeft);
    sheet2.autoSizeColumn(5);

    // Row 3
    HSSFRow row33 = sheet2.createRow(2);
    HSSFCell cell331 = row33.createCell(0);
    cell331.setCellValue("Type Routing : ");
    cell331.setCellStyle(styleAlignRight);
    sheet2.autoSizeColumn(0);
    HSSFCell cell332 = row33.createCell(1);
    cell332.setCellValue(
            ticketAgent.getTypeRoutingPage() != null && !"".equals(ticketAgent.getTypeRoutingPage())
                    ? ticketAgent.getTypeRoutingPage()
                    : "ALL");
    cell332.setCellStyle(styleAlignLeft);
    sheet2.autoSizeColumn(1);
    HSSFCell cell333 = row33.createCell(2);
    cell333.setCellValue("Over Comm Date : ");
    cell333.setCellStyle(styleAlignRight);
    sheet2.autoSizeColumn(2);
    HSSFCell cell334 = row33.createCell(3);
    cell334.setCellValue(
            ticketAgent.getOverfromdatePage() != null && !"".equals(ticketAgent.getOverfromdatePage())
                    ? ticketAgent.getOverfromdatePage()
                    : "ALL");
    cell334.setCellStyle(styleAlignLeft);
    sheet2.autoSizeColumn(3);
    HSSFCell cell335 = row33.createCell(4);
    cell335.setCellValue("Add Pay Date : ");
    cell335.setCellStyle(styleAlignRight);
    sheet2.autoSizeColumn(4);
    HSSFCell cell336 = row33.createCell(5);
    cell336.setCellValue(
            ticketAgent.getAddpayfromdatePage() != null && !"".equals(ticketAgent.getAddpayfromdatePage())
                    ? ticketAgent.getAddpayfromdatePage()
                    : "ALL");
    cell336.setCellStyle(styleAlignLeft);
    sheet2.autoSizeColumn(5);

    // Row 4
    HSSFRow row34 = sheet2.createRow(3);
    HSSFCell cell341 = row34.createCell(0);
    cell341.setCellValue("Air : ");
    cell341.setCellStyle(styleAlignRight);
    sheet2.autoSizeColumn(0);
    HSSFCell cell342 = row34.createCell(1);
    cell342.setCellValue(
            ticketAgent.getAirlineCodePage() != null && !"".equals(ticketAgent.getAirlineCodePage())
                    ? ticketAgent.getAirlineCodePage()
                    : "ALL");
    cell342.setCellStyle(styleAlignLeft);
    sheet2.autoSizeColumn(1);
    HSSFCell cell343 = row34.createCell(2);
    cell343.setCellValue("Little Comm date : ");
    cell343.setCellStyle(styleAlignRight);
    sheet2.autoSizeColumn(2);
    HSSFCell cell344 = row34.createCell(3);
    cell344.setCellValue(
            ticketAgent.getLittlefromdatePage() != null && !"".equals(ticketAgent.getLittlefromdatePage())
                    ? ticketAgent.getLittlefromdatePage()
                    : "ALL");
    cell344.setCellStyle(styleAlignLeft);
    sheet2.autoSizeColumn(3);
    HSSFCell cell345 = row34.createCell(4);
    cell345.setCellValue("Decrease Pay Date : ");
    cell345.setCellStyle(styleAlignRight);
    sheet2.autoSizeColumn(4);
    HSSFCell cell346 = row34.createCell(5);
    cell346.setCellValue(ticketAgent.getDecreasepayfromdatePage() != null
            && !"".equals(ticketAgent.getDecreasepayfromdatePage()) ? ticketAgent.getDecreasepayfromdatePage()
                    : "ALL");
    cell346.setCellStyle(styleAlignLeft);
    sheet2.autoSizeColumn(5);

    // Row 5
    HSSFRow row35 = sheet2.createRow(4);
    HSSFCell cell351 = row35.createCell(0);
    cell351.setCellValue("Routing Detail : ");
    cell351.setCellStyle(styleAlignRight);
    sheet2.autoSizeColumn(0);
    HSSFCell cell352 = row35.createCell(1);
    cell352.setCellValue(
            ticketAgent.getRoutingDetailPage() != null && !"".equals(ticketAgent.getRoutingDetailPage())
                    ? ticketAgent.getRoutingDetailPage()
                    : "ALL");
    cell352.setCellStyle(styleAlignLeft);
    sheet2.autoSizeColumn(1);
    HSSFCell cell353 = row35.createCell(2);
    cell353.setCellValue("Agent Comm Rev Date : ");
    cell353.setCellStyle(styleAlignRight);
    sheet2.autoSizeColumn(2);
    HSSFCell cell354 = row35.createCell(3);
    cell354.setCellValue(
            ticketAgent.getAgentcomfromdatePage() != null && !"".equals(ticketAgent.getAgentcomfromdatePage())
                    ? ticketAgent.getAgentcomfromdatePage()
                    : "ALL");
    cell354.setCellStyle(styleAlignLeft);
    sheet2.autoSizeColumn(3);
    HSSFCell cell355 = row35.createCell(4);
    cell355.setCellValue("Ticket No : ");
    cell355.setCellStyle(styleAlignRight);
    sheet2.autoSizeColumn(4);
    HSSFCell cell356 = row35.createCell(5);
    cell356.setCellValue(
            ticketAgent.getTicketnoPagePage() != null && !"".equals(ticketAgent.getTicketnoPagePage())
                    ? ticketAgent.getTicketnoPagePage()
                    : "ALL");
    cell356.setCellStyle(styleAlignLeft);
    sheet2.autoSizeColumn(5);

    // Row 6
    HSSFRow row36 = sheet2.createRow(5);
    HSSFCell cell361 = row36.createCell(0);
    cell361.setCellValue("Sale Staff : ");
    cell361.setCellStyle(styleAlignRight);
    HSSFCell cell362 = row36.createCell(1);
    cell362.setCellValue(ticketAgent.getSalebyNamePage() != null && !"".equals(ticketAgent.getSalebyNamePage())
            ? ticketAgent.getSalebyNamePage()
            : "ALL");
    cell362.setCellStyle(styleAlignLeft);
    HSSFCell cell363 = row36.createCell(2);
    cell363.setCellValue("Refund Comm Date : ");
    cell363.setCellStyle(styleAlignRight);
    HSSFCell cell364 = row36.createCell(3);
    cell364.setCellValue(
            ticketAgent.getComrefundfromdatePage() != null && !"".equals(ticketAgent.getComrefundfromdatePage())
                    ? ticketAgent.getComrefundfromdatePage()
                    : "ALL");
    cell364.setCellStyle(styleAlignLeft);
    HSSFCell cell365 = row36.createCell(4);
    cell365.setCellValue("Ticket Comm Date : ");
    cell365.setCellStyle(styleAlignRight);
    HSSFCell cell366 = row36.createCell(5);
    cell366.setCellValue(
            ticketAgent.getTicketcomfromdatePage() != null && !"".equals(ticketAgent.getTicketcomfromdatePage())
                    ? ticketAgent.getTicketcomfromdatePage()
                    : "ALL");
    cell366.setCellStyle(styleAlignLeft);

    // Row 7
    HSSFRow row37 = sheet2.createRow(6);
    HSSFCell cell371 = row37.createCell(0);
    cell371.setCellValue("Department : ");
    cell371.setCellStyle(styleAlignRight);
    HSSFCell cell372 = row37.createCell(1);
    cell372.setCellValue(ticketAgent.getDepartmentPage() != null && !"".equals(ticketAgent.getDepartmentPage())
            ? ticketAgent.getDepartmentPage()
            : "ALL");
    cell372.setCellStyle(styleAlignLeft);
    HSSFCell cell373 = row37.createCell(2);
    cell373.setCellValue("Invoice Date : ");
    cell373.setCellStyle(styleAlignRight);
    HSSFCell cell374 = row37.createCell(3);
    cell374.setCellValue(
            ticketAgent.getInvoicefromdatePage() != null && !"".equals(ticketAgent.getInvoicefromdatePage())
                    ? ticketAgent.getInvoicefromdatePage()
                    : "ALL");
    cell374.setCellStyle(styleAlignLeft);
    HSSFCell cell375 = row37.createCell(4);
    cell375.setCellValue("Print on : ");
    cell375.setCellStyle(styleAlignRight);
    HSSFCell cell376 = row37.createCell(5);
    cell376.setCellValue(ticketAgent.getPrintonPage() != null && !"".equals(ticketAgent.getPrintonPage())
            ? ticketAgent.getPrintonPage()
            : "ALL");
    cell376.setCellStyle(styleAlignLeft);

    // Row 8
    HSSFRow row38 = sheet2.createRow(7);
    HSSFCell cell381 = row38.createCell(0);
    cell381.setCellValue("Term Pay : ");
    cell381.setCellStyle(styleAlignRight);
    HSSFCell cell382 = row38.createCell(1);
    cell382.setCellValue(ticketAgent.getTermPayPage() != null && !"".equals(ticketAgent.getTermPayPage())
            ? ticketAgent.getTermPayPage()
            : "ALL");
    cell382.setCellStyle(styleAlignLeft);
    HSSFCell cell383 = row38.createCell(2);
    cell383.setCellValue("Page : ");
    cell383.setCellStyle(styleAlignRight);
    HSSFCell cell384 = row38.createCell(3);
    cell384.setCellValue("1 ");
    cell384.setCellStyle(styleAlignLeft);

    // Header Table
    HSSFRow row39 = sheet2.createRow(9);

    HSSFCell cell396 = row39.createCell(0);
    cell396.setCellValue("Agent");
    cell396.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(0);

    HSSFCell cell399 = row39.createCell(1);
    cell399.setCellValue("Pax");
    cell399.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(1);

    HSSFCell cell3104 = row39.createCell(2);
    cell3104.setCellValue("Amount Wendy");
    cell3104.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(2);

    HSSFCell cell3105 = row39.createCell(3);
    cell3105.setCellValue("Amount Outbound");
    cell3105.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(3);

    HSSFCell cell3106 = row39.createCell(4);
    cell3106.setCellValue("Amount Inbound");
    cell3106.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(4);

    HSSFCell cell3107 = row39.createCell(5);
    cell3107.setCellValue("Sale");
    cell3107.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(5);

    HSSFCell cell3108 = row39.createCell(6);
    cell3108.setCellValue("Cost");
    cell3108.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(6);

    HSSFCell cell3109 = row39.createCell(7);
    cell3109.setCellValue("Over Comm");
    cell3109.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(7);

    HSSFCell cell3110 = row39.createCell(8);
    cell3110.setCellValue("Add Pay");
    cell3110.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(8);

    HSSFCell cell3111 = row39.createCell(9);
    cell3111.setCellValue("Drecrease Pay");
    cell3111.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(9);

    HSSFCell cell3116 = row39.createCell(10);
    cell3116.setCellValue("Profit");
    cell3116.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(10);

    HSSFCell cell3112 = row39.createCell(11);
    cell3112.setCellValue("Comm");
    cell3112.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(11);

    HSSFCell cell3113 = row39.createCell(12);
    cell3113.setCellValue("Little Comm");
    cell3113.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(12);

    HSSFCell cell3114 = row39.createCell(13);
    cell3114.setCellValue("Agent[Comm] Pay");
    cell3114.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(13);

    HSSFCell cell3115 = row39.createCell(14);
    cell3115.setCellValue("Agent[Comm] Receive");
    cell3115.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(14);

    HSSFCell cell3117 = row39.createCell(15);
    cell3117.setCellValue("Pay");
    cell3117.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(15);

    HSSFCell cell3118 = row39.createCell(16);
    cell3118.setCellValue("Net Comm Receive");
    cell3118.setCellStyle(styleAlignRightBorderAllHeaderTable);
    sheet2.autoSizeColumn(16);

    int count2 = 10 + listAgent.size();

    if (listAgent != null) {
        for (int r = 10; r < count2; r++) {
            HSSFRow row = sheet2.createRow(r);
            HSSFCell cell1 = row.createCell(0);
            cell1.setCellValue(listAgent.get(r - 10).getAgentname());
            cell1.setCellStyle(styleDetailTable);
            HSSFCell cell2 = row.createCell(1);
            BigDecimal pax = new BigDecimal(
                    "".equals(listAgent.get(r - 10).getPax()) ? "0" : listAgent.get(r - 10).getPax());
            cell2.setCellValue((pax != null) ? pax.doubleValue() : new BigDecimal("0").doubleValue());
            cell2.setCellStyle(stylePaxNumber);
            HSSFCell cell13 = row.createCell(2);
            BigDecimal amountwendy = new BigDecimal("".equals(listAgent.get(r - 10).getAmountwendy()) ? "0"
                    : listAgent.get(r - 10).getAmountwendy());
            cell13.setCellValue(
                    (amountwendy != null) ? amountwendy.doubleValue() : new BigDecimal("0").doubleValue());
            cell13.setCellStyle(styleDetailTableNumber);
            HSSFCell cell26 = row.createCell(3);
            BigDecimal amountout = new BigDecimal("".equals(listAgent.get(r - 10).getAmountoutbound()) ? "0"
                    : listAgent.get(r - 10).getAmountoutbound());
            cell26.setCellValue(
                    (amountout != null) ? amountout.doubleValue() : new BigDecimal("0").doubleValue());
            cell26.setCellStyle(styleDetailTableNumber);
            HSSFCell cell14 = row.createCell(4);
            BigDecimal amountin = new BigDecimal("".equals(listAgent.get(r - 10).getAmountinbound()) ? "0"
                    : listAgent.get(r - 10).getAmountinbound());
            cell14.setCellValue(
                    (amountin != null) ? amountin.doubleValue() : new BigDecimal("0").doubleValue());
            cell14.setCellStyle(styleDetailTableNumber);
            HSSFCell cell15 = row.createCell(5);
            BigDecimal sale = new BigDecimal(
                    "".equals(listAgent.get(r - 10).getSale()) ? "0" : listAgent.get(r - 10).getSale());
            cell15.setCellValue((sale != null) ? sale.doubleValue() : new BigDecimal("0").doubleValue());
            cell15.setCellStyle(styleDetailTableNumber);
            HSSFCell cell16 = row.createCell(6);
            BigDecimal cost = new BigDecimal(
                    "".equals(listAgent.get(r - 10).getCost()) ? "0" : listAgent.get(r - 10).getCost());
            cell16.setCellValue((cost != null) ? cost.doubleValue() : new BigDecimal("0").doubleValue());
            cell16.setCellStyle(styleDetailTableNumber);
            HSSFCell cell17 = row.createCell(7);
            BigDecimal over = new BigDecimal(
                    "".equals(listAgent.get(r - 10).getOver()) ? "0" : listAgent.get(r - 10).getOver());
            cell17.setCellValue((over != null) ? over.doubleValue() : new BigDecimal("0").doubleValue());
            cell17.setCellStyle(styleDetailTableNumber);
            HSSFCell cell18 = row.createCell(8);
            BigDecimal add = new BigDecimal(
                    "".equals(listAgent.get(r - 10).getAdd()) ? "0" : listAgent.get(r - 10).getAdd());
            cell18.setCellValue((add != null) ? add.doubleValue() : new BigDecimal("0").doubleValue());
            cell18.setCellStyle(styleDetailTableNumber);
            HSSFCell cell19 = row.createCell(9);
            BigDecimal dres = new BigDecimal(
                    "".equals(listAgent.get(r - 10).getDres()) ? "0" : listAgent.get(r - 10).getDres());
            cell19.setCellValue((dres != null) ? dres.doubleValue() : new BigDecimal("0").doubleValue());
            cell19.setCellStyle(styleDetailTableNumber);
            HSSFCell cell20 = row.createCell(10);
            BigDecimal profit = new BigDecimal(
                    "".equals(listAgent.get(r - 10).getProfit()) ? "0" : listAgent.get(r - 10).getProfit());
            cell20.setCellValue((profit != null) ? profit.doubleValue() : new BigDecimal("0").doubleValue());
            cell20.setCellStyle(styleDetailTableNumber);
            HSSFCell cell2205 = row.createCell(11);
            BigDecimal ticcom = new BigDecimal(
                    "".equals(listAgent.get(r - 10).getTiccomm()) ? "0" : listAgent.get(r - 10).getTiccomm());
            cell2205.setCellValue((ticcom != null) ? ticcom.doubleValue() : new BigDecimal("0").doubleValue());
            cell2205.setCellStyle(styleDetailTableNumber);
            HSSFCell cell212 = row.createCell(12);
            BigDecimal little = new BigDecimal(
                    "".equals(listAgent.get(r - 10).getLittle()) ? "0" : listAgent.get(r - 10).getLittle());
            cell212.setCellValue((little != null) ? little.doubleValue() : new BigDecimal("0").doubleValue());
            cell212.setCellStyle(styleDetailTableNumber);
            HSSFCell cell22 = row.createCell(13);
            BigDecimal agentcommpay = new BigDecimal("".equals(listAgent.get(r - 10).getAgentcommpay()) ? "0"
                    : listAgent.get(r - 10).getAgentcommpay());
            cell22.setCellValue(
                    (agentcommpay != null) ? agentcommpay.doubleValue() : new BigDecimal("0").doubleValue());
            cell22.setCellStyle(styleDetailTableNumber);
            HSSFCell cell23 = row.createCell(14);
            BigDecimal agentcommrec = new BigDecimal("".equals(listAgent.get(r - 10).getAgentcommrec()) ? "0"
                    : listAgent.get(r - 10).getAgentcommrec());
            cell23.setCellValue(
                    (agentcommrec != null) ? agentcommrec.doubleValue() : new BigDecimal("0").doubleValue());
            cell23.setCellStyle(styleDetailTableNumber);
            HSSFCell cell24 = row.createCell(15);
            BigDecimal pay = new BigDecimal(
                    "".equals(listAgent.get(r - 10).getPay()) ? "0" : listAgent.get(r - 10).getPay());
            cell24.setCellValue((pay != null) ? pay.doubleValue() : new BigDecimal("0").doubleValue());
            cell24.setCellStyle(styleDetailTableNumber);
            HSSFCell cell25 = row.createCell(16);
            BigDecimal comm = new BigDecimal(
                    "".equals(listAgent.get(r - 10).getComm()) ? "0" : listAgent.get(r - 10).getComm());
            cell25.setCellValue((comm != null) ? comm.doubleValue() : new BigDecimal("0").doubleValue());
            cell25.setCellStyle(styleDetailTableNumber);

        }
        for (int i = 0; i < 25; i++) {
            sheet2.autoSizeColumn(i);
        }
    }

    for (int i = 0; i < 30; i++) {
        sheet.autoSizeColumn(i);
        sheet1.autoSizeColumn(i);
        sheet2.autoSizeColumn(i);
    }

    HSSFRow rowtotalAgent = sheet2.createRow(count2);
    String sumtotalpaxAgent = "SUM(B" + 11 + ":B" + (count2) + ")";
    String sumtotalamountwenAgent = "SUM(C" + 11 + ":C" + (count2) + ")";
    String sumtotalamountoutAgent = "SUM(D" + 11 + ":D" + (count2) + ")";
    String sumtotalamountinAgent = "SUM(E" + 11 + ":E" + (count2) + ")";
    String sumtotalsaleAgent = "SUM(F" + 11 + ":F" + (count2) + ")";
    String sumtotalcostAgent = "SUM(G" + 11 + ":G" + (count2) + ")";
    String sumtotaloverAgent = "SUM(H" + 11 + ":H" + (count2) + ")";
    String sumtotaladdAgent = "SUM(I" + 11 + ":I" + (count2) + ")";
    String sumtotaldresAgent = "SUM(J" + 11 + ":J" + (count2) + ")";
    String sumtotalprofitAgent = "SUM(K" + 11 + ":K" + (count2) + ")";
    String sumtotalticketcommAgent = "SUM(L" + 11 + ":L" + (count2) + ")";
    String sumtotallittleAgent = "SUM(M" + 11 + ":M" + (count2) + ")";
    String sumtotalagentcommpayAgent = "SUM(N" + 11 + ":N" + (count2) + ")";
    String sumtotalagentcommrecAgent = "SUM(O" + 11 + ":O" + (count2) + ")";
    String sumtotalpayAgent = "SUM(P" + 11 + ":P" + (count2) + ")";
    String sumtotalcommAgent = "SUM(Q" + 11 + ":Q" + (count2) + ")";
    //            sheetIncSum.addMergedRegion(CellRangeAddress.valueOf("A"+(count + x + 2)+":B"+(count + x + 2)));
    //            sheetIncSum.addMergedRegion(CellRangeAddress.valueOf("D"+(count + x + 2)+":E"+(count + x + 2)));
    HSSFCell cellTotalSumAgent0 = rowtotalAgent.createCell(0);
    cellTotalSumAgent0.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumAgent1 = rowtotalAgent.createCell(1);
    cellTotalSumAgent1.setCellFormula(sumtotalpaxAgent);
    cellTotalSumAgent1.setCellStyle(stylePaxNumberTotal);
    HSSFCell cellTotalSumAgent2 = rowtotalAgent.createCell(2);
    cellTotalSumAgent2.setCellFormula(sumtotalamountwenAgent);
    cellTotalSumAgent2.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumAgent3 = rowtotalAgent.createCell(3);
    cellTotalSumAgent3.setCellFormula(sumtotalamountoutAgent);
    cellTotalSumAgent3.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumAgent4 = rowtotalAgent.createCell(4);
    cellTotalSumAgent4.setCellFormula(sumtotalamountinAgent);
    cellTotalSumAgent4.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumAgent5 = rowtotalAgent.createCell(5);
    cellTotalSumAgent5.setCellFormula(sumtotalsaleAgent);
    cellTotalSumAgent5.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumAgent6 = rowtotalAgent.createCell(6);
    cellTotalSumAgent6.setCellFormula(sumtotalcostAgent);
    cellTotalSumAgent6.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumAgent7 = rowtotalAgent.createCell(7);
    cellTotalSumAgent7.setCellFormula(sumtotaloverAgent);
    cellTotalSumAgent7.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumAgent8 = rowtotalAgent.createCell(8);
    cellTotalSumAgent8.setCellFormula(sumtotaladdAgent);
    cellTotalSumAgent8.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumAgent9 = rowtotalAgent.createCell(9);
    cellTotalSumAgent9.setCellFormula(sumtotaldresAgent);
    cellTotalSumAgent9.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumAgent10 = rowtotalAgent.createCell(10);
    cellTotalSumAgent10.setCellFormula(sumtotalprofitAgent);
    cellTotalSumAgent10.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumAgent11 = rowtotalAgent.createCell(11);
    cellTotalSumAgent11.setCellFormula(sumtotalticketcommAgent);
    cellTotalSumAgent11.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumAgent12 = rowtotalAgent.createCell(12);
    cellTotalSumAgent12.setCellFormula(sumtotallittleAgent);
    cellTotalSumAgent12.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumAgent13 = rowtotalAgent.createCell(13);
    cellTotalSumAgent13.setCellFormula(sumtotalagentcommpayAgent);
    cellTotalSumAgent13.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumAgent14 = rowtotalAgent.createCell(14);
    cellTotalSumAgent14.setCellFormula(sumtotalagentcommrecAgent);
    cellTotalSumAgent14.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumAgent15 = rowtotalAgent.createCell(15);
    cellTotalSumAgent15.setCellFormula(sumtotalpayAgent);
    cellTotalSumAgent15.setCellStyle(styleTotalTableNumber);
    HSSFCell cellTotalSumAgent16 = rowtotalAgent.createCell(16);
    cellTotalSumAgent16.setCellFormula(sumtotalcommAgent);
    cellTotalSumAgent16.setCellStyle(styleTotalTableNumber);

    //        HSSFRow rowLLL = sheet2.createRow(count2);
    //         rowLLL.createCell(0).setCellStyle(styleBorderTop);
    //         rowLLL.createCell(1).setCellStyle(styleBorderTop);
    //         rowLLL.createCell(2).setCellStyle(styleBorderTop);
    //         rowLLL.createCell(3).setCellStyle(styleBorderTop);
    //         rowLLL.createCell(4).setCellStyle(styleBorderTop);
    //         rowLLL.createCell(5).setCellStyle(styleBorderTop);
    //         rowLLL.createCell(6).setCellStyle(styleBorderTop);
    //         rowLLL.createCell(7).setCellStyle(styleBorderTop);
    //         rowLLL.createCell(8).setCellStyle(styleBorderTop);
    //         rowLLL.createCell(9).setCellStyle(styleBorderTop);
    //         rowLLL.createCell(10).setCellStyle(styleBorderTop);
    //         rowLLL.createCell(11).setCellStyle(styleBorderTop);
    //         rowLLL.createCell(12).setCellStyle(styleBorderTop);
    //         rowLLL.createCell(13).setCellStyle(styleBorderTop);
    //    rowLLL.createCell(14).setCellStyle(styleBorderTop);    
    //         rowLLL.createCell(15).setCellStyle(styleBorderTop);  
    //         rowLLL.createCell(16).setCellStyle(styleBorderTop); 

    sheet.setColumnWidth(5, 256 * 40);
    sheet.setColumnWidth(30, 256 * 12);
    sheet1.setColumnWidth(13, 256 * 12);
    sheet2.setColumnWidth(0, 256 * 40);
}

From source file:com.smi.travel.controller.excel.checking.OverdueSummaryExcel.java

private void getStockInvoiceSummary(HSSFWorkbook wb, List stockInvoiceSummary) {
    String sheetStockInvoiceSummary = "StockInvoiceSummary";// name of sheet

    UtilityExcelFunction excelFunction = new UtilityExcelFunction();

    HSSFSheet sheet = wb.createSheet(sheetStockInvoiceSummary);

    HSSFDataFormat currency = wb.createDataFormat();
    // Set align Text
    HSSFCellStyle styleC21 = wb.createCellStyle();
    styleC21.setAlignment(styleC21.ALIGN_RIGHT);
    HSSFCellStyle styleC22 = wb.createCellStyle();
    styleC22.setAlignment(styleC22.ALIGN_LEFT);
    HSSFCellStyle styleC23 = wb.createCellStyle();
    styleC23.setAlignment(styleC23.ALIGN_CENTER);

    HSSFCellStyle styleC25 = wb.createCellStyle();
    styleC25.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC25.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC25.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC25.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC25.setVerticalAlignment(styleC25.VERTICAL_CENTER);
    styleC25.setDataFormat(currency.getFormat("#,##0.00"));

    HSSFCellStyle styleC26 = wb.createCellStyle();
    styleC26.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC26.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC26.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC26.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC26.setDataFormat(currency.getFormat("#,##0"));
    styleC26.setAlignment(styleC22.ALIGN_CENTER);

    HSSFCellStyle styleC27 = wb.createCellStyle();
    styleC27.setAlignment(styleC27.ALIGN_RIGHT);
    styleC27.setDataFormat(currency.getFormat("#,##0.00"));

    HSSFCellStyle styleC28 = wb.createCellStyle();
    styleC28.setAlignment(styleC28.ALIGN_CENTER);
    styleC28.setDataFormat(currency.getFormat("#,##0"));

    HSSFCellStyle styleC29 = wb.createCellStyle();
    styleC29.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC29.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC29.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC29.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC29.setVerticalAlignment(styleC29.VERTICAL_CENTER);

    HSSFCellStyle styleC30 = wb.createCellStyle();
    styleC30.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC30.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC30.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC30.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC30.setAlignment(styleC30.ALIGN_CENTER);
    styleC30.setVerticalAlignment(styleC30.VERTICAL_CENTER);

    HSSFCellStyle styleC31 = wb.createCellStyle();
    styleC31.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC31.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC31.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC31.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC31.setDataFormat(currency.getFormat("#,##0.00"));

    HSSFCellStyle styleC32 = wb.createCellStyle();
    styleC32.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC32.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC32.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC32.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC32.setAlignment(styleC32.ALIGN_CENTER);
    styleC32.setVerticalAlignment(styleC32.VERTICAL_CENTER);
    styleC32.setWrapText(true);//ww  w.  j  a  v a2  s .  c  om

    HSSFCellStyle styleC33 = wb.createCellStyle();
    styleC33.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC33.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC33.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styleC33.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC33.setAlignment(styleC33.ALIGN_LEFT);
    styleC33.setVerticalAlignment(styleC33.VERTICAL_CENTER);
    styleC33.setWrapText(true);

    StockInvoiceSummaryView dataheader = (StockInvoiceSummaryView) stockInvoiceSummary.get(0);

    // set Header Report (Row 1)
    HSSFCellStyle styleC1 = wb.createCellStyle();
    HSSFRow row1 = sheet.createRow(0);
    HSSFCell cell1 = row1.createCell(0);
    cell1.setCellValue("Stock Invoice Summary");
    styleC1.setFont(excelFunction.getHeaderFont(wb.createFont()));
    cell1.setCellStyle(styleC1);
    sheet.addMergedRegion(CellRangeAddress.valueOf("A1:F1"));

    // Row 2
    HSSFRow row2 = sheet.createRow(1);
    HSSFCell cell21 = row2.createCell(0);
    cell21.setCellValue("Product : ");
    cell21.setCellStyle(styleC21);
    HSSFCell cell22 = row2.createCell(1);
    cell22.setCellValue(dataheader.getProductHeader());
    cell22.setCellStyle(styleC22);
    sheet.addMergedRegion(CellRangeAddress.valueOf("B2:D2"));
    HSSFCell cell23 = row2.createCell(4);
    cell23.setCellValue("Inv To : ");
    cell23.setCellStyle(styleC21);
    HSSFCell cell24 = row2.createCell(5);
    cell24.setCellValue(dataheader.getInvtoHeader());
    cell24.setCellStyle(styleC22);
    sheet.addMergedRegion(CellRangeAddress.valueOf("F2:I2"));

    // Row 3
    HSSFRow row3 = sheet.createRow(2);
    HSSFCell cell31 = row3.createCell(0);
    cell31.setCellValue("Effective Date : ");
    cell31.setCellStyle(styleC21);
    HSSFCell cell32 = row3.createCell(1);
    cell32.setCellValue(dataheader.getEffectivedateHeader());
    cell32.setCellStyle(styleC22);
    sheet.addMergedRegion(CellRangeAddress.valueOf("B3:D3"));
    HSSFCell cell33 = row3.createCell(4);
    cell33.setCellValue("Invoice Date : ");
    cell33.setCellStyle(styleC21);
    HSSFCell cell34 = row3.createCell(5);
    cell34.setCellValue(dataheader.getInvoicedateHeader());
    cell34.setCellStyle(styleC22);
    sheet.addMergedRegion(CellRangeAddress.valueOf("F3:I3"));

    // Row 4
    HSSFRow row4 = sheet.createRow(3);
    HSSFCell cell41 = row4.createCell(0);
    cell41.setCellValue("Add Date : ");
    cell41.setCellStyle(styleC21);
    HSSFCell cell42 = row4.createCell(1);
    cell42.setCellValue(dataheader.getAdddateHeader());
    cell42.setCellStyle(styleC22);
    sheet.addMergedRegion(CellRangeAddress.valueOf("B4:D4"));

    // Header Table
    HSSFCellStyle styleC3 = wb.createCellStyle();
    styleC3.setFont(excelFunction.getHeaderTable(wb.createFont()));
    styleC3.setAlignment(styleC3.ALIGN_CENTER);
    styleC3.setVerticalAlignment(styleC3.VERTICAL_CENTER);
    styleC3.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    styleC3.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styleC3.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styleC3.setBorderTop(HSSFCellStyle.BORDER_THIN);

    HSSFCellStyle styletop = wb.createCellStyle();
    styletop.setBorderTop(HSSFCellStyle.BORDER_THIN);
    styletop.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    styletop.setBorderRight(HSSFCellStyle.BORDER_THIN);
    styletop.setAlignment(styletop.ALIGN_CENTER);
    styletop.setFont(excelFunction.getHeaderTable(wb.createFont()));
    styletop.setVerticalAlignment(styletop.VERTICAL_CENTER);

    HSSFCellStyle stylebottom = wb.createCellStyle();
    stylebottom.setBorderBottom(HSSFCellStyle.BORDER_THIN);
    stylebottom.setBorderLeft(HSSFCellStyle.BORDER_THIN);
    stylebottom.setBorderRight(HSSFCellStyle.BORDER_THIN);
    stylebottom.setAlignment(styletop.ALIGN_CENTER);
    stylebottom.setFont(excelFunction.getHeaderTable(wb.createFont()));
    stylebottom.setVerticalAlignment(styletop.VERTICAL_CENTER);

    HSSFRow row5 = sheet.createRow(5);
    HSSFCell cell51 = row5.createCell(0);
    cell51.setCellValue("Item No");
    cell51.setCellStyle(styletop);
    HSSFCell cell62 = row5.createCell(1);
    cell62.setCellValue("Item type");
    cell62.setCellStyle(styletop);
    HSSFCell cell63 = row5.createCell(2);
    cell63.setCellValue("Ref No");
    cell63.setCellStyle(styletop);
    HSSFCell cell64 = row5.createCell(3);
    cell64.setCellValue("Owner");
    cell64.setCellStyle(styletop);
    HSSFCell cell65 = row5.createCell(4);
    cell65.setCellValue("Inv No");
    cell65.setCellStyle(styletop);
    HSSFCell cell66 = row5.createCell(5);
    cell66.setCellValue("Inv Name");
    cell66.setCellStyle(styletop);
    sheet.autoSizeColumn(5);
    HSSFCell cell67 = row5.createCell(6);
    cell67.setCellValue("Inv Date");
    cell67.setCellStyle(styletop);
    HSSFCell cell68 = row5.createCell(7);
    cell68.setCellValue("Cost");
    cell68.setCellStyle(styletop);
    HSSFCell cell69 = row5.createCell(8);
    cell69.setCellValue("Sale Price");
    cell69.setCellStyle(styletop);
    HSSFCell cell610 = row5.createCell(9);
    cell610.setCellValue("Profit");
    cell610.setCellStyle(styletop);
    HSSFCell cell611 = row5.createCell(10);
    cell611.setCellValue("Stock No");
    cell611.setCellStyle(styletop);

    //Detail of Table
    int count = 6;
    boolean isMerge = false;
    int hMerge = 7;
    int countMerge = 0;

    for (int i = 0; i < stockInvoiceSummary.size(); i++) {
        StockInvoiceSummaryView data = (StockInvoiceSummaryView) stockInvoiceSummary.get(i);
        StockInvoiceSummaryView dataTemp = new StockInvoiceSummaryView();
        if (i != stockInvoiceSummary.size() - 1) {
            dataTemp = (StockInvoiceSummaryView) stockInvoiceSummary.get(i + 1);

        } else {
            dataTemp = null;
        }

        HSSFRow row = sheet.createRow(count + i);
        String id = (data.getId() != null ? data.getId() : "");
        String idTemp = (dataTemp != null ? dataTemp.getId() : "");
        countMerge++;

        HSSFCell celldata0 = row.createCell(0);
        celldata0.setCellValue(
                !"".equalsIgnoreCase(data.getItemno()) && data.getItemno() != null ? data.getItemno() : "");
        celldata0.setCellStyle(styleC30);

        HSSFCell celldata1 = row.createCell(1);
        celldata1.setCellValue(
                !"".equalsIgnoreCase(data.getItemtype()) && data.getItemtype() != null ? data.getItemtype()
                        : "");
        celldata1.setCellStyle(styleC30);

        HSSFCell celldata2 = row.createCell(2);
        celldata2.setCellValue(
                !"".equalsIgnoreCase(data.getRefno()) && data.getRefno() != null ? data.getRefno() : "");
        celldata2.setCellStyle(styleC30);

        HSSFCell celldata3 = row.createCell(3);
        celldata3.setCellValue(
                !"".equalsIgnoreCase(data.getOwner()) && data.getOwner() != null ? data.getOwner() : "");
        celldata3.setCellStyle(styleC30);

        HSSFCell celldata4 = row.createCell(4);
        celldata4.setCellValue(
                !"".equalsIgnoreCase(data.getInvno()) && data.getInvno() != null ? data.getInvno() : "");
        celldata4.setCellStyle(styleC33);

        HSSFCell celldata5 = row.createCell(5);
        celldata5.setCellValue(
                !"".equalsIgnoreCase(data.getInvname()) && data.getInvname() != null ? data.getInvname() : "");
        celldata5.setCellStyle(styleC29);

        HSSFCell celldata6 = row.createCell(6);
        celldata6.setCellValue(
                !"".equalsIgnoreCase(data.getInvdate()) && data.getInvdate() != null ? data.getInvdate() : "");
        celldata6.setCellStyle(styleC33);

        HSSFCell celldata7 = row.createCell(7);
        celldata7.setCellValue(!"".equalsIgnoreCase(data.getCost()) && data.getCost() != null
                ? new BigDecimal(data.getCost()).doubleValue()
                : 0);
        celldata7.setCellStyle(styleC25);

        HSSFCell celldata8 = row.createCell(8);
        celldata8.setCellValue(!"".equalsIgnoreCase(data.getSaleprice()) && data.getSaleprice() != null
                ? new BigDecimal(data.getSaleprice()).doubleValue()
                : 0);
        celldata8.setCellStyle(styleC25);

        HSSFCell celldata9 = row.createCell(9);
        celldata9.setCellValue(!"".equalsIgnoreCase(data.getProfit()) && data.getProfit() != null
                ? new BigDecimal(data.getProfit()).doubleValue()
                : 0);
        celldata9.setCellStyle(styleC25);

        HSSFCell celldata10 = row.createCell(10);
        celldata10.setCellValue(
                !"".equalsIgnoreCase(data.getStockno()) && data.getStockno() != null ? data.getStockno() : "");
        celldata10.setCellStyle(styleC29);

        //            HSSFCell celldata11 = row.createCell(11);
        //            celldata11.setCellValue(!"".equalsIgnoreCase(data.getId()) && data.getId() != null ? data.getId() : "");
        //            celldata11.setCellStyle(styleC29);

        if (!id.equalsIgnoreCase(idTemp) && (!"".equalsIgnoreCase(id) || !"".equalsIgnoreCase(idTemp))) {
            if (countMerge > 1) {
                sheet.addMergedRegion(
                        CellRangeAddress.valueOf("H" + (hMerge) + ":H" + (hMerge + (countMerge - 1))));
                sheet.addMergedRegion(
                        CellRangeAddress.valueOf("I" + (hMerge) + ":I" + (hMerge + (countMerge - 1))));
                sheet.addMergedRegion(
                        CellRangeAddress.valueOf("J" + (hMerge) + ":J" + (hMerge + (countMerge - 1))));
                sheet.addMergedRegion(
                        CellRangeAddress.valueOf("K" + (hMerge) + ":K" + (hMerge + (countMerge - 1))));
            }

            hMerge = 7 + i + 1;
            countMerge = 0;
        }

        //            HSSFCell celldata11 = row.createCell(11);
        //            celldata11.setCellValue(!"".equalsIgnoreCase(data.getId()) && data.getId() != null ? data.getId() : "");
        //            celldata11.setCellStyle(styleC29);

    }

    for (int j = 0; j < 11; j++) {
        sheet.autoSizeColumn(j);
    }

    //        sheet.setColumnWidth(0, 256*15);
    //        sheet.setColumnWidth(1, 256*15);
    //        sheet.setColumnWidth(2, 256*15);
    sheet.setColumnWidth(6, 256 * 10);
    sheet.setColumnWidth(7, 256 * 15);
    sheet.setColumnWidth(8, 256 * 15);
    sheet.setColumnWidth(9, 256 * 15);
    sheet.setColumnWidth(10, 256 * 60);
    //        sheet.setColumnWidth(11, 256*15);
    //        sheet.setColumnWidth(12, 256*15);
    //        sheet.setColumnWidth(13, 256*15);
    //        sheet.setColumnWidth(14, 256*15);
    //        sheet.setColumnWidth(15, 256*15);
    //        sheet.setColumnWidth(16, 256*15);
    //        sheet.setColumnWidth(17, 256*15);
    //        sheet.setColumnWidth(18, 256*15);
    //        sheet.setColumnWidth(19, 256*15);

}

From source file:com.smi.travel.migration.MainMigrate.java

public static void ExportTravoxReport(List<MainMigrateModel> list) {
    UtilityExcelFunction excelFunction = new UtilityExcelFunction();
    HSSFWorkbook wb = new HSSFWorkbook();
    HSSFCellStyle styleC1 = wb.createCellStyle();
    // Set align Text
    HSSFCellStyle styleC21 = wb.createCellStyle();
    styleC21.setAlignment(styleC21.ALIGN_RIGHT);
    HSSFCellStyle styleC22 = wb.createCellStyle();
    styleC22.setAlignment(styleC22.ALIGN_LEFT);

    // Header Table
    HSSFCellStyle styleC3Center = wb.createCellStyle();
    styleC3Center.setFont(excelFunction.getHeaderTable(wb.createFont()));
    styleC3Center.setAlignment(styleC3Center.ALIGN_CENTER);
    styleC3Center.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
    styleC3Center.setFillForegroundColor(HSSFColor.GREY_25_PERCENT.index);

    HSSFDataFormat currency = wb.createDataFormat();
    HSSFCellStyle styleC23 = wb.createCellStyle();
    styleC23.setAlignment(styleC23.ALIGN_CENTER);
    HSSFCellStyle styleC24 = wb.createCellStyle();
    styleC24.setAlignment(styleC24.ALIGN_LEFT);
    HSSFCellStyle styleC25 = wb.createCellStyle();
    styleC25.setAlignment(styleC25.ALIGN_RIGHT);
    styleC25.setDataFormat(currency.getFormat("#,##0.00"));

    HSSFSheet sheet = wb.createSheet("TravoxReport");

    HSSFRow row2 = sheet.createRow(0);//w  w  w  .  j  a v a2s.  c o  m
    HSSFCell cell20 = row2.createCell(0);
    cell20.setCellValue("GJ");
    cell20.setCellStyle(styleC3Center);
    HSSFCell cell21 = row2.createCell(1);
    cell21.setCellValue("PAY NO");
    cell21.setCellStyle(styleC3Center);
    HSSFCell cell22 = row2.createCell(2);
    cell22.setCellValue("NAME");
    cell22.setCellStyle(styleC3Center);
    HSSFCell cell23 = row2.createCell(3);
    cell23.setCellValue("AP CODE");
    cell23.setCellStyle(styleC3Center);
    HSSFCell cell24 = row2.createCell(4);
    cell24.setCellValue("REFDOC");
    cell24.setCellStyle(styleC3Center);
    HSSFCell cell25 = row2.createCell(5);
    cell25.setCellValue("SYSTEM_DATE");
    cell25.setCellStyle(styleC3Center);
    HSSFCell cell26 = row2.createCell(6);
    cell26.setCellValue("DUE DATE");
    cell26.setCellStyle(styleC3Center);
    HSSFCell cell27 = row2.createCell(7);
    cell27.setCellValue("INVOICE NUM");
    cell27.setCellStyle(styleC3Center);
    HSSFCell cell28 = row2.createCell(8);
    cell28.setCellValue("MAIN DESCRIPTION");
    cell28.setCellStyle(styleC3Center);
    HSSFCell cell29 = row2.createCell(9);
    cell29.setCellValue("CODE");
    cell29.setCellStyle(styleC3Center);
    HSSFCell cell30 = row2.createCell(10);
    cell30.setCellValue("TYPE PRODUCT");
    cell30.setCellStyle(styleC3Center);
    HSSFCell cell31 = row2.createCell(11);
    cell31.setCellValue("DESCRIPTION");
    cell31.setCellStyle(styleC3Center);
    HSSFCell cell32 = row2.createCell(12);
    cell32.setCellValue("TOTAL AMOUNT");
    cell32.setCellStyle(styleC3Center);
    HSSFCell cell33 = row2.createCell(13);
    cell33.setCellValue("TOTAL VAT");
    cell33.setCellStyle(styleC3Center);
    HSSFCell cell34 = row2.createCell(14);
    cell34.setCellValue("CUR");
    cell34.setCellStyle(styleC3Center);
    HSSFCell cell35 = row2.createCell(15);
    cell35.setCellValue("AMOUNT");
    cell35.setCellStyle(styleC3Center);
    HSSFCell cell36 = row2.createCell(16);
    cell36.setCellValue("DEPARTMENT");
    cell36.setCellStyle(styleC3Center);
    HSSFCell cell37 = row2.createCell(17);
    cell37.setCellValue("ACC NO");
    cell37.setCellStyle(styleC3Center);
    HSSFCell cell38 = row2.createCell(18);
    cell38.setCellValue("EXPENSE DATE");
    cell38.setCellStyle(styleC3Center);
    HSSFCell cell39 = row2.createCell(19);
    cell39.setCellValue("VOUCHER NO");
    cell39.setCellStyle(styleC3Center);
    HSSFCell cell40 = row2.createCell(20);
    cell40.setCellValue("VOUCHER AMOUNT");
    cell40.setCellStyle(styleC3Center);

    if (list != null) {
        int count = 1;
        for (int i = 0; i < list.size(); i++) {
            MainMigrateModel data = (MainMigrateModel) list.get(i);
            HSSFRow row = sheet.createRow(count + i);
            HSSFCell cell0 = row.createCell(0);
            cell0.setCellValue(data.getGj());
            cell0.setCellStyle(styleC24);
            HSSFCell cell1 = row.createCell(1);
            cell1.setCellValue(data.getPayno());
            cell1.setCellStyle(styleC24);
            HSSFCell cell13 = row.createCell(2);
            cell13.setCellValue(data.getName());
            cell13.setCellStyle(styleC24);
            HSSFCell cell2 = row.createCell(3);
            cell2.setCellValue(data.getApcode());
            cell2.setCellStyle(styleC24);
            HSSFCell cell3 = row.createCell(4);
            cell3.setCellValue(data.getRefdoc());
            cell3.setCellStyle(styleC24);
            HSSFCell cell4 = row.createCell(5);
            cell4.setCellValue(data.getSystemdate());
            cell4.setCellStyle(styleC24);
            HSSFCell cell5 = row.createCell(6);
            cell5.setCellValue(data.getDuedate());
            cell5.setCellStyle(styleC24);
            HSSFCell cell6 = row.createCell(7);
            cell6.setCellValue(data.getInvoicenum());
            cell6.setCellStyle(styleC24);
            HSSFCell cell7 = row.createCell(8);
            cell7.setCellValue(data.getMaindescription());
            cell7.setCellStyle(styleC24);
            HSSFCell cell8 = row.createCell(9);
            cell8.setCellValue(data.getCode());
            cell8.setCellStyle(styleC24);
            HSSFCell cell9 = row.createCell(10);
            cell9.setCellValue(data.getTypeproduct());
            cell9.setCellStyle(styleC24);
            HSSFCell cell11 = row.createCell(11);
            cell11.setCellValue(data.getDescription());
            cell11.setCellStyle(styleC24);
            HSSFCell cell12 = row.createCell(12);
            cell12.setCellValue(!"".equalsIgnoreCase(String.valueOf(data.getTotalamount()))
                    ? (new BigDecimal(data.getTotalamount())).doubleValue()
                    : 0);
            cell12.setCellStyle(styleC25);
            HSSFCell cell013 = row.createCell(13);
            cell013.setCellValue(!"".equalsIgnoreCase(String.valueOf(data.getTotalvat()))
                    ? (new BigDecimal(data.getTotalvat())).doubleValue()
                    : 0);
            cell013.setCellStyle(styleC25);
            HSSFCell cell14 = row.createCell(14);
            cell14.setCellValue(data.getCur());
            cell14.setCellStyle(styleC23);
            HSSFCell cell15 = row.createCell(15);
            cell15.setCellValue(!"".equalsIgnoreCase(String.valueOf(data.getAmount()))
                    ? (new BigDecimal(data.getAmount())).doubleValue()
                    : 0);
            cell15.setCellStyle(styleC25);
            HSSFCell cell16 = row.createCell(16);
            cell16.setCellValue(data.getDepartment());
            cell16.setCellStyle(styleC24);
            HSSFCell cell17 = row.createCell(17);
            cell17.setCellValue(data.getAccno());
            cell17.setCellStyle(styleC24);
            HSSFCell cell18 = row.createCell(18);
            cell18.setCellValue(data.getExpensedate());
            cell18.setCellStyle(styleC24);
            HSSFCell cell19 = row.createCell(19);
            cell19.setCellValue(data.getVoucherno());
            cell19.setCellStyle(styleC24);
            HSSFCell cell020 = row.createCell(20);
            cell020.setCellValue(!"".equalsIgnoreCase(String.valueOf(data.getVoucheramount()))
                    ? (new BigDecimal(data.getVoucheramount())).doubleValue()
                    : 0);
            cell020.setCellStyle(styleC25);
        }
    }
    for (int x = 0; x < 21; x++) {
        sheet.autoSizeColumn(x);
    }
    sheet.setColumnWidth(2, 256 * 30);
    sheet.setColumnWidth(8, 256 * 30);
    sheet.setColumnWidth(11, 256 * 30);
    exportFileExcel("TravoxReport", wb);
}

From source file:com.smi.travel.migration.MainMigrate.java

public static void ExportInvoiceReport(List<MainMigrateModel> listInv) {
    UtilityExcelFunction excelFunction = new UtilityExcelFunction();
    HSSFWorkbook wb = new HSSFWorkbook();
    HSSFCellStyle styleC1 = wb.createCellStyle();
    // Set align Text
    HSSFCellStyle styleC21 = wb.createCellStyle();
    styleC21.setAlignment(styleC21.ALIGN_RIGHT);
    HSSFCellStyle styleC22 = wb.createCellStyle();
    styleC22.setAlignment(styleC22.ALIGN_LEFT);

    // Header Table
    HSSFCellStyle styleC3Center = wb.createCellStyle();
    styleC3Center.setFont(excelFunction.getHeaderTable(wb.createFont()));
    styleC3Center.setAlignment(styleC3Center.ALIGN_CENTER);
    styleC3Center.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
    styleC3Center.setFillForegroundColor(HSSFColor.GREY_25_PERCENT.index);

    HSSFDataFormat currency = wb.createDataFormat();
    HSSFCellStyle styleC23 = wb.createCellStyle();
    styleC23.setAlignment(styleC23.ALIGN_CENTER);
    HSSFCellStyle styleC24 = wb.createCellStyle();
    styleC24.setAlignment(styleC24.ALIGN_LEFT);
    HSSFCellStyle styleC25 = wb.createCellStyle();
    styleC25.setAlignment(styleC25.ALIGN_RIGHT);
    styleC25.setDataFormat(currency.getFormat("#,##0.00"));

    HSSFSheet sheet = wb.createSheet("Invoice");

    HSSFRow row2 = sheet.createRow(0);/*w  w  w.  ja va  2  s  .c om*/
    HSSFCell cell20 = row2.createCell(0);
    cell20.setCellValue("ID");
    cell20.setCellStyle(styleC3Center);
    HSSFCell cell21 = row2.createCell(1);
    cell21.setCellValue("INV NO");
    cell21.setCellStyle(styleC3Center);
    HSSFCell cell22 = row2.createCell(2);
    cell22.setCellValue("NAME");
    cell22.setCellStyle(styleC3Center);
    HSSFCell cell23 = row2.createCell(3);
    cell23.setCellValue("INV DATE");
    cell23.setCellStyle(styleC3Center);
    HSSFCell cell24 = row2.createCell(4);
    cell24.setCellValue("GRAND TOTAL");
    cell24.setCellStyle(styleC3Center);
    HSSFCell cell25 = row2.createCell(5);
    cell25.setCellValue("GRAND TOTAL GROSS");
    cell25.setCellStyle(styleC3Center);
    HSSFCell cell26 = row2.createCell(6);
    cell26.setCellValue("GRAND TOTAL VAT");
    cell26.setCellStyle(styleC3Center);
    HSSFCell cell27 = row2.createCell(7);
    cell27.setCellValue("CUR");
    cell27.setCellStyle(styleC3Center);
    HSSFCell cell28 = row2.createCell(8);
    cell28.setCellValue("DEPARTMENT");
    cell28.setCellStyle(styleC3Center);
    HSSFCell cell29 = row2.createCell(9);
    cell29.setCellValue("ACC NO");
    cell29.setCellStyle(styleC3Center);

    if (listInv != null) {
        int count = 1;
        for (int i = 0; i < listInv.size(); i++) {
            MainMigrateModel data = (MainMigrateModel) listInv.get(i);
            HSSFRow row = sheet.createRow(count + i);
            HSSFCell cell0 = row.createCell(0);
            cell0.setCellValue(data.getId());
            cell0.setCellStyle(styleC24);
            HSSFCell cell1 = row.createCell(1);
            cell1.setCellValue(data.getInvno());
            cell1.setCellStyle(styleC24);
            HSSFCell cell13 = row.createCell(2);
            cell13.setCellValue(data.getName());
            cell13.setCellStyle(styleC24);
            HSSFCell cell2 = row.createCell(3);
            cell2.setCellValue(data.getInvdate());
            cell2.setCellStyle(styleC24);
            HSSFCell cell3 = row.createCell(4);
            //                cell3.setCellValue(data.getGrandtotal());
            cell3.setCellValue(!"".equalsIgnoreCase(String.valueOf(data.getGrandtotal()))
                    ? (new BigDecimal(data.getGrandtotal())).doubleValue()
                    : 0);
            cell3.setCellStyle(styleC25);
            HSSFCell cell4 = row.createCell(5);
            cell4.setCellValue(!"".equalsIgnoreCase(String.valueOf(data.getGrandtotalgross()))
                    ? (new BigDecimal(data.getGrandtotalgross())).doubleValue()
                    : 0);
            cell4.setCellStyle(styleC25);
            HSSFCell cell5 = row.createCell(6);
            cell5.setCellValue(!"".equalsIgnoreCase(String.valueOf(data.getGrandtotalvat()))
                    ? (new BigDecimal(data.getGrandtotalvat())).doubleValue()
                    : 0);
            cell5.setCellStyle(styleC25);
            HSSFCell cell6 = row.createCell(7);
            cell6.setCellValue(data.getCur());
            cell6.setCellStyle(styleC23);
            HSSFCell cell7 = row.createCell(8);
            cell7.setCellValue(data.getDepartment());
            cell7.setCellStyle(styleC24);
            HSSFCell cell8 = row.createCell(9);
            cell8.setCellValue(data.getAccno());
            cell8.setCellStyle(styleC24);
        }
    }
    for (int x = 0; x < 10; x++) {
        sheet.autoSizeColumn(x);
    }
    sheet.setColumnWidth(2, 256 * 30);
    exportFileExcel("Invoice", wb);
}

From source file:com.smi.travel.migration.MainMigrate.java

public static void ExportDeptorInvoiceReport(List<MainMigrateModel> listInv) {
    UtilityExcelFunction excelFunction = new UtilityExcelFunction();
    HSSFWorkbook wb = new HSSFWorkbook();
    HSSFCellStyle styleC1 = wb.createCellStyle();
    // Set align Text
    HSSFCellStyle styleC21 = wb.createCellStyle();
    styleC21.setAlignment(styleC21.ALIGN_RIGHT);
    HSSFCellStyle styleC22 = wb.createCellStyle();
    styleC22.setAlignment(styleC22.ALIGN_LEFT);

    // Header Table
    HSSFCellStyle styleC3Center = wb.createCellStyle();
    styleC3Center.setFont(excelFunction.getHeaderTable(wb.createFont()));
    styleC3Center.setAlignment(styleC3Center.ALIGN_CENTER);
    styleC3Center.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
    styleC3Center.setFillForegroundColor(HSSFColor.GREY_25_PERCENT.index);

    HSSFDataFormat currency = wb.createDataFormat();
    HSSFCellStyle styleC23 = wb.createCellStyle();
    styleC23.setAlignment(styleC23.ALIGN_CENTER);
    HSSFCellStyle styleC24 = wb.createCellStyle();
    styleC24.setAlignment(styleC24.ALIGN_LEFT);
    HSSFCellStyle styleC25 = wb.createCellStyle();
    styleC25.setAlignment(styleC25.ALIGN_RIGHT);
    //        styleC25.setDataFormat(currency.getFormat("#,##0.00"));

    HSSFSheet sheet = wb.createSheet("DeptorInvoice");

    HSSFRow row2 = sheet.createRow(0);//from  www  . jav  a  2s  .  c o m
    HSSFCell cell20 = row2.createCell(0);
    cell20.setCellValue("INV NO");
    cell20.setCellStyle(styleC3Center);
    HSSFCell cell21 = row2.createCell(1);
    cell21.setCellValue("DATE");
    cell21.setCellStyle(styleC3Center);
    HSSFCell cell22 = row2.createCell(2);
    cell22.setCellValue("NAME");
    cell22.setCellStyle(styleC3Center);
    HSSFCell cell23 = row2.createCell(3);
    cell23.setCellValue("DETAIL");
    cell23.setCellStyle(styleC3Center);
    HSSFCell cell24 = row2.createCell(4);
    cell24.setCellValue("INV AMOUNT");
    cell24.setCellStyle(styleC3Center);
    HSSFCell cell25 = row2.createCell(5);
    cell25.setCellValue("RECEIVE NO");
    cell25.setCellStyle(styleC3Center);
    HSSFCell cell26 = row2.createCell(6);
    cell26.setCellValue("RECEIVE AMOUNT");
    cell26.setCellStyle(styleC3Center);
    HSSFCell cell27 = row2.createCell(7);
    cell27.setCellValue("REMAIN AMOUNT");
    cell27.setCellStyle(styleC3Center);
    HSSFCell cell28 = row2.createCell(8);
    cell28.setCellValue("CODE");
    cell28.setCellStyle(styleC3Center);
    HSSFCell cell29 = row2.createCell(9);
    cell29.setCellValue("DEPARTMENT");
    cell29.setCellStyle(styleC3Center);
    HSSFCell cell30 = row2.createCell(10);
    cell30.setCellValue("GRAND TOTAL VATAMT");
    cell30.setCellStyle(styleC3Center);

    if (listInv != null) {
        int count = 1;
        for (int i = 0; i < listInv.size(); i++) {
            MainMigrateModel data = (MainMigrateModel) listInv.get(i);
            HSSFRow row = sheet.createRow(count + i);
            HSSFCell cell0 = row.createCell(0);
            cell0.setCellValue(data.getInvoiceno());
            cell0.setCellStyle(styleC24);
            HSSFCell cell1 = row.createCell(1);
            cell1.setCellValue(data.getInvoicedate());
            cell1.setCellStyle(styleC24);
            HSSFCell cell13 = row.createCell(2);
            cell13.setCellValue(data.getInvoicename());
            cell13.setCellStyle(styleC24);
            HSSFCell cell2 = row.createCell(3);
            cell2.setCellValue(data.getInvoicedetail());
            cell2.setCellStyle(styleC24);
            HSSFCell cell3 = row.createCell(4);
            cell3.setCellValue(data.getInvoiceamount());
            cell3.setCellStyle(styleC25);
            HSSFCell cell4 = row.createCell(5);
            cell4.setCellValue(data.getReceiveno());
            cell4.setCellStyle(styleC24);
            HSSFCell cell5 = row.createCell(6);
            cell5.setCellValue(data.getReceiveamount());
            cell5.setCellStyle(styleC25);
            HSSFCell cell6 = row.createCell(7);
            cell6.setCellValue(data.getRemainamount());
            cell6.setCellStyle(styleC25);
            HSSFCell cell7 = row.createCell(8);
            cell7.setCellValue(data.getCode());
            cell7.setCellStyle(styleC24);
            HSSFCell cell8 = row.createCell(9);
            cell8.setCellValue(data.getDepartment());
            cell8.setCellStyle(styleC24);
            HSSFCell cell9 = row.createCell(10);
            cell9.setCellValue(data.getGrandtotal());
            cell9.setCellStyle(styleC25);
        }
    }
    for (int x = 0; x < 11; x++) {
        sheet.autoSizeColumn(x);
    }
    sheet.setColumnWidth(2, 256 * 30);
    exportFileExcel("DeptorInvoice", wb);
}