报表打印及导出的代码

  • Post author:
  • Post category:其他


打印函数

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)” οnclick=”printGradePage()”



class=”easyui-linkbutton”



data-options=”plain:true,iconCls:’icon-print'”>打印</a> <a



href=”javascript:void(0)” οnclick=”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文件和控件的基础上才能执行



版权声明:本文为herenoname原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。