在EAS5.4中,打了扩展报表从EAS6.0回迁到EAS5.4的补丁及期相关补丁后,再通过管理控制台注册数据中心,引后再从BIM中更新数据中心后,选择测试账套后,发现不能连接到数据中心,提示“socket is not connected”,如下图:
但是在管理控制台中测试连接,是可以连接成功的。
经检查发现,管理控制台的问题,可能是在打补丁之后引起的,打完补丁后再注册数据中心,发现在文件kingdee/eas/server/properties/datacenters.xml 中的datasource中多了“冒号+数据库实例名”。
<?xml version="1.0" encoding="UTF-8"?>
<datacenters>
<datacenter id="hrcs" version="5.4.0.0" disable="false" bindebgateway="false" bindoa="false" ksql="true" tracetype="" encodeurl="true" dbtype="oracle" dbversion="" dbname="hr" dbuser="hr" dbpassword="ksqle:yjnVqu5S4zF9iEzWzO6aUZi7ZKb0Itkt" datasource="172.16.5.1:1521:hr">
<name locale="zh_TW">hrcs</name>
<name locale="zh_CN">hrcs</name>
<name locale="en" />
</datacenter>
<datacenter id="hrnew" version="5.4.0.0" disable="false" bindebgateway="false" bindoa="false" ksql="true" tracetype="" encodeurl="true" dbtype="oracle" dbversion="" dbname="hr" dbuser="hrnew" dbpassword="ksqle:XSqvKYq5MI3/+uZh/qFI6iMtlxCXcoNZ" datasource="172.16.5.1:1521:hr">
<name locale="zh_TW">hrnew</name>
<name locale="zh_CN">hrnew</name>
<name locale="en" />
</datacenter>
</datacenters>
这样会导致BIM在更新数据中心后,会导致文件“BIM工作空间/runtime/datacenters.xml ”中也出现同样的错误,所以就连不上数据库,提示“socket is not connected”的错误。
具体的描述请参考:http://blog.csdn.net/wiser/archive/2009/09/10/4539979.aspx
把上面的文件中多余的“冒号+数据库实例名”删除,再重新从BIM中更新后,就正常了。
而且删除多余内容后,再打开管理控制吧,选择数据中心测试连接,还是连接成功,管理控制台太强了。
估计是管理控制台升级,BIM中还没有做相应的调整,导致生成的文件出错。