导出数据到excel
Protected Sub cmdOrderExport_Click(ByVal sender As Object, ByVal e As EventArgs) Handles cmdOrderExport.Click
Try
Me.BuildCondition()
Dim ht As Hashtable = APICurrent.API.Dynamic.Trade.searchGoodsStockInfo(objCondition)
'总件数
Dim allCount As Integer = CType(ht.Item(MCO010.CONST_DATACOUNT), Integer)
Dim ds As DataTable = CType(ht.Item(MCO010.CONST_DATA), DataTable)
' Excel类
Dim orderListPrinter As New GoodsStockListPrint(Me.GetExcelTemplatePath() & "GoodsStockList.xlt")
orderListPrinter.DataSource = New Object() {ds}
Me.ExportExcel(orderListPrinter)
Catch ex As Exception
LogManager.Debug(ex.ToString)
Me.Controls.Add(New LiteralControl("<SCRIPT>alert('" + MCO003.getNameByResID(MCO005.IMSG011) + "');</SCRIPT>"))
End Try
End Sub
Public Class GoodsStockListPrint
Inherits ExcelComm
'列数
ReadOnly COL_CNT As Integer = 18
'列的索引
Private Enum Enum_Col As Integer
ICOL_StockID = 0 '编号
ICOL_GoodSID = 1 '编号
ICOL_GoodsName = 2 '名称
ICOL_StoreID = 3 '店铺编号
ICOL_StoreName = 4 '店铺
ICOL_CompanyID = 5 '编号
ICOL_CompanyName = 6 '经销商
ICOL_SpecNo1 = 7 '规格一编号
ICOL_SpecName1 = 8 '规格一
ICOL_SpecID1 = 9 '规格一明细编号
ICOL_SpecDtlName1 = 10 '规格明细一
ICOL_SpecNo2 = 11 '规格二编号
ICOL_SpecName2 = 12 '规格二
ICOL_SpecID2 = 13 '规格二明细编号
ICOL_SpecDtlName2 = 14 '规格明细二
ICOL_InitalStockNum = 15 '初始库存
ICOL_RemainingStockNum = 16 '剩余库存
ICOL_GoodsPrice = 17 '商品定价
End Enum
''' <summary>
''' 构造函数
''' </summary>
''' <param name="strTempPath"></param>
''' <remarks></remarks>
Public Sub New(ByVal strTempPath As String)
MyBase.New(strTempPath)
End Sub
''' <summary>
''' 内容作成
''' </summary>
''' <param name="aryData"></param>
''' <remarks></remarks>
Protected Overrides Sub FillExportData(ByVal ParamArray aryData() As Object)
ExcelApp.AlertBeforeOverwriting = False
ExcelApp.AskToUpdateLinks = False
ExcelApp.DisplayAlerts = False
' 填充Excel
Me.ExportDetail(aryData)
End Sub
Private Sub ExportDetail(ByVal aryData() As Object)
Dim objData As DataTable = aryData(0)
'定义数组
Dim strTemp(objData.Rows.Count, COL_CNT) As Object
Dim startRow As Integer = 4
For i As Integer = 0 To objData.Rows.Count - 1
strTemp(i, Enum_Col.ICOL_StockID) = MCO001.DBNULL2Str(objData.Rows(i).Item("StockID")).Trim
strTemp(i, Enum_Col.ICOL_GoodSID) = MCO001.DBNULL2Str(objData.Rows(i).Item("GoodsID")).Trim
strTemp(i, Enum_Col.ICOL_GoodsName) = MCO001.DBNULL2Str(objData.Rows(i).Item("GoodsName")).Trim
strTemp(i, Enum_Col.ICOL_StoreID) = MCO001.DBNULL2Str(objData.Rows(i).Item("StoreID")).Trim
strTemp(i, Enum_Col.ICOL_StoreName) = MCO001.DBNULL2Str(objData.Rows(i).Item("StoreName")).Trim
strTemp(i, Enum_Col.ICOL_CompanyID) = MCO001.DBNULL2Str(objData.Rows(i).Item("CompanyID")).Trim
strTemp(i, Enum_Col.ICOL_CompanyName) = MCO001.DBNULL2Str(objData.Rows(i).Item("CompanyName")).Trim
strTemp(i, Enum_Col.ICOL_SpecNo1) = MCO001.DBNULL2Str(objData.Rows(i).Item("SpecNo1")).Trim
strTemp(i, Enum_Col.ICOL_SpecName1) = MCO001.DBNULL2Str(objData.Rows(i).Item("SpecName1")).Trim
strTemp(i, Enum_Col.ICOL_SpecID1) = MCO001.DBNULL2Str(objData.Rows(i).Item("SpecID1")).Trim
strTemp(i, Enum_Col.ICOL_SpecDtlName1) = MCO001.DBNULL2Str(objData.Rows(i).Item("SpecDtlName1")).Trim
strTemp(i, Enum_Col.ICOL_SpecNo2) = MCO001.DBNULL2Str(objData.Rows(i).Item("SpecNo1")).Trim
strTemp(i, Enum_Col.ICOL_SpecName2) = MCO001.DBNULL2Str(objData.Rows(i).Item("SpecName2")).Trim
strTemp(i, Enum_Col.ICOL_SpecID2) = MCO001.DBNULL2Str(objData.Rows(i).Item("SpecID2")).Trim
strTemp(i, Enum_Col.ICOL_SpecDtlName2) = MCO001.DBNULL2Str(objData.Rows(i).Item("SpecDtlName2")).Trim
strTemp(i, Enum_Col.ICOL_InitalStockNum) = MCO001.DBNULL2Str(objData.Rows(i).Item("InitalStockNum")).Trim
strTemp(i, Enum_Col.ICOL_RemainingStockNum) = MCO001.DBNULL2Str(objData.Rows(i).Item("RemainingStockNum")).Trim
strTemp(i, Enum_Col.ICOL_GoodsPrice) = MCO001.DBNULL2Str(objData.Rows(i).Item("GoodsPrice")).Trim
Next
Dim tmp As String = "A4:R" + (objData.Rows.Count + 4).ToString
setRangeValue(Me.Sheet, strTemp, tmp, "")
'默认选中第一行
Me.Sheet.Rows(1).Select()
End Sub
End Class
导出数据到excel的更多相关文章
- 1.ASP.NET MVC使用EPPlus,导出数据到Excel中
好久没写博客了,今天特地来更新一下,今天我们要学习的是如何导出数据到Excel文件中,这里我使用的是免费开源的Epplus组件. 源代码下载:https://github.com/caofangshe ...
- 导出数据到Excel --使用ExcelReport有感
先看图,这是几个月前用NPOI写的导出数据到Excel,用了上百行代码,而且难控制,导出来也比较难看 excel打开的效果 下面是我用ExcelReport类库导出到Excel的操作 1.首先引用Ex ...
- 使用Open xml 操作Excel系列之二--从data table导出数据到Excel
由于Excel中提供了透视表PivotTable,许多项目都使用它来作为数据分析报表. 在有些情况下,我们需要在Excel中设计好模板,包括数据源表,透视表等, 当数据导入到数据源表时,自动更新透视表 ...
- Dynamics CRM导出数据到Excel
原创地址:http://www.cnblogs.com/jfzhu/p/4276212.html 转载请注明出处 Pivot Table是微软BI的一个重要工具,所以这里讲一下Dynamics CRM ...
- MVC导出数据到EXCEL新方法:将视图或分部视图转换为HTML后再直接返回FileResult
导出EXCEL方法总结 MVC导出数据到EXCEL的方法有很多种,常见的是: 1.采用EXCEL COM组件来动态生成XLS文件并保存到服务器上,然后转到该文件存放路径即可: 优点:可设置丰富的EXC ...
- php导出数据到excel,防止身份证等数字字符格式变成科学计数的方法
而关于php的也有,但是大多都是用phpExcel导出的方法或者spreadsheet等类或者控件之类的导出方法,而我所在维护的系统却用很简单的方法,如下,网上很少有讲如何设置要导出数据的EXcel格 ...
- NPOI导出数据到Excel
NPOI导出数据到Excel 前言 Asp.net操作Excel已经是老生长谈的事情了,可下面我说的这个NPOI操作Excel,应该是最好的方案了,没有之一,使用NPOI能够帮助开发者在没有安装微 ...
- ASP.NET导出数据到Excel 实例介绍
ASP.NET导出数据到Excel 该方法只是把asp.net页面保存成html页面只是把后缀改为xlc不过excel可以读取,接下连我看看还有别的方式能导出数据,并利用模版生成. 下面是代码 新建 ...
- C#导出数据到Excel通用的方法类
导出数据到Excel通用的方法类,请应对需求自行修改. 资源下载列表 using System.Data; using System.IO; namespace IM.Common.Tools { p ...
- 一个方便且通用的导出数据到 Excel 的类库
一个方便且通用的导出数据到 Excel 的类库 起源: 之前在做一个项目时,客户提出了许多的导出数据的需求: 导出用户信息 导出业务实体信息 各种查询都要能导出 导出的数据要和界面上看到的一致 可以分 ...
随机推荐
- iOS10相机等崩溃
当使用iOS10使用相机时会出现崩溃 This app has crashed because it attempted to access privacy-sensitive data withou ...
- pat 1062. Talent and Virtue (25)
难得的一次ac 题目意思直接,方法就是对virtue talent得分进行判断其归属类型,用0 1 2 3 4 表示 不合格 sage noblemen foolmen foolmen 再对序列进行排 ...
- 解决XCode 4.x SVN无法连接的问题
XCode升级到4.X版本后,确实好用了不少.但普通都存在SVN无法连接的问题.XCode4.x Source Control功能迁移到了File - Source Control目录下,也出现了一些 ...
- Python之路,Day23-----暂无正在更新中
Python之路,Day23-----暂无正在更新中
- ASP.NET5配置
ASP.NET5支持各种各样的配置,应用程序配置数据可以来自JSON, XML或者INI格式的文件,也能来自环境变量,你也可以自定义你自己的Configuration Provider. 1. 获取和 ...
- 操作iis
以后研究 try { string method = "Recycle"; string AppPoolName = "z.chinabett.com"; Di ...
- (转)dedecms入门
学dedecms一段时间了,把我的入门体会和大家分享一下. 什么是dedecm cms(内容管理系统):现在有各种内容模型,如书评(包括书名,出版社,评论等字段).cms一般有用户后台,网页的用户可以 ...
- [转]最详细的 HTTPS 科普扫盲帖
转载自http://www.codeceo.com/article/https-knowledge.html 为什么需要https HTTP是明文传输的,也就意味着,介于发送端.接收端中间的任意节点都 ...
- tableView创建方法调用的研究
当两个section的cell数量都为5的时候,方法的调用顺序: -[ViewController numberOfSectionsInTableView:] -[ViewController tab ...
- CountDownLatch 和 CyclicBarrier 的运用及实现原理
I.CountDownLatch 和 CyclicBarrier 的运用 CountDownlatch: 定义: 其是一个线程同步的辅助工具,通过它可以做到使一条线程一直阻塞等待,直到其他线程完成其所 ...