問題現(xiàn)象:用友暢捷通T+財務(wù)軟件升級報錯,具體提示如下:升級出錯,錯誤信息:升級腳本出錯,錯誤信息:SQL 腳本: 11.600.000.0000 DATA_DPRD_FI_Search_CN.sql 出錯:子查詢返回的值不止一個。當(dāng)子查詢跟隨在 =、!=、<、<=、>、>= 之后,或子查詢用作表達(dá)式時,這種情況是不允許的。

語句已終止。 在 Ufida.T.SM.Upgrade.Service.UpgradeHelper.ExecuteScript(TongVersion version, Queue`1 upgardeItems, VersionTypeEnum product)

在 Ufida.T.SM.Upgrade.Service.UpgradeService.VersionsUpgrade(UpgradeContext context)

在 Ufida.T.SM.Upgrade.Service.UpgradeService.UpgradeSystem(UpgradeContext context)

在 Ufida.T.SM.Upgrade.Service.UpgradeService.Upgrade(UpgradeContext context)![具體出錯信息請參見:C:\Program Files (x86)\Chanjet\TPlusPro12000\Appserver\server\..\logs\UFTData403189_000002_Upgrade.log![具體出錯信息請參見:C:\Program Files (x86)\Chanjet\TPlusPro12000\Appserver\server\..\logs\UFTData403189_000002_Upgrade.log

2015-09-25 14:27:07 在 Ufida.T.EAP.Aop.Dynamic.LocalCallDynamicProxyImpl.NormalInvoke(MethodBase method, Object[] args, Boolean needFreeCuid)

在 Ufida.T.EAP.Aop.Dynamic.LocalCallDynamicProxyImpl.Invoke(IMessage message)

在 System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)

在 Ufida.T.SM.Upgrade.Interface.IUpgrade.Upgrade(UpgradeContext context)

在 Ufida.T.SM.Tool.LargeAccount.FrmMain.UpgradeSelectedAccount(Object obj)

解決方案:(操作前請備份好您用友T+財務(wù)軟件中的數(shù)據(jù),可參考教程:http://bainianle.cn/jcufida/1389.html),示例語句如下:

select count(*),SearchName,FieldName from [Eap_ReportFilterItem] group by SearchName,FieldName having count(*)>1

有重復(fù)數(shù)據(jù),可執(zhí)行下屬語句刪除后再升級

delete from [Eap_ReportFilterItem] where [SearchName]='GL_AuxBalanceSumRpt' and itemid='8718A77F-3864-4E52-A42B-C47CCAA3BC18'

delete from [Eap_ReportFilterItem] where [SearchName]='GL_AuxGLDetailRpt' and itemid='FCBE571F-E92B-4703-89F6-D0DA5C1620E7'

注:同一個SearchName不能有相同的FieldName。