//T_46_004 public static void GetAllKPIFormulaColumn(DataBaseConfig ADataBaseConfig, GlobalSetting AGolbalSetting, ref List <KPIFormulaColumn> AListKPIFormulaColumn) { AListKPIFormulaColumn.Clear(); DataTable LDataTableReturn = new DataTable(); string LStrDynamicSQL = string.Empty; string LStrRentToken = string.Empty; string LStrSingleObject = string.Empty; try { DatabaseOperation01Return LDatabaseOperationReturn = new DatabaseOperation01Return(); DataOperations01 LDataOperations = new DataOperations01(); LStrDynamicSQL = string.Format("SELECT * FROM T_46_004_{0} " , AGolbalSetting.StrRent); LDatabaseOperationReturn = LDataOperations.SelectDataByDynamicSQL(ADataBaseConfig.IntDatabaseType, ADataBaseConfig.StrDatabaseProfile, LStrDynamicSQL); if (!LDatabaseOperationReturn.BoolReturn) { LDataTableReturn = null; } else { LDataTableReturn = LDatabaseOperationReturn.DataSetReturn.Tables[0]; foreach (DataRow dr in LDataTableReturn.Rows) { KPIFormulaColumn kpiformulatemp = new KPIFormulaColumn(); kpiformulatemp.FormulaCharID = LongParse(dr["C001"].ToString(), 0); kpiformulatemp.ColumnName = dr["C002"].ToString(); kpiformulatemp.ColumnSource = IntParse(dr["C004"].ToString(), 0); kpiformulatemp.ApplayName = dr["C005"].ToString(); kpiformulatemp.DataType = IntParse(dr["C006"].ToString(), 0); kpiformulatemp.ApplyCycle = dr["C007"].ToString(); kpiformulatemp.SpecialObjectTypeNumber = IntParse(dr["C008"].ToString(), 0); AListKPIFormulaColumn.Add(kpiformulatemp); } } } catch (Exception ex) { LDataTableReturn = null; FileLog.WriteInfo("GetAllKPIFormulaColumn()", ex.Message); } }
/// <summary> /// 得到录音表初统计分钟切片表或CTI统计表 /// </summary> /// <param name="ADataBaseConfig"></param> /// <param name="AGlobalSetting"></param> /// <param name="ATableName"></param> /// <param name="ColumnName"></param> /// <param name="AObjectType">// 1座席 2分机 3用户 4真实分机 5机构 6 技能组</param> /// <param name="AStartTimeLocal"></param> /// <param name="AStopTimeLocal"></param> /// <param name="AObjectSerialID"></param> /// <param name="AStrSum">调用存储过程时的Sum内的列拼的字符串</param> /// <returns></returns> public static double GetStatisticsValueDayDown(DataBaseConfig ADataBaseConfig, GlobalSetting AGlobalSetting, string ATableName, string AColumnName, int AObjectType, string AStartTimeLocal, string AStopTimeLocal, string AObjectSerialID, KPIFormulaColumn AKpiFormulaColumn) { double Value01 = 0; string ProduceName = string.Empty; if (ATableName.Substring(6, 1) == "4") { ProduceName = "P_46_002"; } else if (ATableName.Substring(6, 1) == "3") { ProduceName = "P_46_001"; } if (AKpiFormulaColumn.SpecialObjectTypeNumber <= 0) { return(0); } OperationReturn optReturn = new OperationReturn(); optReturn.Result = true; optReturn.Code = 0; int errNum = 0; string errMsg = string.Empty; string AOutParam01 = string.Empty; try { switch (ADataBaseConfig.IntDatabaseType) { //MSSQL case 2: { DbParameter[] mssqlParameters = { MssqlOperation.GetDbParameter("@ainparam01", MssqlDataType.Varchar, 5), MssqlOperation.GetDbParameter("@ainparam02", MssqlDataType.Varchar, 5), MssqlOperation.GetDbParameter("@ainparam03", MssqlDataType.Varchar, 20), MssqlOperation.GetDbParameter("@ainparam04", MssqlDataType.Varchar, 5), MssqlOperation.GetDbParameter("@ainparam05", MssqlDataType.Varchar, 20), MssqlOperation.GetDbParameter("@ainparam06", MssqlDataType.Varchar, 20), MssqlOperation.GetDbParameter("@ainparam07", MssqlDataType.Varchar, 5000), MssqlOperation.GetDbParameter("@AOutParam01", MssqlDataType.Varchar, 100), MssqlOperation.GetDbParameter("@aouterrornumber", MssqlDataType.Bigint, 0), MssqlOperation.GetDbParameter("@aouterrorstring", MssqlDataType.Varchar, 200) }; mssqlParameters[0].Value = AGlobalSetting.StrRent; mssqlParameters[1].Value = AObjectType; mssqlParameters[2].Value = AObjectSerialID; mssqlParameters[3].Value = AKpiFormulaColumn.SpecialObjectTypeNumber.ToString(); mssqlParameters[4].Value = AStartTimeLocal; mssqlParameters[5].Value = AStopTimeLocal; mssqlParameters[6].Value = AColumnName; mssqlParameters[7].Value = AOutParam01; mssqlParameters[8].Value = errNum; mssqlParameters[9].Value = errMsg; mssqlParameters[7].Direction = ParameterDirection.Output; mssqlParameters[8].Direction = ParameterDirection.Output; mssqlParameters[9].Direction = ParameterDirection.Output; optReturn = MssqlOperation.ExecuteStoredProcedure(ADataBaseConfig.StrDatabaseProfile, ProduceName, mssqlParameters); if (mssqlParameters[8].Value.ToString() != "0") { optReturn.Result = false; optReturn.Code = Defines.RET_DBACCESS_FAIL; optReturn.Message = mssqlParameters[9].Value.ToString(); } else { Value01 = DoubleParse(mssqlParameters[7].Value.ToString(), 0); } } break; //ORCL case 3: { DbParameter[] orclParameters = { OracleOperation.GetDbParameter("ainparam01", OracleDataType.Varchar2, 5), OracleOperation.GetDbParameter("ainparam02", OracleDataType.Varchar2, 5), OracleOperation.GetDbParameter("ainparam03", OracleDataType.Varchar2, 20), OracleOperation.GetDbParameter("ainparam04", OracleDataType.Varchar2, 5), OracleOperation.GetDbParameter("ainparam05", OracleDataType.Varchar2, 20), OracleOperation.GetDbParameter("ainparam06", OracleDataType.Varchar2, 20), OracleOperation.GetDbParameter("ainparam07", OracleDataType.Varchar2, 5000), OracleOperation.GetDbParameter("AOutParam01", OracleDataType.Varchar2, 100), OracleOperation.GetDbParameter("aouterrornumber", OracleDataType.Int32, 0), OracleOperation.GetDbParameter("aouterrorstring", OracleDataType.Varchar2, 200) }; orclParameters[0].Value = AGlobalSetting.StrRent; orclParameters[1].Value = AObjectType; orclParameters[2].Value = AObjectSerialID; orclParameters[3].Value = AKpiFormulaColumn.SpecialObjectTypeNumber.ToString(); orclParameters[4].Value = AStartTimeLocal; orclParameters[5].Value = AStopTimeLocal; orclParameters[6].Value = AColumnName; orclParameters[7].Value = AOutParam01; orclParameters[8].Value = errNum; orclParameters[9].Value = errMsg; orclParameters[7].Direction = ParameterDirection.Output; orclParameters[8].Direction = ParameterDirection.Output; orclParameters[9].Direction = ParameterDirection.Output; optReturn = OracleOperation.ExecuteStoredProcedure(ADataBaseConfig.StrDatabaseProfile, ProduceName, orclParameters); if (orclParameters[8].Value.ToString() != "0") { optReturn.Result = false; optReturn.Code = Defines.RET_DBACCESS_FAIL; optReturn.Message = orclParameters[9].Value.ToString(); } else { Value01 = DoubleParse(orclParameters[7].Value.ToString(), 0); } } break; } } catch (Exception ex) { FileLog.WriteInfo("GetCallPeakValue()", "Error:" + ex.Message.ToString()); } return(Value01); }