Foxtable(狐表)用户栏目专家坐堂 → sql外部数据链接如何动态使用?(已解决)


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

主题:sql外部数据链接如何动态使用?(已解决)

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


加好友 发短信 菜鸟中的老鸟
等级:七尾狐 帖子:1486 积分:10064 威望:0 精华:9 注册:2008/11/14 8:54:00
sql外部数据链接如何动态使用?(已解决)  发帖心情 Post By:2009/3/16 9:34:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:001.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:002.jpg
图片点击可在新窗口打开查看
由于家里的SQL服务器名称与单位电脑的不一样,每次把作业带回家继续开发时,都要进入项目管理里更改一次外部数据源链接参数.....

如何做到能动态更改直接保存?

假如二次开发成功,给客户装机后,每次版本更新都要记得不同客户的不同服务器名称,岂不是很麻烦?

而且万一服务器没开,客户打开客户端软件直接弹出图二窗口,客户直接就看到服务器密码,安全性得不到保障..

能否将这部分功能完善一下?

建议一:当前为开发者则弹出链接更改窗口,否则弹出"服务器未开启!"窗口..

建议二:开发者能自行设计链接更改保存窗口.
[此贴子已经被作者于2009-3-16 11:25:49编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/3/16 9:39:00 [只看该作者]

帮助针对这个问题,有详细的说明,请先看一下。
这是在cpayinyuan的强烈要求下加入的。

提示一下:用扩展用户属性。

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


加好友 发短信 菜鸟中的老鸟
等级:七尾狐 帖子:1486 积分:10064 威望:0 精华:9 注册:2008/11/14 8:54:00
  发帖心情 Post By:2009/3/16 9:48:00 [只看该作者]

扩展用户属性只是针对使用foxtable自身登陆系统情况下才有用吧?并且不可能要求客户使用软件时每次登陆都要选取或者输入吧?

另外我的系统是自定义登陆怎么办?



发一个子系统给您研究研究,采用自定义登陆,这种情况下该怎么做?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:his_yaopin.rar


狐表自带登陆设置如下图:

图片点击可在新窗口打开查看此主题相关图片如下:001.jpg
图片点击可在新窗口打开查看

有一个想法:在项目当前文件夹中存在一个*.TXT文件,内容为链接设置,打开项目时读取该文本文档内容作为链接设置....这样针对不同客户,只要第一次装机时设置好,以后版本更新时就不必担心每个客户不同的服务器名了...因为我的系统是由N个子系统组成...要是每个客户都设置一次那真是太麻烦了.

上述想法如何实现?
[此贴子已经被作者于2009-3-16 10:36:00编辑过]

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


加好友 发短信 一级勋章
等级:六尾狐 帖子:1412 积分:8937 威望:0 精华:0 注册:2008/9/1 8:57:00
  发帖心情 Post By:2009/3/16 10:27:00 [只看该作者]

以下是引用菜鸟foxtable在2009-3-16 9:48:00的发言:
扩展用户属性只是针对使用foxtable自身登陆系统情况下才有用吧?并且不可能要求客户使用软件时每次登陆都要选取或者输入吧?

另外我的系统是自定义登陆怎么办?


有一个想法:在项目当前文件夹中存在一个*.TXT文件,内容为链接设置,打开项目时读取该文本文档内容作为链接设置....这样针对不同客户,只要第一次装机时设置好,以后版本更新时就不必担心每个客户不同的服务器名了...因为我的系统是由N个子系统组成...要是每个客户都设置一次那真是太麻烦了.

上述想法如何实现?
[此贴子已经被作者于2009-3-16 10:22:37编辑过]

如果你服务器名称(IP)经常不变化,可以把它保存在一个TXT文件中,每次登录时自动读取这个TXT文件,论坛上以前贺老师做过一个这样的例子(应该是精华贴),你可以搜索一下.
如果每次登录时服务器名称和IP都可能变化,就应该使用扩展用户属性,即使是自定义登录,也不妨碍,可以在自定义登录窗口出现之前先运行狐表的系统登录窗口,输入一下IP地址,然后再运行自定义的登录窗口即可.
以上两种方式都可以实现,你可以根据需要自行选择.

[此贴子已经被作者于2009-3-16 10:33:30编辑过]

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


加好友 发短信 菜鸟中的老鸟
等级:七尾狐 帖子:1486 积分:10064 威望:0 精华:9 注册:2008/11/14 8:54:00
  发帖心情 Post By:2009/3/16 10:32:00 [只看该作者]

局域网服务器IP当然是固定的.贺老师的精华贴名称关键字是什么?
....第一种方法是最好的. 不如您把第一种方法告诉我吧....图片点击可在新窗口打开查看
[此贴子已经被作者于2009-3-16 10:57:10编辑过]

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


加好友 发短信 一级勋章
等级:六尾狐 帖子:1412 积分:8937 威望:0 精华:0 注册:2008/9/1 8:57:00
  发帖心情 Post By:2009/3/16 10:59:00 [只看该作者]

请参与项目事件---BeforeConnectOuterDataSource事件中有详细说明,下面是其中的一段话:

示例四

假定有一个名为“销售数据”远程数据源,默认的IP地址为119.119.120.120,因为服务器的调整,IP地址可能会发生变化,导致数据源无法连接。
为解决这个问题,可以在用户管理窗口增加一个名为IP的扩展用户属性,让用户在登录的时候,可以输入另一个IP地址,
然后BeforeConnectOuterDataSource事件中加入下面的代码:

If e.Name = "销售数据" Then
    Dim
IP As String = e.User.ExtendedValues("IP") '获得用户输入的IP
   
If IP > "" '如果用户自己输入了IP
        '则用用户输入的IP替换原来的IP

        e.ConnectionString = e.ConnectionString.Replace(
"119.119.120.120", IP)
    End
If
End
If

你也可以用另一种方法解决,在项目文件目录下创建一个ip.txt的文本文件,在该文件中输入最新的IP地址,并在BeforeConnectOuterDataSource事件中设置如下代码:

Dim ipFile As String = e.ProjectPath & "ip.txt"
If
e.Name = "销售数据" Then
    If Filesys.FileExists(ipFile) Then
        Dim ip As String = FileSys.ReadAllText(ipFile)
        e.ConnectionString = e.ConnectionString.Replace("119.119.120.120",ip)
    End
If
End
If


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


加好友 发短信 菜鸟中的老鸟
等级:七尾狐 帖子:1486 积分:10064 威望:0 精华:9 注册:2008/11/14 8:54:00
  发帖心情 Post By:2009/3/16 11:26:00 [只看该作者]

谢谢,已解决..

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/3/16 11:28:00 [只看该作者]

帮助文件中,处处是宝啊。

图片点击可在新窗口打开查看

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


加好友 发短信 菜鸟中的老鸟
等级:七尾狐 帖子:1486 积分:10064 威望:0 精华:9 注册:2008/11/14 8:54:00
  发帖心情 Post By:2009/3/16 11:32:00 [只看该作者]

图片点击可在新窗口打开查看帮助虽好,但只是"简单"的罗列,难免遗漏...

 回到顶部