亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? testgroupreport.java

?? 這是一個報表開發(fā)包,支持中國樣式的報表,支持分組和交叉報表
?? JAVA
字號:
package test;

import java.io.*;

import java.awt.*;

import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.hssf.util.*;
import com.lowagie.text.Font;
import com.lowagie.text.pdf.*;
import com.lucaslee.report.*;
import com.lucaslee.report.grouparithmetic.*;
import com.lucaslee.report.model.*;
import com.lucaslee.report.model.Rectangle;
import com.lucaslee.report.model.Table;
import com.lucaslee.report.printer.*;

/**
 * 生成行匯總報表例子。
 * 從main方法開始執(zhí)行。
 * 注意:例子中對程序段的注釋,方法是:在程序段前面加注釋,在程序段后面注明段的結(jié)束.如:
 * 前面://****xxxx***********
  * 后面://****end xxxx*******
   * <p>Description: </p>
   * <p>Copyright: Copyright (c) 2004</p>
   * <p>Company:Lucas-lee Soft </p>
   * @author Lucas Lee
   * @version 1.0
   */
public class TestGroupReport {
  public TestGroupReport() {
  }

  /**
   * 根據(jù)報表對象生成excel格式的報表.
   * @param report 報表對象
   * @throws Exception
   */
  public static void getExcelReport(Report report) throws Exception {
    //設(shè)置輸出的文件
    FileOutputStream fo = new FileOutputStream("group.xls");

    ExcelCss css = new ExcelCss() {
      public void init(HSSFWorkbook workbook) {

        //*****************定義字體*****************
        //普通字體
        HSSFFont fontNormal = workbook.createFont();
        fontNormal.setFontHeightInPoints( (short)10);
        fontNormal.setFontName("宋體");

        //粗體
        HSSFFont fontBold = workbook.createFont();
        fontBold.setFontHeightInPoints( (short)10);
        fontBold.setFontName("宋體");
        fontBold.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);

        //大、粗字體
        HSSFFont fontBig = workbook.createFont();
        fontBig.setFontHeightInPoints( (short) 15);
        fontBig.setFontName("宋體");
        fontBig.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
        //*****************end定義字體*****************

        //***************設(shè)置EXCEL報表的樣式表******************
        HSSFCellStyle style = workbook.createCellStyle();
        style.setFillForegroundColor(HSSFColor.PALE_BLUE.index);
        style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
        style.setFont(fontNormal);
        this.setGroupTotal(style);

        style = workbook.createCellStyle();
        style.setFillForegroundColor(HSSFColor.PALE_BLUE.index);
        style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
        style.setFont(fontNormal);
        this.setGroupTotal(style);

        this.setTotal(style);

        style = workbook.createCellStyle();
        style.setFillForegroundColor(HSSFColor.LIGHT_ORANGE.index);
        style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
        style.setFont(fontBold);
        this.setHead(style);

        style =workbook.createCellStyle();
        style.setFont(fontBig);
        this.setTitle(style);

        style = workbook.createCellStyle();
        style.setFont(fontNormal);
        this.setData(style);

        this.setDefaultColumnWidth( (short) 20);
        //***************end 設(shè)置EXCEL報表的樣式表******************
      }
    };

    //執(zhí)行EXCEL格式報表的輸出
    new ExcelPrinter().print(report, css, fo);

    //關(guān)閉輸出文件
    fo.close();
    System.out.println("生成Excel格式報表成功。");
  }

  public static void getHTMLReport(Report report) throws Exception {
    //設(shè)置輸出的文件
    FileOutputStream fo = new FileOutputStream("group.html");

    //***************設(shè)置HTML報表的樣式表******************
    HTMLCss css = new HTMLCss();
    css.setGroupTotal("BACKGROUND-COLOR: #d8e4f1; font: bold 12pt 隸書;");
    css.setHead("BACKGROUND-COLOR: #ffdead; font: bold 12pt 隸書;");
    css.setTotal("BACKGROUND-COLOR: #d8e4f1; font: bold 12pt 隸書;");
    css.setTitle("font: bold 18pt ;");
    css.setData("font: 12pt");
    //***************end 設(shè)置HTML報表的樣式表******************

     //執(zhí)行HTML格式報表的輸出
    new HTMLPrinter().print(report, css, fo);

    //關(guān)閉輸出文件
    fo.close();
    System.out.println("生成HTML格式報表成功。");
  }

  public static void getPDFReport(Report report) throws Exception {
    //設(shè)置輸出的文件
    FileOutputStream fo = new FileOutputStream("group.pdf");

    //******************定義pdf中文字體*****************
    BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H",
                                             BaseFont.NOT_EMBEDDED);
    BaseFont bfChineseBold = BaseFont.createFont("STSong-Light,Bold",
                                                 "UniGB-UCS2-H",
                                                 BaseFont.NOT_EMBEDDED);
    Font FontChinese = new Font(bfChinese, 10, Font.NORMAL);
    Font FontChineseBold = new Font(bfChineseBold, 10, Font.NORMAL);
    //******************end 定義pdf中文字體*****************

     //****************設(shè)置pdf報表的樣式表*********************
    PDFCss css = new PDFCss();

    PDFCssItem item = new PDFCssItem();
    item.setBackgroudColor(new Color(0xd8e4f1));
    item.setFont(FontChinese);
    css.setGroupTotal(item);
    css.setTotal(item);

    item = new PDFCssItem();
    item.setBackgroudColor(new Color(0xffdead));
    item.setFont(FontChineseBold);
    css.setHead(item);

    item = new PDFCssItem();
    item.setFont(new Font(bfChineseBold, 15, Font.BOLD));
    css.setTitle(item);

    item = new PDFCssItem();
    item.setFont(new Font(bfChinese, 10, Font.NORMAL));
    css.setData(item);
    //****************end 設(shè)置pdf報表的樣式表*********************

     //執(zhí)行PDF格式報表的輸出
    new PDFPrinter().print(report, css, fo);

    //關(guān)閉輸出文件
    fo.close();
    System.out.println("生成PDF格式報表成功。");
  }

  /**
   * 根據(jù)報表對象生成csv格式的報表.
   * @param report 報表對象
   * @throws Exception
   */
  public static void getCSVReport(Report report) throws Exception {
    //設(shè)置輸出的文件
    FileOutputStream fo = new FileOutputStream("group.csv");

    //執(zhí)行CSV格式報表的輸出
    new CSVPrinter().print(report, fo);

    //關(guān)閉輸出文件
    fo.close();
    System.out.println("生成CSV格式報表成功。");
  }

  /**
   * 獲得原始數(shù)據(jù)表格.生成一個例子數(shù)據(jù)表格.
   * @return
   * @throws Exception
   */
  public static Table getTable() throws Exception {

    Table t = new Table();
    double multip = 100.00;
    for (int i = 0; i < 9; i++) {
      TableRow tr = new TableRow();

      tr.addCell(new TableCell("產(chǎn)品" + i));
      tr.addCell(new TableCell("" + (i * multip)));
      tr.addCell(new TableCell("" + (i + 1) * multip));
      tr.addCell(new TableCell("" + (i + 2) * multip));
      t.addRow(tr);

      t.addRow(tr.cloneAll());

      tr = new TableRow();
      tr.addCell(new TableCell("產(chǎn)品" + i));
      tr.addCell(new TableCell("" + (i + 1) * multip));
      tr.addCell(new TableCell("" + (i + 2) * multip));
      tr.addCell(new TableCell("" + (i + 2) * multip));
      t.addRow(tr);
    }

    for (int i = 0; i < 0; i++) {
      t.addCol(t.getCol(3).cloneAll());
    }

    return t;
  }

  /**
   * 為報表設(shè)置報表頭和尾.
   * @param report 要設(shè)置的報表
   * @throws ReportException
   */
  private static void setTitleFooter(Report report) throws ReportException {
    //*****************設(shè)置報表頭*********************
     Table headerTable = new Table();
     //設(shè)置表格的寬度比例(百分比)
    int[] widths = {
        20, 60, 20};
    headerTable.setWidths(widths);
    report.setHeaderTable(headerTable);

    headerTable.setBorder(0);
    headerTable.setAlign(headerTable.ALIGN_CENTER);

    TableCell tc = null;
    TableRow tr = null;

    tr = new TableRow(3);
    headerTable.addRow(tr);
    tc = tr.getCell(0);
    tc.setColSpan(3);
    tc.setAlign(tc.ALIGN_CENTER);
    tc.setContent("中國XXX股份有限公司XXX分公司");
    tr.getCell(1).setIsHidden(true);
    tr.getCell(2).setIsHidden(true);

    tr = new TableRow(3);
    headerTable.addRow(tr);
    tc = tr.getCell(0);
    tc.setColSpan(3);
    tc.setAlign(tc.ALIGN_CENTER);
    tc.setContent("產(chǎn)品銷售統(tǒng)計報表");
    tc.setCssClass(Report.TITLE_TYPE);
    tr.getCell(1).setIsHidden(true);
    tr.getCell(2).setIsHidden(true);

    tr = new TableRow(3);
    headerTable.addRow(tr);

    tr = new TableRow(3);
    headerTable.addRow(tr);
    tc = tr.getCell(0);
    tc.setContent("單位:xxx分公司");
    tc.setAlign(tc.ALIGN_LEFT);
    tc = tr.getCell(1);
    tc.setContent("日期:2003-11-11至2003-11-16");
    tc.setAlign(tc.ALIGN_CENTER);
    tc = tr.getCell(2);
    tc.setContent("單位:噸  元");
    tc.setAlign(tc.ALIGN_RIGHT);
    //*****************end 設(shè)置報表頭*********************

     //*****************設(shè)置報表尾*********************
    Table footerTable = new Table();
    report.setFooterTable(footerTable);

    tr = new TableRow(3);
    footerTable.setBorder(0);
    footerTable.setAlign(footerTable.ALIGN_CENTER);
    footerTable.addRow(tr);
    tr.getCell(0).setContent("制表人:xxx");
    tc.setAlign(tc.ALIGN_LEFT);
    tr.getCell(1).setContent("審核人:xxx");
    tc.setAlign(tc.ALIGN_CENTER);
    tr.getCell(2).setContent("制表日期:xxx");
    tc.setAlign(tc.ALIGN_RIGHT);
    //*****************end 設(shè)置報表尾*********************
  }

  public static void main(String[] args) throws Exception {
    //報表管理器
    ReportManager rm = new ReportManager();

    //獲得原始數(shù)據(jù)表格
    Table t = getTable();

    //定義報表對象
    Report report = new Report();

    //**************設(shè)置報表主體部分**************
    ReportBody body = new ReportBody();
    body.setData(t);
    report.setBody(body);
    //**************end 設(shè)置報表主體部分**************

     //***********按指定列分組**********
    int[] cols = {
        0, 1};
    //合并列中相鄰的同值單元
    t = rm.mergeSameCells(t, cols, rm.COLUMN_ORIENTATION);
    //按列的先后順序,完成分組
    t = rm.split(t, cols);
    //***********end 按指定列分組**********

     //*****************設(shè)置表格的屬性********************
    t.setAlign(Rectangle.ALIGN_CENTER);
    t.setWidth(75);
    t.setBorder(1);
    t.setBordercolor(new java.awt.Color(0x000000));
    //*****************end 設(shè)置表格的屬性********************

     //********************進(jìn)行行統(tǒng)計*********************
    int[] totalCols = {
        1, 2, 3};
    rm.generateRowTotal(t, totalCols, true, new SumArithmetic());
    //********************end 進(jìn)行行統(tǒng)計*********************

     //*********************格式化數(shù)據(jù)**********************
    int[] formatCols = {
        1, 2, 3};
    t = rm.formatData(t, formatCols, new DefaultFormatter());
    //*********************end 格式化數(shù)據(jù)**********************

     //*****************設(shè)置報表主體表格的列頭*********************/
    HeaderTable th = new HeaderTable();
    report.getBody().setTableColHeader(th);
    TableRow thr = new TableRow(4);
    th.addRow(thr);
    thr.setCell(0, new TableCell("產(chǎn)品名稱"));
    thr.setCell(1, new TableCell("產(chǎn)品xx量"));
    thr.setCell(2, new TableCell("產(chǎn)品xx銷售量"));
    thr.setCell(3, new TableCell("產(chǎn)品xx銷售額"));
    //*****************end 設(shè)置報表主體表格的列頭*********************/

    //設(shè)置報表的頭和尾
    setTitleFooter(report);

    //生成HTML格式報表
    getHTMLReport(report);
    //生成PDF格式報表
    getPDFReport(report);
    //生成CSV格式報表
    getCSVReport(report);
    //生成Excel格式報表
    getExcelReport(report);
  }
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
五月激情六月综合| 亚洲超碰97人人做人人爱| 欧美图区在线视频| 国产综合色产在线精品| 亚洲成国产人片在线观看| 国产精品你懂的在线| 日韩一级视频免费观看在线| 91日韩精品一区| 国产精品自拍在线| 波多野结衣亚洲一区| 丝袜诱惑亚洲看片| 亚洲综合精品自拍| 国产精品理论在线观看| 精品国产一区二区三区忘忧草| 91福利资源站| 97精品视频在线观看自产线路二| 精品亚洲成a人在线观看| 亚洲高清在线视频| 亚洲色图丝袜美腿| 国产女主播视频一区二区| 在线91免费看| 在线观看av一区二区| 成人不卡免费av| 国产麻豆欧美日韩一区| 日本午夜精品视频在线观看| 亚洲国产日韩精品| 一区二区高清视频在线观看| 成人欧美一区二区三区视频网页| 久久久久久久久久久电影| 精品少妇一区二区三区在线视频| 欧美挠脚心视频网站| 欧美午夜电影一区| 91福利小视频| 欧美特级限制片免费在线观看| av欧美精品.com| 久久蜜臀中文字幕| 26uuu久久天堂性欧美| 日韩久久免费av| 欧美岛国在线观看| xf在线a精品一区二区视频网站| 欧美xfplay| 欧美www视频| 久久精品夜色噜噜亚洲aⅴ| 久久久久国产精品麻豆| 精品国产一区二区精华| 欧美精品一区二区三区蜜桃视频| 欧美成人福利视频| 久久综合av免费| 国产欧美日韩视频在线观看| 久久精品一区二区三区av| 国产清纯白嫩初高生在线观看91| 久久久久久黄色| 国产精品你懂的| 亚洲精品综合在线| 亚洲成人综合视频| 麻豆极品一区二区三区| 国产盗摄一区二区三区| 成人午夜av在线| 日本道精品一区二区三区| 欧美日韩午夜精品| 欧美va亚洲va香蕉在线| 国产欧美日韩精品a在线观看| 国内欧美视频一区二区| 大白屁股一区二区视频| 在线精品亚洲一区二区不卡| 欧美人体做爰大胆视频| 精品国产一区二区三区不卡 | 久久久精品国产99久久精品芒果| 久久久精品日韩欧美| 亚洲免费在线电影| 日本成人在线视频网站| 高清成人免费视频| 欧美网站大全在线观看| 精品久久久久久久久久久院品网| 中文字幕成人在线观看| 一区二区欧美在线观看| 老司机精品视频导航| 高清shemale亚洲人妖| 欧美私模裸体表演在线观看| 精品剧情v国产在线观看在线| 日本一区二区三区四区 | 久久国产人妖系列| 99在线精品视频| 日韩欧美区一区二| 亚洲精品免费一二三区| 欧美撒尿777hd撒尿| 日韩欧美在线网站| 亚洲欧美日韩在线播放| 国产综合久久久久久鬼色| 91免费观看在线| 精品成人佐山爱一区二区| 亚洲欧洲www| 精品一区二区三区在线播放| 色999日韩国产欧美一区二区| 精品处破学生在线二十三| 一区二区三区不卡视频| 国产精品影视天天线| 欧美性一二三区| 中国色在线观看另类| 日韩vs国产vs欧美| 色成年激情久久综合| 欧美国产一区视频在线观看| 秋霞午夜鲁丝一区二区老狼| 91视频.com| 欧美经典一区二区| 久久精品噜噜噜成人av农村| 色激情天天射综合网| 国产欧美日韩激情| 极品美女销魂一区二区三区免费| 欧美亚日韩国产aⅴ精品中极品| 国产精品欧美极品| 国产一区啦啦啦在线观看| 制服丝袜日韩国产| 亚洲一区电影777| 成人午夜免费av| 亚洲午夜羞羞片| 日本电影亚洲天堂一区| 国产精品你懂的| 高清成人免费视频| 国产视频一区二区在线观看| 精品在线播放免费| 日韩天堂在线观看| 视频一区中文字幕国产| 欧美性猛片aaaaaaa做受| 综合精品久久久| 91在线丨porny丨国产| 国产精品乱人伦中文| 国产成人av一区二区三区在线 | 日本精品裸体写真集在线观看 | 欧美婷婷六月丁香综合色| 悠悠色在线精品| 一本大道av一区二区在线播放| 中文字幕亚洲综合久久菠萝蜜| 丁香啪啪综合成人亚洲小说| 中文字幕欧美国产| 福利电影一区二区| 1024国产精品| 97精品电影院| 国产91综合一区在线观看| 国产亲近乱来精品视频| 国产盗摄视频一区二区三区| 国产人成亚洲第一网站在线播放| 国产91精品一区二区| 国产精品狼人久久影院观看方式| av色综合久久天堂av综合| 亚洲欧美国产77777| 91麻豆国产福利在线观看| 一二三区精品视频| 欧美群妇大交群中文字幕| 天堂成人国产精品一区| 日韩欧美一级特黄在线播放| 国产一区二区三区日韩| 欧美国产日本韩| 91麻豆精东视频| 日韩中文字幕一区二区三区| 日韩一区二区三区视频在线| 精品一区二区av| 国产精品久久久久一区二区三区| 色香蕉久久蜜桃| 偷拍日韩校园综合在线| 亚洲精品一区二区在线观看| 成人综合婷婷国产精品久久免费| 亚洲视频一区在线| 欧美日韩成人在线一区| 狠狠色综合播放一区二区| 国产精品私房写真福利视频| 91免费观看国产| 日本不卡123| 中文字幕一区在线| 欧美日韩中文一区| 国产精品18久久久久久久久 | 亚洲黄一区二区三区| 在线播放欧美女士性生活| 激情五月激情综合网| 亚洲女同女同女同女同女同69| 777xxx欧美| 成人精品国产福利| 琪琪久久久久日韩精品| 国产精品午夜在线观看| 7777女厕盗摄久久久| 东方aⅴ免费观看久久av| 亚洲成人一区二区| 中文子幕无线码一区tr| 欧美日韩国产不卡| 成人手机在线视频| 日日摸夜夜添夜夜添国产精品 | 国产在线不卡一区| 一区二区三区四区在线播放| 久久伊人蜜桃av一区二区| 欧美性欧美巨大黑白大战| 国产成人免费视| 美日韩一区二区| 亚洲综合清纯丝袜自拍| 国产欧美一区在线| 欧美一区二区精品在线| 91同城在线观看| 粉嫩一区二区三区在线看| 久久精品国产亚洲a| 亚洲国产精品久久人人爱蜜臀| 久久电影网站中文字幕 |