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. BAT 前端开发面经 —— 吐血总结 前端相关片段整理——持续更新 前端基础精简总结 Web Storage You don't know js

    BAT 前端开发面经 —— 吐血总结   目录 1. Tencent 2. 阿里 3. 百度 更好阅读,请移步这里 聊之前 最近暑期实习招聘已经开始,个人目前参加了阿里的内推及腾讯和百度的实习生招聘, ...

  2. LeetCode 977. Squares of a Sorted Array (有序数组的平方)

    题目标签:Array 题目给了我们一组 从小到大的 integers,让我们平方数字 并且 也排序成 从小到达. 因为有负数在里面,平方后,负数在array的位置会变动. 可以设left 和 righ ...

  3. 我所未知的 typeof 现象

    一.一些基本使用测试 从上述可以看出: 1.判断一个 变量 是不是对象类型,不能只用 typeof 运算符: 2.它的返回值一直是一个字符串: 3.尽管 typeof null === 'object ...

  4. js添加页面元素

    js动态创建html元素需要使用到下面这些常见的js方法. getElementById();//返回带有指定 ID 的元素. getElementsByTagName();//返回包含带有指定标签名 ...

  5. C# LIstbox 解决WinForm下ListBox控件“设置DataSource属性后无法修改项集合”的问题

    解决WinForm下ListBox控件“设置DataSource属性后无法修改项集合”的问题 分类: winform2008-05-24 02:33 2592人阅读 评论(11) 收藏 举报 winf ...

  6. hdu 6198(矩阵快速幂)

    number number number Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

  7. 分类(category)是门学问

    分类的精细程度表现了人类的文明程度. 1. 学科分类 cybernetics:控制论:

  8. JSP-Runoob:JSP 指令

    ylbtech-JSP-Runoob:JSP 指令 1.返回顶部 1. JSP 指令 JSP指令用来设置整个JSP页面相关的属性,如网页的编码方式和脚本语言. 语法格式如下: <%@ direc ...

  9. CSS小代码汇总整理

    /**实现斑马线的表格*/table.flexme tbody tr:nth-child(2n){background-color:#D6E7FC;} /*返回偶数序的子元素*/table.flexm ...

  10. FSDataInputStream对象 读取数据