tm.begin();
sm.begin();
try {
result = excel.readE(headKeyV,path);
for (int index = 1; index < result.size(); index++) {
tempMap = result.get(index);
if(StringUtils.isEmpty(tempMap.get("XREDID_DUE_DATE"))&& !StringUtils.isEmpty(tempMap.get("XREDID_DATE"))) {
tempMap.put("XSSI_DOMAIN", request.getUser().getDomain());
tempMap.put("XSSI_CM", tempMap.get("XREDI_CM"));
Map map = (Map) sm.getItem("srm.edi.EdiReportBehind.getxssiList", tempMap);
if (map != null) {
//tempMap.remove(tempMap.get("XREDID_DUE_DATE"));
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar = Calendar.getInstance();// 获取日历实例
calendar.setTime(sdf.parse(tempMap.get("XREDID_DATE")+ ""));
int val = Integer.parseInt((map.get("XSSI_ADVANCE") + ""));
calendar.add(Calendar.DAY_OF_MONTH, val);// 参数-1代表在原来时间的基础上减少一天,换为1则为加一天;
Date endDate = calendar.getTime();// 获取改变后的时间
tempMap.put("XREDID_DUE_DATE", sdf.format(endDate));
}
}

NewNbr = getnbr();
tempMap.put("NBR", NewNbr);
Date d = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateNowStr = sdf.format(d);
tempMap.put("XREDI_CRT_DATE", dateNowStr);
tempMap.put("XREDI_CRT_USER", request.getUser().getId());
tempMap.put("DOMAIN", request.getUser().getDomain());
tempMap.put("XREDI_STATUS", "00.LOADING");
tempMap.put("XREDI_TYPE", "IMPORT");
// tempMap.put("XREDI_DOMAIN", request.getUser().getDomain());

Calendar now = Calendar.getInstance();
tempMap.put("XREDID_LINE", index);
tempMap.put("XREDID_NBR", NewNbr);
count++;

int edi =sm.updateObject("srm.edi.EdiReportBehind.updatexredimstr",tempMap);

if (edi<=0) {
sm.createObject("srm.edi.EdiReportBehind.createxredimstr",tempMap);
}
List<Map<String, Object>> obj = sm.getList("srm.edi.EdiReportBehind.getxredimstrlist", tempMap);
if(obj.size()>0){
Map<String, Object> tmap= obj.get(0);
tmap.put("NBR", tmap.get("XREDI_NBR"));
tmap.put("DOMAIN", request.getUser().getDomain());
tmap.put("XREDID_QTY", tempMap.get("XREDID_QTY"));
if(!StringUtils.isEmpty(tempMap.get("XREDID_DATE"))){
tmap.put("XREDID_DATE", tempMap.get("XREDID_DATE"));
}
if(!StringUtils.isEmpty(tempMap.get("XREDID_DUE_DATE"))){
tmap.put("XREDID_DUE_DATE", tempMap.get("XREDID_DUE_DATE"));
}
if(!StringUtils.isEmpty(tempMap.get("XREDID_CPART"))){
tmap.put("CPART", tempMap.get("XREDID_CPART"));
}
if(!StringUtils.isEmpty(tempMap.get("XREDID_PART"))){
tmap.put("PART", tempMap.get("XREDID_PART"));
}
int edid =sm.updateObject("srm.edi.EdiReportBehind.updatexrediddet", tmap);
if (edi<=0) {
sm.createObject("srm.edi.EdiReportBehind.createxrediddet",tempMap);
tempMap.put("message", "修改成功");
}
tempMap.put("message", "修改成功");
}else{
sm.createObject("srm.edi.EdiReportBehind.createxrediddet",tempMap);
tempMap.put("message", "保存成功");
}
if((index+1)%100 == 0){
sm.commit();
sm.begin();
tm.commit();
tm.begin();
}
result2.add(tempMap);
bakList.add(0,tempMap);
}

//request.addRequestObject("list", result2);
if(result.size()% 60 != 0){
sm.commit();
tm.commit();
}
} catch (Exception e) {
bakList.add(0,tempMap);
sm.rollback();
tm.rollback();
}

Excel 导入 分批导入的更多相关文章

  1. [moka同学笔记]PHPexcel之excel导出和导入

    原案例来自http://www.sucaihuo.com/有修改 1.目录结构(文件不用解释,应该都可以看得懂,直接看代码)

  2. Excel自文本导入内容时如何做到单元格内换行

    前言:今天在处理数据的时候,在数据库中用到了\n换行符号,目的是在同表格内做到数据多行显示,比如  字段名1  字段名2  字段名3  1 数据一行 数据二行 数据三行 例子是在sql查询后的结果  ...

  3. Excel的数据导入到PB的DW中

    Excel的数据导入到PB的DW中//==================================================================== // Event:cb_ ...

  4. Visual Basic 2012 借助DataGridView控件将Excel 2010数据导入到SQL server 2012

    (注:注释的颜色原本为绿色,在这里变为黑色,有点不便,但不会造成阅读影响.放入Visual Basic2012代码编辑器后会还原成绿色.) 摘  要:DataGridView控件作为数据传输的中介,只 ...

  5. 循序渐进开发WinForm项目(5)--Excel数据的导入导出操作

    随笔背景:在很多时候,很多入门不久的朋友都会问我:我是从其他语言转到C#开发的,有没有一些基础性的资料给我们学习学习呢,你的框架感觉一下太大了,希望有个循序渐进的教程或者视频来学习就好了. 其实也许我 ...

  6. 将EXCEL数据表导入到SQL中

    工具/原料 SQL Server Management Studio 已建立SQL数据库 方法/步骤   打开SQL Server Management Studio,按图中的路径进入导入数据界面. ...

  7. 将Excel中数据导入数据库(三)

    上篇文章将Excel中数据导入数据库时,将从Excel读入的数据均转换成了数据库相应字段的类型,其实这是没有必要的,因为对于数据库各种类型的插入,均可以字符串格式插入.比如表WQ_SWMSAR_A字段 ...

  8. 将Excel中数据导入数据库(二)

    在上篇文章中介绍到将Excel中数据导入到数据库中,但上篇文章例子只出现了nvachar类型,且数据量很小.今天碰到将Excel中数据导入数据库中的Excel有6419行,其中每行均有48个字段,有i ...

  9. 将Excel中数据导入数据库(一)

    在工作中经常要将Excel中数据导入数据库,这里介绍一种方法. 假如Excel中的数据如下: 数据库建表如下: 其中Id为自增字段: Excel中数据导入数据库帮助类如下: using System; ...

随机推荐

  1. .net core2.0添加json文件并转化成类注入控制器使用 让js调试更简单—console

    .net core2.0添加json文件并转化成类注入控制器使用 上一篇,我们介绍了如何读取自定义的json文件,数据是读取出来了,只是处理的时候太麻烦,需要一遍一遍写,很枯燥.那么有没有很好的办法呢 ...

  2. org.apache.solr.handler.dataimport.DataImportHandlerException: Data Config problem: 对实体 &quot;characterEn

    解决的方法:在配置数据库连接是讲url里的特殊符号要做转义 jdbc:mysql://IP:3306/数据库名?useUnicode=true&characterEncoding=utf8 改 ...

  3. 深分页(Deep Pagination)

    取回阶段 | Elasticsearch: 权威指南 | Elastic https://www.elastic.co/guide/cn/elasticsearch/guide/current/_fe ...

  4. Android隐藏状态栏和标题栏,相当于全屏效果

    隐藏标题栏需要使用预定义样式:android:theme=”@android:style/Theme.NoTitleBar”. 隐藏状态栏:android:theme=”@android:style/ ...

  5. There was a conflict between

    解读,首先搜索到第一个5>的开头的那一行,确认是在编译哪一个项目. 那么后面的冲突,就是在和这个项目冲突. There was a conflict between "log4net, ...

  6. YTU 2705:用重载求距离

    2705: 用重载求距离. 时间限制: 1 Sec  内存限制: 128 MB 提交: 208  解决: 114 题目描述 使用函数重载的方法定义两个重名函数,分别求出整型数的两点间距离和浮点型数的两 ...

  7. 洛谷 P2634 聪聪可可 —— 树形DP / 点分治

    题目:https://www.luogu.org/problemnew/show/P2634 今天刚学了点分治,做例题: 好不容易A了,结果发现自己写的是树形DP...(也不用找重心)(比点分治快) ...

  8. html5中不再支持的元素

    html5中不再支持的元素:1.acronym(建议abbr) : 定义首字母缩写2.applet(建议object): 定义 applet3.basefont(使用css控制)4.big(使用css ...

  9. 湖南集训day8

    难度:☆☆☆☆☆☆☆ /* 可以先考虑一维,可知 模k意义下相同的前缀和任意两个相减都是k的倍数 问题等价于统计前缀何种模k相同的数的对数. 多维的时候二维前缀和,压行或者压列,n^3可以解决. */ ...

  10. codevs地鼠游戏(贪心)

    1052 地鼠游戏  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond   题目描述 Description 王钢是一名学习成绩优异的学生,在平时的学习中,他 ...