Foxtable(狐表)用户栏目专家坐堂 → 求助:导入csv文件到临时表的问题


  共有2791人关注过本帖树形打印复制链接

主题:求助:导入csv文件到临时表的问题

帅哥哟,离线,有人找我吗?
huangxueyao
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:443 积分:3530 威望:0 精华:0 注册:2013/2/9 12:45:00
求助:导入csv文件到临时表的问题  发帖心情 Post By:2017/1/5 20:40:00 [只看该作者]

'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
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:321 积分:2468 威望:0 精华:2 注册:2013/1/16 19:33:00
  发帖心情 Post By:2017/1/5 20:50:00 [只看该作者]

用dtb添加数据后再绑定table试试

 回到顶部
帅哥哟,离线,有人找我吗?
wyz20130512
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1249 积分:9474 威望:0 精华:0 注册:2013/5/12 9:22:00
  发帖心情 Post By:2017/1/5 20:50:00 [只看该作者]

MessageBox.Show("1")
在Tables("导入订单").AddNew代码前后各加一个对话框看执行了没?
MessageBox.Show("2")

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/1/5 21:02:00 [只看该作者]

 做个例子上来测试吧。addnew这行代码不可能出错的。

 回到顶部
帅哥哟,离线,有人找我吗?
huangxueyao
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:443 积分:3530 威望:0 精华:0 注册:2013/2/9 12:45:00
  发帖心情 Post By:2017/1/5 21:10:00 [只看该作者]

窗口-订单-导入订单,谢谢各位老师
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:小鲜易菜.zip


 回到顶部
帅哥哟,离线,有人找我吗?
huangxueyao
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:443 积分:3530 威望:0 精华:0 注册:2013/2/9 12:45:00
  发帖心情 Post By:2017/1/5 21:11:00 [只看该作者]

这个测试过了没问题

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/1/5 21:31:00 [只看该作者]

改成

 

Dim nr As Row = Tables("模式窗-导入订单_Table1").AddNew

 

或者你改成

 

Tables("模式窗-导入订单_Table1").DataSource = DataTables("导入订单")

 


 回到顶部
帅哥哟,离线,有人找我吗?
huangxueyao
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:443 积分:3530 威望:0 精华:0 注册:2013/2/9 12:45:00
  发帖心情 Post By:2017/1/5 21:38:00 [只看该作者]

嗯,DataSource改了就可以了,蛮奇怪的

 回到顶部