通达OA2015-工作流表单导Excel模板后下载

工作流有时需要在某个步骤时按EXCEL模板导出,需要用到PHPExcel和jQuery,具体实现如下

一、表单界面生成按钮【正式报价单】,如下图


二、点按钮时的javascript脚本

 if (jQuery("#myexcel").length==0){
        var html="<form id='myexcel' target='_top' method='POST' action='你的URL'>";
        html+="<input type='hidden' name='flow_id' value='"+g_flow_id+"'/>";
        html+="<input type='hidden' name='_time' value='"+(new Date().getTime())+"'/>";
        html+="<input type='hidden' name='run_id' value='"+g_run_id+"'/>";
        html+="'</form>";
        jQuery("body").append(html);
    }else{
        jQuery("#myexcel input[name='_time']").val(new Date().getTime());
    }
    jQuery("#myexcel").submit();
三、URL中的PHPExcel方法

$INPUT=filter_input_array(INPUT_POST);//接收POST数据
$DATA=$this->_getflowdata($INPUT["run_id"], $INPUT["flow_id"]);//通过POST数据查询相应的表数据
if (!$DATA){
   die("打开工作流数据出错");
} 
$pathfile=dirname(dirname(__FILE__)).'\\Excel\\wujinbaojia.xls';//Excel模板位置
$e=PHPExcel_IOFactory::load($pathfile);
$s=$e->getSheet(0);
$s->setCellValue('F16',date("Y-m-d"));
$s->setCellValue('B20',$this->toUTF8($DATA['data_6']));//客户图号        
$s->setCellValue('C20',$this->toUTF8($DATA['data_18']));//材质
//规格
$s->setCellValue('D20',$this->toUTF8(floatval($DATA['data_404'])>0?"φ".$DATA['data_404']:"t=".$DATA['data_17']));
$s->setCellValue('E20',$this->toUTF8($DATA['data_213']));//表面处理内容
$s->setCellValue('F20',$DATA['data_282']);//最终报价
$s->setCellValue('G20',$DATA['data_161']);//模具报价
$s->setCellValue('H20',$DATA['data_241']);//公司要求MOQ       
$s->setCellValue('E39',date("Y-m-d"));    //日期  
header('Content-Type: application/vnd.ms-excel');  
header('Content-Disposition: attachment;filename="输出Excel文件名.xls"');  
header('Cache-Control: max-age=0');
PHPExcel_IOFactory::createWriter($e,'Excel5')->save('php://output');	

就这样,工作流表单中的数据就可以导出了!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值