起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

12
返回列表 发新帖
楼主: qweasdzxc

[结贴] 重复导入Excel鉴别问题

[复制链接]

506

主题

1631

帖子

3395

积分

论坛元老

Rank: 8Rank: 8

积分
3395
QQ
 楼主| 发表于 2017-8-8 20:57:15 | 显示全部楼层
本帖最后由 qweasdzxc 于 2017-8-8 21:47 编辑
jishuang 发表于 2017-8-8 17:20
js中操作数据库肯定会影响效率
我说的方案是遍历数据,拼接字符串,excel导入时传参
在excel导入中去删除导 ...

我的代码如下,结果报错,说类型转不了,这个要怎么弄?
1.在importExcelBeforeAction的执行后事件又不会不报错,代码都一模一样
2.换成import org.apache.poi.hssf.usermodel.HSSFWorkbook;这个类也报不能转换类型的错误
  1. Model.prototype.importExcel1CreateImportParam = function(event){
  2.             var detailData = self.comp("detailData");
  3.             var str="";
  4.             if(detailData.getCount()>0){
  5.                 var fStorageType="";
  6.                 var fStorageSection="";
  7.                 var fworkName="";
  8.                 var fStorageStarusName="";
  9.                 detailData.each(function(param){
  10.                    fStorageType=param.row.val('fStorageType');
  11.                fStorageSection=param.row.val('fStorageSection');
  12.                fworkName=param.row.val('fworkName');
  13.                fStorageStarusName=param.row.val('fStorageStarusName');
  14.                str+=fStorageType+","+fStorageSection+","+fworkName+","+fStorageStarusName+";";
  15.             });
  16.             }
  17.             str=encodeURI(str); //转码,防止后台接收到的字符串是乱码
  18.             event.param['detailData'] = str;
  19.         };
复制代码



022.png
023.png
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36178
发表于 2017-8-9 09:41:35 | 显示全部楼层
在这个事件中只是获取你前端传过来的参数,定义一个全局变量,给把参数值赋值给变量
然后在importExcelBeforeAction的执行后事件获取excel,再用全局变量去校验数据
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

506

主题

1631

帖子

3395

积分

论坛元老

Rank: 8Rank: 8

积分
3395
QQ
 楼主| 发表于 2017-8-9 10:57:47 | 显示全部楼层
jishuang 发表于 2017-8-9 09:41
在这个事件中只是获取你前端传过来的参数,定义一个全局变量,给把参数值赋值给变量
然后在importExcelBefo ...

现在可以了,但是有个问题。像我那样在前台拼接好字符串传到后台,万一grid数据很多,一条数据的重复性有4个判别条件,最后字符串的长度会有影响吗?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36178
发表于 2017-8-9 13:28:27 | 显示全部楼层
字符串的最大长度限制就是java标准的
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

506

主题

1631

帖子

3395

积分

论坛元老

Rank: 8Rank: 8

积分
3395
QQ
 楼主| 发表于 2017-8-9 13:43:10 | 显示全部楼层
jishuang 发表于 2017-8-9 13:28
字符串的最大长度限制就是java标准的

超了的话,这个方法就不行了咯?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36178
发表于 2017-8-9 15:05:37 | 显示全部楼层
那你可以把数据自己存到一个数据库表中或者文件中,直接去读取数据库或者是文件啊
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

506

主题

1631

帖子

3395

积分

论坛元老

Rank: 8Rank: 8

积分
3395
QQ
 楼主| 发表于 2017-8-9 15:10:00 | 显示全部楼层
jishuang 发表于 2017-8-9 15:05
那你可以把数据自己存到一个数据库表中或者文件中,直接去读取数据库或者是文件啊 ...

好吧
回复 支持 反对

使用道具 举报

31

主题

93

帖子

408

积分

中级会员

Rank: 3Rank: 3

积分
408
QQ
发表于 2017-11-10 14:14:25 | 显示全部楼层
jishuang 发表于 2017-8-8 09:59
这样的可以在导入的时候把data中现在的数据传过去,校验重复的时候遍历传过去的数据如果有excel中的就不导 ...

按这个给uploadimportexecl增加参数报错:
2017-11-10 14:10:26 excute stream action, params:{process=/SA/excel/system/systemProcess, activity=mainActivity, action=uploadImportExcel, parameters={excel=java.io.ByteArrayInputStream@6ac9ce, mapping=java.io.ByteArrayInputStream@1a5aabb}}
com.justep.exception.BusinessException: 编码: JUSTEP151044; 提示: 编译模块"/SA/excel/logic/code"中的类"Excel"出错
警告: [options] 未与 -source 1.5 一起设置引导类路径
警告: [options] 源值1.5已过时, 将在未来所有发行版中删除
警告: [options] 目标值1.5已过时, 将在未来所有发行版中删除
警告: [options] 要隐藏有关已过时选项的警告, 请使用 -Xlint:-options。
D:\x5_changzhi\model\BIZ\SA\excel\logic\code\dsrc\Excel.java:95: 错误: 对于createFile(Object), 找不到合适的方法
                result.put("excel", createFile(excel));
                                    ^
    方法 Excel.createFile(HSSFWorkbook)不适用
      (参数不匹配; Object无法转换为HSSFWorkbook)
    方法 Excel.createFile(InputStream)不适用
      (参数不匹配; Object无法转换为InputStream)
D:\x5_changzhi\model\BIZ\SA\excel\logic\code\dsrc\Excel.java:96: 错误: 对于createFile(Object), 找不到合适的方法
                result.put("mapping", createFile(mapping));
                                      ^
    方法 Excel.createFile(HSSFWorkbook)不适用
      (参数不匹配; Object无法转换为HSSFWorkbook)
    方法 Excel.createFile(InputStream)不适用
      (参数不匹配; Object无法转换为InputStream)
2 个错误
4 个警告
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-6-19 22:28 , Processed in 0.053448 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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