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. PHP移动互联网开发笔记(3)——运算符

    原文地址:http://www.php100.com/html/php/rumen/2014/0326/6704.html 一.PHP的运算符 PHP中有丰富的运算符集,它们中大部分直接来自于C语言. ...

  2. Android Studio怎样改动快捷键

    在Android Studio中.如果你认为某个快捷键太复杂,要想改动.怎么改动呢,首先要找到这个快捷键,可是Android Studio搜索快捷键有一个bug,就是你不能依据快捷键来搜索相应的功能点 ...

  3. 苹果app审核,怎样申请加急审核

    苹果app加急审核,是为开发人员提供的特殊通道. 当线上有重大问题须要解决时,能够提出加急审核申请. 心急的朋友直接点 传送门 那么加急审核的入口在哪里呢 首先打开itunesconnect管理后台 ...

  4. debian使用过程中常见的问题

    1 wget https://www.dropbox.com ERROR: The certificate of `www.dropbox.com' is not trusted. ERROR: Th ...

  5. 插入排序(1)——直接插入排序(insert sort)

    假设有一组无序序列 R0, R1, ... , RN-1. (1) 我们先将这个序列中下标为 0 的元素视为元素个数为 1 的有序序列. (2) 然后,我们要依次把 R1, R2, ... , RN- ...

  6. AngularJS2.0 一个表单例子——总体说来还是简化了1.x 使用起来比较自然

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  7. JSP-Runoob:JSP JavaBean

    ylbtech-JSP-Runoob:JSP JavaBean 1.返回顶部 1. JSP JavaBean JavaBean是特殊的Java类,使用J ava语言书写,并且遵守JavaBean AP ...

  8. cookie应用(一周内免登陆)

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  9. 9.15NOIP模拟题

    GRYZ 模拟考试套题 9.15 gryz信息组专场 题目名称 最初的最初 太 妃 糖 可执行文件名 eat hwc dance sugar 输入文件 eat.in hwc.in dance.in s ...

  10. codevs1574广义斐波那契数列

    1574 广义斐波那契数列  时间限制: 1 s  空间限制: 256000 KB  题目等级 : 钻石 Diamond     题目描述 Description 广义的斐波那契数列是指形如an=p* ...