|
本帖最后由 凯特-姚帅龙 于 2022-4-11 21:38 编辑
一、实现效果
导出的Excel如下
二、实现思路
1.在Excel数据导入创建一条数据
2.配置Excel信息
3.配置sheet页信息
4.配置功能和按钮
三、具体操作
1.进入Excel数据导入功能
2.点击创建后维护以下信息
3.点击导入明细
4.维护sheet页的详细信息
5.功能配置
expGroup 模板编码
expExcelTypes TEMPLATE
6.按钮配置
导出按钮点击前
- function(btn,event,eOpts){
- var grid = btn.up("jegridview");
- var funcInfo = grid.funcData.info;
- if(!grid.localLang){
- grid.localLang = JE.getLocalLang('core.jegridview');
- }
- var expGroup = JE.getObjAttr(funcInfo.otherConfig,"expGroup");
- var localLang = grid.localLang.expExcel;
- JE.formWin({
- title:localLang.title,
- width:450,
- height:200,
- border:0,
- frame:true,
- autoShow:true,
- formConfig:{
- bodyPadding : '10 10 0 10'
- },
- formDefaults:{
- // padding:'5 0 5 0'
- },
- items:[{
- xtype:'textfield',
- name:'title',
- allowBlank:false,
- fieldLabel:localLang.titleLabel
- },{
- xtype:'textfield',
- name:'fileName',
- allowBlank:false,
- fieldLabel:localLang.fileNameLabel
- },{
- xtype:'rgroup',
- name:'expType',
- fieldLabel:localLang.expTypeLabel,
- value:'NOWPAGE',
- dataArray:[{
- id:'NOWPAGE',
- text:localLang.expTypeData.NOWPAGE,
- code:'NOWPAGE'
- },{
- id:'SELECTION',
- text:localLang.expTypeData.SELECTION,
- code:'SELECTION'
- },{
- id:'ALL',
- text:localLang.expTypeData.ALL,
- code:'ALL'
- }]
- }],
- fn:function(vals,win){
- var store=grid.getStore();
- var extraParams=store.proxy.extraParams;
- var params = {
- title: vals.title,
- fileName: vals.fileName,
- orderSql: extraParams.orderSql,
- docFolderId: vals.docFolderId,
- funcId: funcInfo.funcId,
- tableCode: funcInfo.tableName,
- funcCode: funcInfo.funcCode
- };
- // 张帅鹏 如果是视图功能,则传视图名
- if(funcInfo.funcType=='view' && JE.isNotEmpty(funcInfo.viewTableName)){
- params.tableCode=funcInfo.viewTableName;
- }
- if ('ALL'==vals.expType) {
- params.whereSql = extraParams.whereSql;
- params.j_query = extraParams.j_query;
- } else if('NOWPAGE'==vals.expType) {
- var ids=new Array();
- store.each(function(rec){
- ids.push(rec.get(funcInfo.pkName));
- });
- params.whereSql = " AND " + funcInfo.pkName + " IN ('" + ids.join("','") + "')";
- params.j_query = {
- custom: [{ type: 'in', code: funcInfo.pkName, value: ids }]
- };
- }else if('SELECTION'==vals.expType){
- var ids=new Array();
- Ext.each(grid.getSelectionModel().getSelection(),function(rec){
- ids.push(rec.get(funcInfo.pkName));
- });
- params.whereSql = " AND " + funcInfo.pkName + " IN ('" + ids.join("','") + "')";
- params.j_query = {
- custom: [{ type: 'in', code: funcInfo.pkName, value: ids }]
- };
- }
- if('REPORT'==vals.styleType){
- if(!funcInfo.gridPrintInfo.relColumns){
- JE.alert(localLang.styleTypeAlert);
- return false;
- }
- }
-
- params.code=expGroup;
- if(paramsObj){
- params = Object.assign(paramsObj,params);
- }
- //var resObj=JE.ajax({url:JE.getUrlMaps('je.core.develop.excel', 'exp'),params:params});
- var resObj = JE.ajax({ url: '/je/develop/excel/downloadKey', params: { data: btoa(Ext.JSON.encode(params))}});
- var key = resObj.obj;
- window.open("/je/develop/excel/expExcel?key="+key);
- /* if(resObj.success){
- //window.open(JE.getFileUrl(resObj.obj));
- }else{
- JE.alert(resObj.obj);
- } */
- },
- showFn:function(win){
- var form=win.down('form');
- var values={
- title:funcInfo.funcName,
- fileName:funcInfo.funcName+'_'+JE.DATE.formatDate(new Date())+".xls"
- }
- fileNameOld = values.fileName;
- form.form.setValues(values);
- }
- });
- return false;
- }
复制代码
六、关键字
写几个本帖的关键字,方便用户检索。
Excel按照模板导出,Excel导出
|
|