com.pureinfo.srm.reports.table.data.pinggu.ExcelExporterMultiSheetImpl.java Source code

Java tutorial

Introduction

Here is the source code for com.pureinfo.srm.reports.table.data.pinggu.ExcelExporterMultiSheetImpl.java

Source

/**
 * PureInfo Command-phase2
 * @(#)ExcelExporterMultiSheetImpl.java   1.0 2008-6-4
 * 
 * Copyright(c) 2004-2005, PureInfo Information Technology Corp. Ltd. 
 * All rights reserved, see the license file.
 * 
 * www.pureinfo.com.cn
 */

package com.pureinfo.srm.reports.table.data.pinggu;

import java.util.Iterator;

import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;

import com.pureinfo.dolphin.export.impl.ExcelExporterImpl;
import com.pureinfo.dolphin.export.model.IExportGoods;
import com.pureinfo.force.exception.PureException;

/**
 * <P>
 * Created on 2008-6-4 03:53:09<BR>
 * Last modified on 2008-6-4
 * </P>
 * TODO describe ExcelExporterMultiSheetImpl here ...
 * 
 * @author sunjie
 * @version 1.0, 2008-6-4
 * @since Command-phase2 1.0
 */
public class ExcelExporterMultiSheetImpl extends ExcelExporterImpl implements IMultiSheetExporter {

    public void export(HSSFWorkbook workbook, IExportGoods _goods) throws PureException {
        // 1. to create sheet
        HSSFSheet sheet = workbook.createSheet(_goods.getName());
        workbook.setSheetOrder(_goods.getName(), 0);

        // 2. to export headers
        if (_goods.hasHeader()) {
            HSSFCellStyle headerStyle = getHeaderStyle(workbook);
            exportHeaders(sheet, _goods.getHeaders(), headerStyle);
        }

        // 3. to export data
        Object[] values;
        HSSFCellStyle dateStyle = getDateStyle(workbook);

        int nRowNum = 1;
        Iterator iter = _goods.iterator();
        while (iter.hasNext()) {
            values = _goods.unpackGoods(iter.next());
            exportRow(sheet, values, nRowNum++, dateStyle);
        }
    }
}