Java tutorial
/* * ReportXlsForm.java 2010-11-11 * * Copyright 2010 Guangzhou Donghong Software Technology Inc. * Licensed under the www.jxstar.org */ package org.jxstar.report.xls; import java.util.Map; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.jxstar.report.ReportException; import org.jxstar.report.util.ReportXlsUtil; /** * Excel? * * @author TonyTan * @version 1.0, 2010-11-11 */ public class ReportXlsForm extends ReportXls { public Object output() throws ReportException { _log.showDebug("excel form report output ..."); //?ID????? String funId = _mpReptInfo.get("fun_id"); //ID String areaId = _mpMainArea.get("area_id"); //? HSSFWorkbook tmpwb = ReportXlsUtil.readWorkBook(_xlsFile); HSSFSheet tmpsheet = tmpwb.getSheetAt(0); HSSFSheet sheet = _hssfWB.getSheetAt(0); Map<String, String> mpValue = null; for (int i = 0; i < _lsMainRecord.size(); i++) { mpValue = _lsMainRecord.get(i); //? if (i == 0) { sheet = ReportXlsUtil.fillForm(funId, sheet, mpValue, _lsMainCol, _mpUser, i + 1, _lsMainRecord.size()); sheet = ReportXlsUtil.fillCheckInfo(funId, areaId, sheet, mpValue); sheet = ReportXlsUtil.fillHead(sheet, _lsHeadInfo, _mpUser); } else { tmpsheet = ReportXlsUtil.fillForm(funId, tmpsheet, mpValue, _lsMainCol, _mpUser, i + 1, _lsMainRecord.size()); tmpsheet = ReportXlsUtil.fillCheckInfo(funId, areaId, tmpsheet, mpValue); tmpsheet = ReportXlsUtil.fillHead(tmpsheet, _lsHeadInfo, _mpUser); sheet = ReportXlsUtil.appendSheet(sheet, tmpsheet); tmpwb = ReportXlsUtil.readWorkBook(_xlsFile); tmpsheet = tmpwb.getSheetAt(0); } //SHEET??? if (i == 0) sheet.setForceFormulaRecalculation(true); //?? if (!ReportXlsUtil.isAllowOut(sheet)) break; } return _hssfWB; } }