Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共19 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

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

1楼
cpayinyuan 发表于: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编辑过]
2楼
贺老六 发表于:2008/9/17 11:35:00
呵呵,用配置文件,一点没有不专业的感觉呢,相反很多专业的软件都是这么做的。
至于后半部分的多窗口查询,建议将你邮件的内容单独发帖,我帮你做一个例子,其实实现起来很简单,而且foxtable从公测的第一天开始,就能实现的。
3楼
cpayinyuan 发表于:2008/9/17 11:44:00
以下是引用贺老六在2008-9-17 11:35:00的发言:
呵呵,用配置文件,一点没有不专业的感觉呢,相反很多专业的软件都是这么做的。
至于后半部分的多窗口查询,建议将你邮件的内容单独发帖,我帮你做一个例子,其实实现起来很简单,而且foxtable从公测的第一天开始,就能实现的。

    是的,当然用修改配置文件方式的软件也有很多,但是,直接用登录窗口的专业软件同样也非常多(我可以随便举出10几个在国内很有知名度的软件),我希望狐表能够给用户多一种选择,多一种实现方案。萝卜白菜各有所爱,我们不想让狐表因为某项功能先放弃一部分用户,不能因为有一种解决方案了,就不再增加其它的实现方案了!我的建议实现起来应该不算太复杂,还是建议您认真考虑,让用户多一种方式供选择吧!
    多窗口录入的事例昨晚我已经发到您邮箱里了,不知您看明白了没有?什么时间能做好?等做好了,我再发到论坛上让更多的人学习!
    关于多窗口查询的功能,上次的邮件中我已经给您发过了一个说明,我觉得应该等您把事例做好了,让我看一下是否是我想要的功能,然后再放到论坛上,这样才便于大家学习啊!(如果我只发要求没有事例,大家是学习不到的)

[此贴子已经被作者于2008-9-17 11:45:20编辑过]
4楼
贺老六 发表于:2008/9/17 11:52:00
1、不同软件有不同的风格,不可能照顾每一个方面的。你说的道理我懂,但是不管是公司还是个人,精力和时间都有限,都会集中大部分精力,解决最主要的问题
2、你先发贴,同时将你的文件发上去,我应该很快可以做好。
[此贴子已经被作者于2008-9-17 11:55:27编辑过]
5楼
唐尸三摆手 发表于:2008/9/17 12:12:00
参考国内众多ERP厂商都在设计系统时考虑到了这一点,比如启动界面打开(SPLASH)后加载数据源,同时提示加载进度,随后弹出系统登陆界面,包括工作站,用户名,密码,通过不同的工作站权限设置达到用户使用不同的工作菜单,希望这种说法能够得到更多狐朋的认可!
[此贴子已经被作者于2008-9-17 12:13:34编辑过]
6楼
唐尸三摆手 发表于:2008/9/17 12:13:00
图片点击可在新窗口打开查看
7楼
唐尸三摆手 发表于:2008/9/17 12:14:00

我个人还是很欣赏这种登陆方式的

[此贴子已经被作者于2008-9-17 12:15:32编辑过]
8楼
eric803 发表于:2008/9/17 12:14:00

我试了一下直接在BeforeConnectOuterDataSource事件中加入以下代码:
 e.name = "test"
 [e.C]
但目前系统提示e.name为只读.

如果能够按上述方式在BeforeConnectOuterDataSource事件中直接创建远程数据源连接就可以解决1楼的问题了.

[此贴子已经被作者于2008-9-17 12:16:20编辑过]
9楼
贺老六 发表于:2008/9/17 12:16:00
e.name表示正在连接的数据源,当然应该只读的。
每链接一个数据源,都会触发这个事件,e.name也不同。
10楼
贺老六 发表于:2008/9/17 12:19:00
以下是引用唐尸三摆手在2008-9-17 12:12:00的发言:
参考国内众多ERP厂商都在设计系统时考虑到了这一点,比如启动界面打开(SPLASH)后加载数据源,同时提示加载进度,随后弹出系统登陆界面,包括工作站,用户名,密码,通过不同的工作站权限设置达到用户使用不同的工作菜单,希望这种说法能够得到更多狐朋的认可!
[此贴子已经被作者于2008-9-17 12:13:34编辑过]


foxtable的菜单是可以动态的,根据不同用户,你可以禁用或隐藏多余的命令。
其实foxtable权限管理,别说一个命令,还可以已经可以细到一个单元格的程度,甚至还可以比这细很多,灵活性远非其他软件可比。

共19 条记录, 每页显示 10 条, 页签: [1] [2]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03125 s, 2 queries.