报表打印及导出的代码

来源:互联网 发布:windows live影片制作 编辑:程序博客网 时间:2024/04/29 20:36

打印函数

1.首先要引入提供打印代码的JS文件和打印控件

<script language="javascript" src="${ctx}/static/activex/LodopFuncs.js"></script>
<object id="LODOP_OB"
classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA" width=0 height=0>
<embed id="LODOP_EM" type="application/x-print-lodop" width=0 height=0></embed>
</object>

2.前台要执行打印和导出的两个按钮

<div align="center">
<a href="javascript:void(0)" onclick="printGradePage()"
class="easyui-linkbutton"
data-options="plain:true,iconCls:'icon-print'">打印</a> <a
href="javascript:void(0)" onclick="SaveAsFile()"
class="easyui-linkbutton"
data-options="plain:true,iconCls:'icon-save'">导出</a>
</div>

2.执行打印函数(其中strCenterStyle为表格的样式必须要与head中的style样式完全一致才能保证打印的效果与网页的显示效果相同)

function printGradePage() {
LODOP = getLodop();
LODOP.PRINT_INIT("周报汇票业务统计");
LODOP.SET_PRINT_PAGESIZE(1, 0, 0, "A4");
//LODOP.SET_PRINT_MODE("PRINT_PAGE_PERCENT","Auto-Width");
//strCenterStyle = "<style>body{border:none;text-align: center; margin-top:20px;padding-top:20px; font-size:12px;}table{border-collapse:collapse; }table td{border:1px solid #000;  empty-cells:show;} </style>";
strCenterStyle = "<style>table {border-collapse: collapse;border-width: 0px;} .style0 {font-size: 16px;border-top: none;border-left: none;border-right: none;border-bottom: none;} .style1 {border-top: none;border-left: none;border-right: none;} .style2 {border-left: none;border-right: none;} .style3 {border-left: none;}.style4 {border-right: none;} .style5 {border-left: none;border-right: none;border-bottom: none;} .style7 {border-top: none;border-right: none;border-bottom: none;} .style6 {font-size: 24px} </style>";
//LODOP.SET_PRINT_STYLE("FontSize", 10);
//LODOP.SET_PRINT_STYLE("Bold", 1);
LODOP
.ADD_PRINT_HTML(20, 20, "100%", "100%", strCenterStyle
+ "<body>"
+ document.getElementById('printcontent').innerHTML
+ "</body>");
//LODOP.PREVIEW();
LODOP.PRINT();
};

导出函数

function SaveAsFile() {
LODOP = getLodop();
LODOP.PRINT_INIT("周报汇票业务统计");
LODOP.ADD_PRINT_TABLE(100, 20, 500, 80, document
.getElementById('printcontent').innerHTML);
LODOP.SET_SAVE_MODE("Orientation", 1); //Excel文件的页面设置:横向打印   1-纵向,2-横向;
LODOP.SET_SAVE_MODE("PaperSize", 9); //Excel文件的页面设置:纸张大小   9-对应A4
LODOP.SET_SAVE_MODE("Zoom", 90); //Excel文件的页面设置:缩放比例
LODOP.SET_SAVE_MODE("CenterHorizontally", true);//Excel文件的页面设置:页面水平居中
LODOP.SET_SAVE_MODE("CenterVertically", true); //Excel文件的页面设置:页面垂直居中
// LODOP.SET_SAVE_MODE("QUICK_SAVE",true);//快速生成(无表格样式,数据量较大时或许用到) 
LODOP.SAVE_TO_FILE("新文件名.xls");
};

也是建立在引入打印JS文件和控件的基础上才能执行

0 0
原创粉丝点击