Exemplo n.º 1
0
        /// <summary>
        /// 合并表格-将运算过来的临时表头及表体进行合并(作导出数据之用) 注:旧系统使用
        /// </summary>
        /// <param name="tempdt">运算结果-表头</param>
        /// <param name="tempemptydt">运算结果-表体</param>
        /// <returns></returns>
        private DataTable Margedt(DataTable tempdt, DataTable tempemptydt)
        {
            //获取导出EXCEL临时表
            var resultdt = dtList.Get_Exportdt();

            //循环表头信息
            foreach (DataRow rows in tempdt.Rows)
            {
                //根据ID值获取表头对应的表体信息
                var emptyrow = tempemptydt.Select("ID='" + Convert.ToInt32(rows[0]) + "'");
                //循环表体信息(注:若i=0即表示插入第一行记录,也就可以将表头信息插入至临时表对应的列;而除i=0外,其余的表头信息对应的列都为空)
                for (var i = 0; i < emptyrow.Length; i++)
                {
                    var newrows = resultdt.NewRow();
                    newrows[0]  = i == 0 ? rows[1] : DBNull.Value;                 //车厂
                    newrows[1]  = i == 0 ? rows[2] : DBNull.Value;                 //颜色代码
                    newrows[2]  = i == 0 ? rows[3] : DBNull.Value;                 //颜色名称
                    newrows[3]  = i == 0 ? rows[4] : DBNull.Value;                 //适用车型
                    newrows[4]  = i == 0 ? rows[5] : DBNull.Value;                 //品牌
                    newrows[5]  = i == 0 ? rows[6] : DBNull.Value;                 //涂层
                    newrows[6]  = i == 0 ? rows[7] : DBNull.Value;                 //差异色
                    newrows[7]  = i == 0 ? rows[8] : DBNull.Value;                 //年份
                    newrows[8]  = i == 0 ? rows[9] : DBNull.Value;                 //色版来源
                    newrows[9]  = i == 0 ? rows[10] : DBNull.Value;                //配方号
                    newrows[10] = i == 0 ? rows[11] : DBNull.Value;                //颜色索引号
                    newrows[11] = i == 0 ? rows[12] : DBNull.Value;                //制作日期
                    newrows[12] = i == 0 ? rows[13] : DBNull.Value;                //制作人
                    newrows[13] = i == 0 ? rows[14] : DBNull.Value;                //录入日期
                    newrows[14] = i == 0 ? rows[15] : DBNull.Value;                //录入人
                    newrows[15] = i == 0 ? rows[16] : DBNull.Value;                //审核日期
                    newrows[16] = i == 0 ? rows[17] : DBNull.Value;                //审核人
                    newrows[17] = i == 0 ? rows[18] : DBNull.Value;                //备注
                    newrows[18] = i == 0 ? rows[19] : DBNull.Value;                //来源分类
                    newrows[19] = emptyrow[i][1];                                  //色母
                    newrows[20] = emptyrow[i][2];                                  //色母名称
                    newrows[21] = Math.Round(Convert.ToDouble(emptyrow[i][3]), 2); //量(克)
                    newrows[22] = Math.Round(Convert.ToDouble(emptyrow[i][4]), 2); //累计量(克)
                    newrows[23] = i == 0 ? rows[20] : DBNull.Value;                //颜色组别
                    resultdt.Rows.Add(newrows);
                }
            }
            return(resultdt);
        }