#region 导入订单
        protected override string DoExcelData(System.Data.DataTable dt)
        {
            string data = "";
            try
            {
                if (dt.Rows.Count == 0)
                {
                    return "excel中无数据";
                }
                #region 接单日期时分取导入报表时间
                string mstime = DateTime.Now.ToString("HH:mm");
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    string time = Convert.ToDateTime(dt.Rows[i]["接单日期"].ToString()).ToString("yyyy-MM-dd");
                    dt.Rows[i]["接单日期"] = time + " " + mstime;
                }
                #endregion
                NameValueCollection cols = new NameValueCollection();
                cols.Add("客户名称", "CustomerAbbr");
                cols.Add("交货单号/出货单号", "SourceNo");
                cols.Add("任务单号", "TaskSourceNo");
                cols.Add("线路分类", "LineType");
                cols.Add("接单日期", "OrderDt");
                cols.Add("发货工厂", "FactoryAbbr");
                cols.Add("收货单位", "DealerAbbr");
                cols.Add("预开票单位", "TaxpayerName");
                cols.Add("出货仓库", "ShipmentHub");
                cols.Add("运输方式", "TransType");
                cols.Add("货物名称", "CargoName");
                cols.Add("品项", "ItemName");
                cols.Add("货量", "GW");
                cols.Add("数量", "Qty");
                //cols.Add("货物分类", "CargoType");
                cols.Add("是否中转", "IsTrans");
                cols.Add("备注", "Remark");
                ChangeDtTitle(dt, cols);
                dt.TableName = "data";

using (System.IO.StringWriter writer = new System.IO.StringWriter())
                {
                    dt.WriteXml(writer, false);
                    data = writer.ToString();
                }
                data = BaseService<dynamic>.GetScale(new { ActionName = "importDetail", data = data, DeptCode = ImportDeptCode, CreateBy = CurrentUserInfo.UserCode }, "Web_T_Order_sp");
            }
            catch (Exception e)
            {
                Exception ex = e;
                while (ex.InnerException != null)
                    ex = ex.InnerException;
                data = ex.Message;
            }
            return data;
        }

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

@data xml='',

SELECT identity(int,1,1) as RowNo,
               t.c.value('CustomerAbbr[1]','varchar(max)') CustomerAbbr,
               CAST(NULL as varchar(50) ) as CustomerCode,
               ISNULL( t.c.value('SourceNo[1]','varchar(max)'),0) SourceNo,
               t.c.value('TaskSourceNo[1]','varchar(max)') TaskSourceNo,
               t.c.value('LineType[1]','varchar(max)') LineType,
               t.c.value('OrderDt[1]','datetime') OrderDt,
               t.c.value('FactoryAbbr[1]','varchar(max)')FactoryAbbr,
               t.c.value('IsTrans[1]','varchar(max)')IsTrans,
               CAST(NULL AS varchar(50))TransCode,
               CAST(NULL as varchar(50) )FactoryCode,
               t.c.value('DealerAbbr[1]','varchar(max)')DealerAbbr,
               CAST(NULL as varchar(50) )DealerCode,
               t.c.value('TaxpayerName[1]','varchar(max)')TaxpayerName,
               CAST(NULL as varchar(50) )TaxpayerID,
               t.c.value('CargoName[1]','varchar(max)')CargoName,
               CAST(NULL as varchar(50) )CargoCode,
               t.c.value('ItemName[1]','varchar(max)')ItemName,
               CAST(NULL as varchar(50) )ItemCode,
               t.c.value('GW[1]','numeric(18,2)')GW,
               t.c.value('Qty[1]','numeric(18,2)')Qty,
               t.c.value('TransType[1]','varchar(max)')TransType,
               t.c.value('ShipmentHub[1]','varchar(max)')ShipmentHub,
               t.c.value('Remark[1]','varchar(max)')Remark,
               CAST(NULL as varchar(50))DeptCode ,
               CAST(NULL as varchar(30))QuotationNo,
               CAST(NULL as int) QuotationRowID,
               CAST(NULL as varchar(30)) SuccFulCode,
               CAST(NULL as varchar(30))LineCode,
               CAST(NULL as int) as OrderType,
               CAST(NULL as varchar(50))OrderNo,
               CAST(NULL AS varchar(50))CustomerTaskNo,
               CAST(NULL AS varchar(50))BussessType
        INTO  #tmpdetailimport
        FROM @data.nodes('//DocumentElement/data')t(c)

存储过程导入excel的更多相关文章

  1. Oracle导入excel数据方法汇总[转]

    摘要:在程序编制过程和数据汇总交换过程中,经常会碰到需要将其他人员在office办公环境下编制的文件数据内容导入oracle中的情况.目前程序开发者经常使用的方法有如下几种:1,使用oracle提供的 ...

  2. MySQL批量导入Excel、txt数据

    MySQL批量导入Excel.txt数据 我想Excel是当今最大众化的批量数据管理软件了吧,所以我们会经常涉及到将Excel中数据导入到MySQL中的工作.网上有一些关于直接将Excel导入MySQ ...

  3. 一步步实现ABAP后台导入EXCEL到数据库【3】

    在一步步实现ABAP后台导入EXCEL到数据库[2]里,我们已经实现计划后台作业将数据导入数据库的功能.但是,这只是针对一个简单的自定义结构的导入程序.在实践应用中,面对不同的表.不同的导入文件,我们 ...

  4. 一步步实现ABAP后台导入EXCEL到数据库【1】

    在SAP的应用当中,导入.导出EXCEL文件的情况是一个常见的需求,有时候用户需要将大量数据定期导入到SAP的数据库中.这种情况下,使用导入程序在前台导入可能要花费不少的时间,如果能安排导入程序为后台 ...

  5. [Asp.net]常见数据导入Excel,Excel数据导入数据库解决方案,总有一款适合你!

    引言 项目中常用到将数据导入Excel,将Excel中的数据导入数据库的功能,曾经也查找过相关的内容,将曾经用过的方案总结一下. 方案一 NPOI NPOI 是 POI 项目的 .NET 版本.POI ...

  6. IE8下导入EXCEL数据传到客户端以附件下载

    IE8下导入EXCEL数据传到客户端以附件下载方式出现,而不显示数据,解决方法:以text/html格式返回. HttpResponseMessage message = new HttpRespon ...

  7. java的poi技术读取和导入Excel

    项目结构: http://www.cnblogs.com/hongten/gallery/image/111987.html  用到的Excel文件: http://www.cnblogs.com/h ...

  8. 报表工具如何实现多次导入Excel

    很多人在开发报表的时候会遇到将多张表样相同的excel导入到模板,然后提交至数据库中.但问题是很多情况,在线导入不支持一次性选择多个excel,一次只能选择一个excel,也不能将多个excel中的数 ...

  9. .NET导入Excel到SQL数据库

    在我们开发各类应用型系统,经常会遇到导入导出Excel,为什么会用到他呢?企业或者单位在从无信息化到信息化的一个转变过程.在没有信息化的企业或单位之前,一般都采用Excel来记录相应的数据,做统计计算 ...

随机推荐

  1. Apache服务器和tomcat服务器有什么区别(转)

    Apache与Tomcat都是Apache开源组织开发的用于处理HTTP服务的项目,两者都是免费的,都可以做为独立的Web服务器运行.Apache是Web服务器而Tomcat是Java应用服务器. A ...

  2. [转]PhpStorm快捷键大全

    1 前言 PhPStorm 是 JetBrains 公司开发的一款商业的 PHP 集成开发工具,PhpStorm可随时帮助用户对其编码进行调整,运行单元测试或者提供可视化debug功能.Phpstro ...

  3. iOS -- Effective Objective-C 阅读笔记 (2)

    1: 多用类型常量, 少用 #define 预处理指令 #define 预处理指令会把碰到的所有 指定名称 一律换位 定义的内容, 这样的话, 假设此指令在某个头文件中, 那么所有引入这个头文件的代码 ...

  4. 通过设置ie的通过跨域访问数据源,来访问本地服务

    1.首先设置通过域访问数据源 设置通过域访问数据源 2.javascript脚本ajax使用本地服务登录(评价,人证的类似)接口 <html> <head> <scrip ...

  5. SQL Server 数据恢复到指点时间点(完整恢复)

    SQL Server 数据恢复到指点时间点(完整恢复) 高文龙关注2人评论944人阅读2017-03-20 12:57:12 SQL Server 数据恢复到指点时间点(完整恢复) 说到数据库恢复,其 ...

  6. Confluence 6 修改默认空间标识图片

    空间标识图片在边栏上的站点目录(Sites Directory)中作为图标进行显示.默认的空间标识图片将会应用到所有的空间中,如果你没有自定义的空间标识被定义的话,请查看 Configure the ...

  7. ionic3 启动白屏处理

    重点就就三点 1.设置不自动隐藏splashscreen页面,设置最多延迟10s再关闭,这样可以不显示启动前的白画面 <preference name="AutoHideSplashS ...

  8. nginx常用命令及简单配置

    nginx常用命令 nginx -c /usr/local/nginx/conf/nginx.conf 启动nginx(windows下start nginx); nginx -s quit 停止ng ...

  9. C#概念总结(一)

    1.C#程序的框架问题 首先是命名的空间申明   (NameSpace delclaration) 一个 ClASS class 方法 class属性 一个main 的方法 语句(Statement) ...

  10. Python之argv简明详解

    今日看到argv 度娘查找一番,基本都是转载的同一篇文章,总体字数不少但看了之后感觉还是稀里糊涂,自己尝试了一番简单总结如下 当我们需要在命令行执行脚本并需要在执行脚本的同时传入参数给脚本使用,那我们 ...