以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 求助:导入csv文件到临时表的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=94943) |
||||
-- 作者:huangxueyao -- 发布时间:2017/1/5 20:40:00 -- 求助:导入csv文件到临时表的问题 \'1新建一个临时表 Dim dtb As New DataTableBuilder("导入订单") \'1.1循环生成字符串列 Dim sts1() As String ={"订单ID/采购单ID","物流公司","物流单号","订单状态","买家会员名","买家性别","买家省份","买家城市","是否粉丝","购买方式","SKU","商家编码(sku)","商家编码(商品)","维权信息","收货人姓名","收货人省份","收货人城市","收货人地区","收货地址","运送方式","自提网点","预约人","预约电话","联系手机","订单备注","店铺Id","店铺名称","商品留言","订单留言","备注","门店ID","门店名称","宝贝标题"} For Each st1 As String In sts1 dtb.AddDef(st1, Gettype(String), 100) Next \'1.2循环生成时间列 Dim sts2() As String ={"预约时间","订单创建时间","订单付款时间"} For Each st2 As String In sts2 dtb.AddDef(st2, Gettype(Date)) Next \'1.3循环生成数字列 Dim sts3() As String ={"商品价格","买家实际支付商品金额","宝贝总数量","买家应付订单货款","买家应付邮费","订单总金额","买家实际支付订单金额"} For Each st3 As String In sts3 dtb.AddDef(st3, Gettype(Integer)) Next \'1.4生成临时表 dtb.Build() \'1.5窗口控件引入临时表 Tables("模式窗-导入订单_Table1").DataSource = dtb.BuildDataSource() \'2以txt方法读取外部数据源--有赞订单 Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog dlg.Filter= "CSV文件|*.csv" \'设置筛选器 If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮 Dim str As String = FileSys.ReadAllText(dlg.FileName,Encoding.Default) Dim ary() As String = str.Split(new Char() {chr(10), Chr(13)}) For i As Integer = 9 To ary.Length -1 Dim s() As String = ary(i).Split(",") Dim nr As Row = Tables("导入订单").AddNew nr("订单ID/采购单ID") = s(0).replace("""", "").trim() Next End If 最后s()的值经测试是存在的,但是Tables("导入订单").AddNew这里出错了,实际并不会增加行,也没有报错,查了帮助文档没找出所以然,请教各位老师,谢谢~
|
||||
-- 作者:fjlclxj -- 发布时间:2017/1/5 20:50:00 -- 用dtb添加数据后再绑定table试试 |
||||
-- 作者:wyz20130512 -- 发布时间:2017/1/5 20:50:00 -- MessageBox.Show("1") 在Tables("导入订单").AddNew代码前后各加一个对话框看执行了没?MessageBox.Show("2")
|
||||
-- 作者:有点色 -- 发布时间:2017/1/5 21:02:00 -- 做个例子上来测试吧。addnew这行代码不可能出错的。 |
||||
-- 作者:huangxueyao -- 发布时间:2017/1/5 21:10:00 -- 窗口-订单-导入订单,谢谢各位老师
|
||||
-- 作者:huangxueyao -- 发布时间:2017/1/5 21:11:00 -- 这个测试过了没问题 |
||||
-- 作者:有点色 -- 发布时间:2017/1/5 21:31:00 -- 改成
Dim nr As Row = Tables("模式窗-导入订单_Table1").AddNew
或者你改成
Tables("模式窗-导入订单_Table1").DataSource = DataTables("导入订单")
|
||||
-- 作者:huangxueyao -- 发布时间:2017/1/5 21:38:00 -- 嗯,DataSource改了就可以了,蛮奇怪的 |