Foxtable(狐表)用户栏目专家坐堂 → [求助]外部数据的保存


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

主题:[求助]外部数据的保存

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


加好友 发短信
等级:幼狐 帖子:148 积分:1665 威望:0 精华:0 注册:2008/9/1 19:40:00
[求助]外部数据的保存  发帖心情 Post By:2009/11/11 11:27:00 [显示全部帖子]

项目主要数据表采用了外部数据表,加载后进行输入修改等,当直接用菜单中的“保存”按钮保存时,有时会出现刚增加的行消失,甚至原来的输入顺序全乱了,用菜单中的“同步表”刚增加的行又出来了,不知是哪里的问题。

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


加好友 发短信
等级:幼狐 帖子:148 积分:1665 威望:0 精华:0 注册:2008/9/1 19:40:00
  发帖心情 Post By:2009/11/11 11:38:00 [显示全部帖子]

有一列为‘ID’列为排序,没有筛选,但保存时并没有触发排序,难道要禁止排序


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


加好友 发短信
等级:幼狐 帖子:148 积分:1665 威望:0 精华:0 注册:2008/9/1 19:40:00
  发帖心情 Post By:2009/11/11 12:38:00 [显示全部帖子]

开始打开时一切正常,估计问题是自己设计的“打开”菜单,当打开1.mb文件后保存就会出问题,有时正常有时不正常,主要是重新设置了数据源,重新加载数据,就有问题,不知错在哪?(帮忙看一下菜单中“打开”代码有什么问题,该如何修改)

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3.rar


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


加好友 发短信
等级:幼狐 帖子:148 积分:1665 威望:0 精华:0 注册:2008/9/1 19:40:00
  发帖心情 Post By:2009/11/11 15:18:00 [显示全部帖子]

看了几遍帮助,说是可以动态设置外部数据源,可前提是必须预先设置好外部数据源,才可以在外部数据元源间切换,如果预先设置“test”数据源为“D:\1.mdb”,想变为“D:\2.mdb”或“D:\3.mdb”,怎么办?最终目的是对“D:\2.mdb”或“D:\3.mdb”进行编辑,当然所有文件格式都是相同的


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


加好友 发短信
等级:幼狐 帖子:148 积分:1665 威望:0 精华:0 注册:2008/9/1 19:40:00
  发帖心情 Post By:2009/11/11 15:34:00 [显示全部帖子]

以下是引用狐狸爸爸在2009-11-11 15:23:00的发言:
建立多个不同名称的数据源,就用文件名作为数据源的名称

这样就会出现例子中的错误,先增加行或输入数据后保存,再打开“1.mb”,增加行——输入——保存——增加行——输入——保存反复几次就会错


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


加好友 发短信
等级:幼狐 帖子:148 积分:1665 威望:0 精华:0 注册:2008/9/1 19:40:00
  发帖心情 Post By:2009/11/11 15:46:00 [显示全部帖子]

   Dim dlk As New OpenFileDialog
   dlk.InitialDirectory = ApplicationPath '打开对话框时,最初显示的目录.
   dlk.Filter= "工程量计算|*.mb"
   If dlk.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
      Dim t As Date = Date.Now
      AddConnection(t,"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dlk.filename & ";Persist Security Info=False")
      DataTables("钢筋计算").ChangeConnection(t)
   End If
以上就是打开代码,Dim t As Date = Date.Now这样是为了使文件可以反复打开。

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


加好友 发短信
等级:幼狐 帖子:148 积分:1665 威望:0 精华:0 注册:2008/9/1 19:40:00
  发帖心情 Post By:2009/11/11 16:06:00 [显示全部帖子]

也试过用文件名做数据源名称,结果还是一样出错
Dim dlk As New OpenFileDialog
   dlk.InitialDirectory = ApplicationPath '打开对话框时,最初显示的目录.
   dlk.Filter= "工程量计算|*.mb"
   If dlk.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮 
    
      AddConnection(FileSys.GetName(dlk.filename),"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dlk.filename & ";Persist Security Info=False")
      DataTables("钢筋计算").ChangeConnection(FileSys.GetName(dlk.filename) )
   End If

[此贴子已经被作者于2009-11-11 16:08:36编辑过]

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


加好友 发短信
等级:幼狐 帖子:148 积分:1665 威望:0 精华:0 注册:2008/9/1 19:40:00
  发帖心情 Post By:2009/11/11 16:18:00 [显示全部帖子]

以下是引用狐狸爸爸在2009-11-11 16:10:00的发言:
这样当然是出错的。

这是第一次创建时可以用,我知道第二次创建时如果已经存在就直接载入数据而不需创建数据源,但第一次创建也后保存也出错,并不是不能创建数据源而出错。
整整三天了都没解决,我的要求其实并不高,只想保存弧表的数据,而且不需要格式,就像Excel可以生成无数个.xls文件一样


 回到顶部