Foxtable(狐表)用户栏目专家坐堂 → 我想在连接外部数据源的时候动态输入IP地址和用户名!(已有进一步建议,参见贴子:应该增加管理“外部数据源”的功能!)


  共有23474人关注过本帖平板打印复制链接

主题:我想在连接外部数据源的时候动态输入IP地址和用户名!(已有进一步建议,参见贴子:应该增加管理“外部数据源”的功能!)

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


加好友 发短信 一级勋章
等级:六尾狐 帖子:1412 积分:8937 威望:0 精华:0 注册:2008/9/1 8:57:00
我想在连接外部数据源的时候动态输入IP地址和用户名!(已有进一步建议,参见贴子:应该增加管理“外部数据源”的功能!)  发帖心情 Post By:2008/9/17 11:30:00 [只看该作者]

     帮助中和论坛上举了一个事例,可以连接外部数据源的时候,通过修改一个文本文件,并在BeforeConnectOuterDataSource事件中修改e参数ConnectionString来动态修改连接字符串,以实现连接动态IP地址的外部数据源,用这种办法,可以实现动态IP地址的外部数据源问题,但这个办法显得不够专业,不正规,有点傻,(有哪个正规的软件在每次登录时都要先修改一个文本文件呢,现在用ADSL作服务器的很多,这可都是动态IP啊)。其他软件的通用做法是,系统开始运行时,首先出现一个登录窗口,登录窗口中有若干个文本框,在登录窗口输入要连接的服务器的IP地址(可能还有用户名、密码等),然后,系统根据输入的文本框的内容(IP地址等),来连接相应的服务器上的外部数据源。但在狐表中,我在BeforeConnectOuterDataSource事件中进行类似设置,不能成功,提示“XX窗口不存在”!经过我的分析,估计是系统在打开项目的时候,先连接外部数据源,然后才打开数据表(包括内部数据表),最后在打开数据表之后才加载窗口(因为目前的软件中子窗口也属于某个表)。在这样的设计下,在连接外部数据源的时候,是不存在窗口的,所以会出错。为了实现这个功能,我有两个建议方案:
(1)在系统中提供一种独立于表的窗口(我们可以叫它“完全独立窗口”),这种窗口不从属于任何一个表,在打开项目的时候,能够在连接外部数据源、打开数据表之前先加载!(这种窗口可以不插入表格亦可,仅加入操作性的控件),这样,即可实现上述功能!
(2)如果第1个方案比较麻烦,不好实现,可以把打开项目时的加载顺序改一下,改为:先加载内部表(包括内部表的窗口),然后再连接外部数据源,如果这样改一下顺序,应该也能实现上述功能。
   另外还有一个问题,因为我没有测试成功,我不太清楚在运行BeforeConnectOuterDataSource事件时,系统变量是否已经生效,如果生效的话就没有其他问题了。
    前几天我提了关于多窗口的问题,主要是为了实现两项功能,一是多窗口录入;二是多窗口查询。昨天我给你发的关于列表框的事例如果设置得比较成功,多窗口录入的问题基本可以解决;多窗口查询的问题我准备用关联表的方法进行解决(虽然可以实现,但为了实现多窗口同时查询需要额外设置很多关联,估计会降低系统运行的效率)。这几天我又一直在认真测试外部数据源(主要是SQL server)的相关功能。我关注的这些功能虽然对于很多用户来说并不常用,但如果要设计一个规范、正式的系统,这些功能是很关键、必不可少的。或者说,有了这些功能,用狐表设计的系统才真正像一个系统!我们不想在实际设计系统时,用户要求一种功能(或操作方式),我们告诉他说这种方式狐表不支持,需要变通;用户再提要求,我们再说不支持,这样给人的印像很不好,我们希望在别的软件中有的功能,狐表中尽量都能支持!真正满足各种用户的需要!
[此贴子已经被作者于2008-9-18 13:13:04编辑过]

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