以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [原创] 建议:关于外部数据源。  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=1298)

--  作者:wcs
--  发布时间:2008/12/1 23:03:00
--  做了一个简单的简历生产器
眼看正式版本的狐表就要发布了,为了使开发者更加灵活地连接各种数据库,特别建议:

1、允许开发者设置是否在启动程序时加载外部查询表,这样,开发者可以在代码中设置(修改)外部数据源和连接字符串,程序可以灵活地连接各种不同应用软件的数据库;BeforeConnectOuterDataSource  事件只是允许按不同的用户设置不同的数据源和字符串,而且是在程序启动过程中的事件,不能适应实际情况。

2、如果数据源由最终用户设置,那么开发者也无从知晓它们的名称,也无从修改连接字符串,也无法从数据库中提取有用的表单。要解决这一系列的问题,只需能够获得数据源的名称。目前狐表没有这样的方法!建议老大考虑一下,这个估计难度不大。

3、如果可以设置启动程序时不加载外部查询表,那么用户可自行修改一下原来的数据源和连接字符串,这样要友好一些,以免程序启动时不断地提示“无法连接”。

4、既然可以在BeforeConnectOuterDataSource  事件中返回或修改某个数据源的连接字符串,那么多加一个方法用于在程序启动完成了以后的代码中设置某个数据源的连接字符串也没有技术难度。眼看正式版本就要发布了,建议老大考虑!

总之,为解决问题2,只有建议1、3、4了,看遍了帮助找不到其他的方法。
老大想想,如果应用强大的OLE DB .NET,狐表能灵活地“消化并加工”绝大多数应用软件数据库,而且最终用户较少参与复杂的设置(由开发者搞定)那有多好!
--  作者:狐狸爸爸
--  发布时间:2008/12/2 10:04:00
--  

我看了一下,好像现在都可以解决啊。


--  作者:wcs
--  发布时间:2008/12/2 13:09:00
--  

老大说的是11.24的版本吗?

目前能选择在启动程序时是否加载外部查询表?

目前只有BeforeConnectOuterDataSource  事件中可以修改连接字符串,可这不是在程序启动完成以后啊?其他地方的代码中也可以修改连接字符串并加载外部查询表吗?这个一般由开发者写入代码,如果数据源经常变化(数据库种类好多,连接字符串又复杂),大部分用户是搞不定的。

我的意思是,审计员在各个被审计单位的财务服务器客户端上启动项目程序时,不加载外部查询表(或者根本就没有外部查询表),启动完成以后由审计员再根据具体的财务软件数据库种类设置数据源,并生成连接字符串。但是生成器生成的字符串有时是不完整的,比如 *.mdb文件的系统数据库、工作组信息文件加载等等(我昨天的帖子已说了这事),这就需要开发者在代码中修改补充他们设置的字符串。然后在用户窗口中启动加载外部查询表。

这些顺序安排,不是BeforeConnectOuterDataSource  事件能解决的。

关键问题是
1、数据源频繁变化;
2、根据不同的数据库有不同的查询方案;
3、启动完成了以后能返回或修改字符串,并重新连接(生成器生成的连接字符串有时不完整非得开发者干预)。

如果现在的版本能解决,那请明示一下怎么搞啊。


--  作者:狐狸爸爸
--  发布时间:2008/12/2 15:02:00
--  

现在没有空逐一回答这个问题,我尽量在帮助中举一些例子吧。


--  作者:wcs
--  发布时间:2008/12/2 15:28:00
--  

老大的意思是可以解决上述问题啰!

现在只是忙于发布正式版本不能详细作答。

看来我还要好好研究一下思路!