/// <summary>
        /// IIC文件更新
        /// </summary>
        /// <param name="intImpID">导入ID</param>
        /// <returns></returns>
        public bool IICDataUpdate(long intImpID, int intFlag)
        {
            OracleConnection  cn             = new OracleConnection(System.Configuration.ConfigurationManager.ConnectionStrings["OraConnStringDJ"].ConnectionString);
            DataTable         dtSystemConfig = new DataTable();
            string            strOra         = "select * from tbl00_system_config";
            OracleDataAdapter dap            = new OracleDataAdapter();
            OracleCommand     cmd            = new OracleCommand();

            cmd.CommandType   = CommandType.Text;
            cmd.CommandText   = strOra;
            cmd.Connection    = cn;
            dap.SelectCommand = cmd;
            dap.Fill(dtSystemConfig);

            UtilityDBDJ utility = new UtilityDBDJ();

            try
            {
                if (cn.State != ConnectionState.Open)
                {
                    cn.Open();
                }
                UtilityDBDJ.CreateErrorLog("开始执行存储过程!");
                utility.OperatorStore(cmd, intImpID, intImpID, dtSystemConfig, intFlag);
                UtilityDBDJ.CreateErrorLog("完成执行存储过程!");
            }
            catch
            {
                return(false);
            }
            finally
            {
                cmd.Dispose();
                if (cn.State != ConnectionState.Closed)
                {
                    cn.Close();
                }
                if (cn != null)
                {
                    cn.Dispose();
                }
            }
            return(true);
        }
        private void ReadIIC(IDictionary <string, Model.DecisionProjectObjDJ> ts, Model.DetectRecordObjDJ detectRecordObj, DataTable dtUnitAreaConfig, DataTable dtSystemConfig, int intDataID, int intRecordID, int intTaskID, int intPlanID, string strIICPath, string strFileName, string strImpDes)
        {
            string strIICFullPath = GetIICDirection(dtSystemConfig) + strIICPath + "\\" + strFileName;

            using (OleDbConnection oleCn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + strIICFullPath + ";Persist Security Info=True"))
            {
                oleCn.Open();
                OleDbCommand    cmd = new OleDbCommand("select * from fix_defects", oleCn);
                OleDbDataReader myRed;
                bool            bFxIsExists = true;
                try
                {
                    myRed = cmd.ExecuteReader();
                }
                catch
                {
                    bFxIsExists = false;
                }
                string strSQLForDefects = string.Empty;
                string strSQLForTQI     = string.Empty;
                if (!bFxIsExists)
                {
                    strSQLForDefects = "select * from defects where valid <> 'N' and severity is not null";
                    strSQLForTQI     = "TRANSFORM max([tqivalue]) SELECT [FROMPOST],round((round([basepost],3)-[FROMPOST])*1000,0) as [FROMMINOR] FROM tqi GROUP BY [FROMPOST],round((round([basepost],3)-[FROMPOST])*1000,0) PIVOT [tqimetricname]";
                }
                else
                {
                    //new表存在的情况
                    strSQLForDefects = "select * from fix_defects where  valid <> 'N' and severity is not null and maxval2=-200";
                    //strSQLForTQI = "TRANSFORM max([tqivalue]) SELECT [FROMPOST],[FROMMINOR] FROM fix_tqi GROUP BY [FROMPOST],[FROMMINOR] PIVOT [tqimetricname]";
                    strSQLForTQI = "select * FROM fix_tqi";
                }

                DataTable        dtDefectsData = new DataTable("defects");
                OleDbDataAdapter dapt          = new OleDbDataAdapter();
                dapt.SelectCommand             = new OleDbCommand();
                dapt.SelectCommand.Connection  = oleCn;
                dapt.SelectCommand.CommandText = strSQLForDefects;
                dapt.Fill(dtDefectsData);

                DataTable dtTQIData = new DataTable("tqi");
                dapt.SelectCommand.CommandText = strSQLForTQI;
                dapt.Fill(dtTQIData);

                UtilityDBDJ utility = new UtilityDBDJ();
                //if (!bFxIsExists)
                //{ strImpDes="TQI无效,-1009";}
                int intImpID = utility.OperatorImpLog(intDataID, intRecordID, strFileName, strIICPath, strImpDes);

                OracleConnection cn = new OracleConnection(System.Configuration.ConfigurationManager.ConnectionStrings["OraConnStringDJ"].ConnectionString);
                cn.Open();
                //OracleTransaction transaction = cn.BeginTransaction();
                OracleCommand cmdInner = new OracleCommand();
                cmdInner.CommandType = CommandType.Text;
                cmdInner.Connection  = cn;
                //cmdInner.Transaction = transaction;
                try
                {
                    UtilityDBDJ.CreateErrorLog("开始导入TQI数据!");
                    utility.OperatorTQI(cmdInner, detectRecordObj, dtUnitAreaConfig, dtTQIData, bFxIsExists, intImpID, intRecordID, intTaskID, intPlanID);
                    UtilityDBDJ.CreateErrorLog("完成导入TQI数据!");
                    UtilityDBDJ.CreateErrorLog("开始导入号为:" + intImpID.ToString() + "的文件");
                    utility.OperatorDefects(cmdInner, ts, detectRecordObj, dtUnitAreaConfig, dtDefectsData, intImpID, intRecordID, intTaskID, intPlanID);
                    UtilityDBDJ.CreateErrorLog("完成导入号为:" + intImpID.ToString() + "的文件");
                    UtilityDBDJ.CreateErrorLog("开始执行存储过程!");
                    utility.OperatorStore(cmdInner, intImpID, intRecordID, dtSystemConfig, 1);
                    utility.OperatorStore(cmdInner, intImpID, intRecordID, dtSystemConfig, 0);
                    UtilityDBDJ.CreateErrorLog("完成执行存储过程!");
                    //transaction.Commit();
                    utility.SetDetectDataManage(intDataID);
                }
                catch (Exception e)
                {
                    //transaction.Rollback();
                    utility.SetImpLog(e.Message.ToString(), intImpID);
                }
                finally
                {
                    cmdInner.Dispose();
                    if (cn.State != ConnectionState.Closed)
                    {
                        cn.Close();
                    }
                    if (cn != null)
                    {
                        cn.Dispose();
                    }
                }
            }
        }