訊光科技EEP , 當流程EEP 為MS SQL . 資料為 ORACLE 時送出流程時會出錯原因為他把TABLE 加上 [TAB_FILE] 然後去 Oracle 資料庫查.
BUG 是因為
FLRuntime\\HostTable.cs 中
object[] myRet = remoteModule.CallMethod(clientInfo, "GLModule", "GetDataBaseType", new object[] { DBAlias }); //進這後他會發現流程資料庫為SQL SERVER ,
if (myRet != null && myRet[0].ToString() == "0")
{
if (myRet != null && myRet[0].ToString() == "0")
{
/*GW Hanks 修改
switch (myRet[1].ToString())
{
case "1": table_or_column = _quotePrefix + table_or_column + _quoteSuffix; break;
switch (myRet[1].ToString())
{
case "1": table_or_column = _quotePrefix + table_or_column + _quoteSuffix; break;
// 所他就把 以下的欄位加上 [ ] 了. 問題是 table_or_column 指的是 Oracle 資料庫
}*/
}*/
//請改成以下的
switch (Srvtools.DbConnectionSet.GetDbConn(DBAlias).DbType)
{
case ClientType.ctMsSql:
table_or_column = _quotePrefix + table_or_column + _quoteSuffix;
break;
}
{
case ClientType.ctMsSql:
table_or_column = _quotePrefix + table_or_column + _quoteSuffix;
break;
}
注: [ ] 為SQL 的保留字 select [欄位1], [欄位99] from [資料庫A].DBO.[我的表格]
"" 為 oracle 的select "欄位1", "欄位99" from "我的表格"
沒有留言:
張貼留言