Foxtable(狐表)用户栏目专家坐堂 → 外部表情况下启动时让用户选择数据源之再思考!--已成型


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

主题:外部表情况下启动时让用户选择数据源之再思考!--已成型

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


加好友 发短信
等级:四尾狐 帖子:936 积分:7719 威望:0 精华:0 注册:2013/7/7 13:37:00
外部表情况下启动时让用户选择数据源之再思考!--已成型  发帖心情 Post By:2013/12/27 12:24:00 [只看该作者]

经测试 CreateObject("ADOX.Catalog") 语法在BeforeOpenProject里可用,具体MSSQL方式未测

思路,
1,在服务器端单独建立一个数据源 如:ErpConfig,建表config
此表用于存放客户端 启动时所用资料 如 可选数据库(测试,正式)
2,在BeforeOpenProject里结合全局代码生成的窗体的 采用CreateObject("ADOX.Catalog") 语法 调取数据,让用户选择,
选择后 在本地生成文本文件 如(dataconfig.txt) .
3,在 BeforeConnectOuterDataSource事件里 调用dataconfig.txt 链接不同数据源

此方法 最好 单做一个服务端 管理程序,用于管理ErpConfig数据,便于用户访问。

以上是思路,正在尝试制作中,诸位如觉得可行,可给个范例给小弟参考下,小弟语法不熟,制作很慢。
[此贴子已经被作者于2013-12-28 9:10:42编辑过]

 回到顶部
帅哥,在线噢!
程兴刚
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40574 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/12/27 12:36:00 [只看该作者]

看看我曾经的预言!

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


加好友 发短信
等级:四尾狐 帖子:936 积分:7719 威望:0 精华:0 注册:2013/7/7 13:37:00
  发帖心情 Post By:2013/12/27 12:38:00 [只看该作者]

二合一?  切换数据源后  用户权限可能就不同步了

 回到顶部
帅哥,在线噢!
程兴刚
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40574 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/12/27 12:42:00 [只看该作者]

您说对了,我一直在等您去反思这个问题,用户管理必须随数据库走,否则,授权功能将变得苍白无力,系统的授权管理将很麻烦!

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


加好友 发短信
等级:四尾狐 帖子:936 积分:7719 威望:0 精华:0 注册:2013/7/7 13:37:00
  发帖心情 Post By:2013/12/27 17:26:00 [只看该作者]

完工80%
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:启动时切换数据源2.foxdb



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


加好友 发短信
等级:四尾狐 帖子:936 积分:7719 威望:0 精华:0 注册:2013/7/7 13:37:00
  发帖心情 Post By:2013/12/28 9:10:00 [只看该作者]

我的设计思路大体没变,语法做了调整
BeforeOpenProject
'先读取外部数据库配置文件,数据库可切换的 前提是这个配置文件DBconfig.mdb的位置名称不能变
'Dim con As New System.Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\启动项目之数据源切换\DBconfig.mdb;Persist Security Info=False")
'Dim cmd As New System.Data.OleDb.OleDbCommand("Select * FROM 设置", con)
'Dim DataReader As System.Data.OleDb.OleDbDataReader '定义DataReader对象
'Dim FieldCount As Integer
'con.Open()
'DataReader = cmd.ExecuteReader '执行SQL语句,返回给DataReader对象
'FieldCount = DataReader.FieldCount
'While DataReader.Read
'MessageBox.Show(DataReader("用户可选数据库"))
'End While
'con.Close()

1,采用.net语法在BeforeOpenProject里先连接数据库
2,把用户选择的 数据源 放入 全局变量,以供调用
3,在全局代码里定义选择窗体(感谢逛逛老师提供学习案例)

有需求的朋友的可看5楼示例。重点代码都在里面。成品就不再传了。
[此贴子已经被作者于2013-12-28 9:19:41编辑过]

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


加好友 发短信 一级勋章
等级:狐仙 帖子:9875 积分:57590 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2013/12/28 9:18:00 [只看该作者]

这个也是我当时想搞的.

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/12/28 9:22:00 [只看该作者]

谢谢分享

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


加好友 发短信
等级:一尾狐 帖子:419 积分:4442 威望:0 精华:0 注册:2012/3/7 23:19:00
  发帖心情 Post By:2014/2/14 22:24:00 [只看该作者]

占位,备查

 回到顶部
帅哥哟,离线,有人找我吗?
原来那颗白菜
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:53 积分:528 威望:0 精华:0 注册:2013/4/27 17:44:00
  发帖心情 Post By:2016/2/20 22:57:00 [只看该作者]

感觉有同样需求,不知解决办法

 回到顶部
总数 11 1 2 下一页