JEPaaS 社区

 找回密码
 立即注册
JECloud低代码平台-官网
查看: 2761|回复: 0

【平台配置】JEPaaS实现单功能按照Excel模板导出

[复制链接]

10

主题

11

帖子

132

积分

凯特员工

积分
132
发表于 2022-4-11 21:16:51 | 显示全部楼层 |阅读模式
本帖最后由 凯特-姚帅龙 于 2022-4-11 21:38 编辑

一、实现效果
导出的Excel如下
1.png
二、实现思路
1.在Excel数据导入创建一条数据
2.配置Excel信息
3.配置sheet页信息

4.配置功能和按钮
三、具体操作

1.进入Excel数据导入功能
2.png
2.点击创建后维护以下信息
3.png
3.点击导入明细
4.png
4.维护sheet页的详细信息
5.png

5.功能配置
expGroup         模板编码
expExcelTypes  TEMPLATE
6.png
6.按钮配置
导出按钮点击前

  1. function(btn,event,eOpts){
  2.     var grid = btn.up("jegridview");
  3.     var funcInfo = grid.funcData.info;
  4.     if(!grid.localLang){
  5.         grid.localLang = JE.getLocalLang('core.jegridview');
  6.     }
  7.     var expGroup = JE.getObjAttr(funcInfo.otherConfig,"expGroup");
  8.     var localLang = grid.localLang.expExcel;
  9.     JE.formWin({
  10.         title:localLang.title,
  11.         width:450,
  12.         height:200,
  13.         border:0,
  14.         frame:true,
  15.         autoShow:true,
  16.         formConfig:{
  17.             bodyPadding : '10 10 0 10'
  18.         },
  19.         formDefaults:{
  20. //                                                        padding:'5 0 5 0'
  21.         },
  22.         items:[{
  23.             xtype:'textfield',
  24.             name:'title',
  25.             allowBlank:false,
  26.             fieldLabel:localLang.titleLabel
  27.         },{
  28.             xtype:'textfield',
  29.             name:'fileName',
  30.             allowBlank:false,
  31.             fieldLabel:localLang.fileNameLabel
  32.         },{
  33.             xtype:'rgroup',
  34.             name:'expType',
  35.             fieldLabel:localLang.expTypeLabel,
  36.             value:'NOWPAGE',
  37.             dataArray:[{
  38.                 id:'NOWPAGE',
  39.                 text:localLang.expTypeData.NOWPAGE,
  40.                 code:'NOWPAGE'
  41.             },{
  42.                 id:'SELECTION',
  43.                 text:localLang.expTypeData.SELECTION,
  44.                 code:'SELECTION'
  45.             },{
  46.                 id:'ALL',
  47.                 text:localLang.expTypeData.ALL,
  48.                 code:'ALL'
  49.             }]
  50.         }],
  51.         fn:function(vals,win){
  52.             var store=grid.getStore();
  53.             var extraParams=store.proxy.extraParams;
  54.             var params = {
  55.                 title: vals.title,
  56.                 fileName: vals.fileName,
  57.                 orderSql: extraParams.orderSql,
  58.                 docFolderId: vals.docFolderId,
  59.                 funcId: funcInfo.funcId,
  60.                 tableCode: funcInfo.tableName,
  61.                 funcCode: funcInfo.funcCode
  62.             };
  63.             // 张帅鹏   如果是视图功能,则传视图名
  64.             if(funcInfo.funcType=='view' && JE.isNotEmpty(funcInfo.viewTableName)){
  65.                 params.tableCode=funcInfo.viewTableName;
  66.             }
  67.             if ('ALL'==vals.expType) {
  68.                 params.whereSql = extraParams.whereSql;
  69.                 params.j_query = extraParams.j_query;
  70.             } else if('NOWPAGE'==vals.expType) {
  71.                 var ids=new Array();
  72.                 store.each(function(rec){
  73.                     ids.push(rec.get(funcInfo.pkName));
  74.                 });
  75.                 params.whereSql = " AND " + funcInfo.pkName + " IN ('" + ids.join("','") + "')";
  76.                 params.j_query = {
  77.                     custom: [{ type: 'in', code: funcInfo.pkName, value: ids }]
  78.                 };
  79.             }else if('SELECTION'==vals.expType){
  80.                 var ids=new Array();
  81.                 Ext.each(grid.getSelectionModel().getSelection(),function(rec){
  82.                     ids.push(rec.get(funcInfo.pkName));
  83.                 });
  84.                 params.whereSql = " AND " + funcInfo.pkName + " IN ('" + ids.join("','") + "')";
  85.                 params.j_query = {
  86.                     custom: [{ type: 'in', code: funcInfo.pkName, value: ids }]
  87.                 };
  88.             }
  89.             if('REPORT'==vals.styleType){
  90.                 if(!funcInfo.gridPrintInfo.relColumns){
  91.                     JE.alert(localLang.styleTypeAlert);
  92.                     return false;
  93.                 }
  94.             }
  95.             
  96.             params.code=expGroup;
  97.             if(paramsObj){
  98.                 params = Object.assign(paramsObj,params);
  99.             }
  100.             //var resObj=JE.ajax({url:JE.getUrlMaps('je.core.develop.excel', 'exp'),params:params});
  101.             var resObj = JE.ajax({ url: '/je/develop/excel/downloadKey', params: { data: btoa(Ext.JSON.encode(params))}});
  102.             var key = resObj.obj;
  103.             window.open("/je/develop/excel/expExcel?key="+key);
  104.             /* if(resObj.success){
  105.                 //window.open(JE.getFileUrl(resObj.obj));
  106.             }else{
  107.                 JE.alert(resObj.obj);
  108.             } */
  109.         },
  110.         showFn:function(win){
  111.             var form=win.down('form');
  112.             var values={
  113.                 title:funcInfo.funcName,
  114.                 fileName:funcInfo.funcName+'_'+JE.DATE.formatDate(new Date())+".xls"
  115.             }
  116.             fileNameOld = values.fileName;
  117.             form.form.setValues(values);
  118.         }
  119.     });
  120.     return false;        
  121. }
复制代码


六、关键字

写几个本帖的关键字,方便用户检索。
Excel按照模板导出,Excel导出




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|JEPaaS 低代码平台社区 ( 京ICP备18023569号 )

GMT+8, 2024-5-7 10:33 , Processed in 0.057847 second(s), 23 queries .

Powered by 北京凯特伟业科技有限公司

Copyright © 2001-2021, JEPaaS.COM

快速回复 返回顶部 返回列表