Exemplo n.º 1
0
        /// <summary>
        /// 运算-获取要生成的表头信息(MEASUREMENT_COLOR)
        /// </summary>
        /// <param name="dt">从模板EXCEL处获取的DT</param>
        /// <returns></returns>
        public DataTable Generatetemp(DataTable dt)
        {
            var resultdt = new DataTable();

            try
            {
                //获取对应临时表(表头)
                resultdt = dtList.Get_MeasureMentColordt();
                //获取来源DT(后面判断时使用)
                var sourcedt = GetSourcedt();
                //循环从模板EXCEL获取的DT
                foreach (DataRow row in dt.Rows)
                {
                    //判断若内部色号对应的“来源”只有一个并且为CHINA;就不需要获取并插入致临时表内(注:若判断了版本日期为空,也作排除)
                    var result = CheckIncloudSource(Convert.ToString(row[1]), row[112].ToString(), sourcedt);
                    if (!result)
                    {
                        continue;
                    }
                    else
                    {
                        var newrow = resultdt.NewRow();
                        newrow[0] = row[0];             //BMMEASUREMENTID(主键)
                        newrow[1] = row[1];             //COLORCODE(内部色号)
                        newrow[2] = row[112];           //FORMULAVERSIONDATE(版本日期)
                        newrow[3] = row[2];             //DIFFUSECOARSENESS(颗粒度)
                        newrow[4] = DateTime.Now.Date;  //CREATEDDATE(创建日期)
                        newrow[5] = row[111];           //MEASUREMENTTIME(测量时间)
                        resultdt.Rows.Add(newrow);
                    }
                }
            }
            catch (Exception)
            {
                resultdt.Rows.Clear();
                resultdt.Columns.Clear();
            }
            return(resultdt);
        }