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

QQ登录

只需一步,快速开始

查看: 6395|回复: 15

[结贴] 导入时检验数据的时存在数据导入不正常

[复制链接]

32

主题

167

帖子

1486

积分

金牌会员

Rank: 6Rank: 6

积分
1486
QQ
发表于 2014-9-27 22:05:58 | 显示全部楼层 |阅读模式
版本: X5.2.7 小版本号:
数据库: MS SQLServer 服务器操作系统: Windows 应用服务器: Tomcat
客户端操作系统: Windows 7 浏览器: Chrome
本帖最后由 Yawn 于 2014-9-28 11:55 编辑

如题   数据库没有重复的数据, 那么导入正常,如果数据库有重复的数据,导入就不正常,有可能导入不完全,也可能根本不导入数据
求大神解决,谢谢!
代码如下:
public static void customerProcessAfterImportExcelBeforeAction() {
String fCustName1=null;
Workbook workBook = (Workbook) ModelUtils.getRequestContext().getActionContext().getParameter("excel");
Sheet sheet = workBook.getSheetAt(0);
  for (int i = 1; i <= sheet.getLastRowNum(); i++) {
  Row row = sheet.getRow(i);
  fCustName1 = row.getCell(0).getStringCellValue();
  if (HaveData(fCustName1)) {
   sheet.removeRow(row);
  }
}
}

public static Boolean HaveData(String FName){
String ksql = "select M.fCustName,M.fMobileNo from CRM_Customer M where M.fCustName='" + FName + "'";
Table table = KSQL.select(ksql, null, "/CRM/CRM/data", null);
Iterator<com.justep.system.data.Row> rows = table.iterator();
if (rows.hasNext()){
   return true;
  }else
   return false;
}
}

系统提示“导入成功“,但还是原来的数据,新数据并未导入。好像sheet.removeRow(row);这一句并未执行,或都说并没有删除掉excel里面的数据。


QQ:594724910

310

主题

4938

帖子

4767

积分

论坛元老

Rank: 8Rank: 8

积分
4767
QQ
发表于 2014-9-28 07:53:14 | 显示全部楼层
添加到dsrc src源码路径,设置断点,跟踪是哪句代码出的问题?
将控制台的报错信息发上来
QQ:179785966
回复 支持 反对

使用道具 举报

32

主题

167

帖子

1486

积分

金牌会员

Rank: 6Rank: 6

积分
1486
QQ
 楼主| 发表于 2014-9-28 08:43:39 | 显示全部楼层
yinlun 发表于 2014-9-28 07:53
添加到dsrc src源码路径,设置断点,跟踪是哪句代码出的问题?
将控制台的报错信息发上来
...

不报错啊 控制台和浏览器都没有报错
QQ:594724910
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35920
发表于 2014-9-28 09:51:06 | 显示全部楼层
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

1

主题

1222

帖子

1378

积分

金牌会员

Rank: 6Rank: 6

积分
1378
QQ
发表于 2014-9-28 09:55:54 | 显示全部楼层
sheet 是在哪里申明的,少加点数据调试看看是哪里删错了
回复 支持 反对

使用道具 举报

53

主题

267

帖子

896

积分

高级会员

Rank: 4

积分
896
QQ
发表于 2014-9-28 11:31:02 | 显示全部楼层
本帖最后由 ajun007_cn 于 2014-9-28 11:39 编辑

关注
东莞相思鸟软件 专业X5开发团队 长期招收学徒 推荐工作
http://www.leiothrixsoft.com QQ:402807176
回复

使用道具 举报

32

主题

167

帖子

1486

积分

金牌会员

Rank: 6Rank: 6

积分
1486
QQ
 楼主| 发表于 2014-9-28 11:39:08 | 显示全部楼层
wangliang 发表于 2014-9-28 09:55
sheet 是在哪里申明的,少加点数据调试看看是哪里删错了

上面贴的代码少了一行Sheet sheet = workBook.getSheetAt(0);
楼主已经更正,现在问题是:sheet.removeRow(row);
调试过程中,没有报错,执行了sheet.removeRow(row);
删除了重复的行,但导入的结果并没有变化,也就是说不重复的数据也没有导入
QQ:594724910
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35920
发表于 2014-9-28 11:41:58 | 显示全部楼层
用removeCell的方法

不要用romverRow
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

32

主题

167

帖子

1486

积分

金牌会员

Rank: 6Rank: 6

积分
1486
QQ
 楼主| 发表于 2014-9-28 11:48:33 | 显示全部楼层
jishuang 发表于 2014-9-28 11:41
用removeCell的方法

不要用romverRow

removeCell  是删除单元格的方法吧,删除单元格跟我的实际情况不一样啊!
QQ:594724910
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35920
发表于 2014-9-28 11:54:18 | 显示全部楼层
导入的时候这行就不会导入,看4楼发的列子都,用的都是removeCell
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-6 06:25 , Processed in 0.064931 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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