Example #1
0
        protected override PM getPM(OleDbDataReader reader, out String err)
        {
            err = String.Empty;
            ZGCG_PM pm = new ZGCG_PM();
            if (hasFormatTable)
            {
                pm.flbm = reader["分类编码"].ToString().Trim();
                pm.cgmc = reader["成果名称"].ToString().Trim();
                pm.cgbh = reader["成果编号"].ToString().Trim();
                pm.wcr = reader["完成人"].ToString().Trim();
                pm.wcdw = reader["完成单位"].ToString().Trim();
                pm.dwdz = reader["单位地址"].ToString().Trim();
                pm.yzbm = reader["邮政编码"].ToString().Trim();
                pm.dwdh = reader["单位电话"].ToString().Trim();
                pm.cgjj = reader["成果简介"].ToString().Trim();
                pm.zwztc = reader["中文主题词"].ToString().Trim();
                pm.yjqzsj = reader["研究起止时间"].ToString().Trim();
                pm.gtfl = reader["国图分类"].ToString().Trim();
                pm.cglb = reader["成果类别"].ToString().Trim();
                pm.cgsp = reader["成果水平"].ToString().Trim();
                pm.jdbm = reader["鉴定部门"].ToString().Trim();
                pm.jdrq = reader["鉴定日期"].ToString().Trim();
                pm.lxhhj = reader["立项或获奖"].ToString().Trim();
                pm.fbdw = reader["发布单位"].ToString().Trim();
                pm.zlly = reader["资料来源"].ToString().Trim();
                try
                {
                    if (String.Empty.Equals(reader["发布年份"].ToString().Trim()))
                    {
                        pm.fbnf = 0;
                    }
                    else
                        pm.fbnf = int.Parse(reader["发布年份"].ToString().Trim());
                }
                catch
                {
                    err += "发布年份\"" + reader["发布年份"] + "\"出错" + pmKeyInfo(pm);
                }
                pm.lybh = reader["来源编号"].ToString().Trim();
                pm.hydm = reader["行业代码"].ToString().Trim();
                pm.hymc = reader["行业名称"].ToString().Trim();
                pm.zlsq = reader["专利授权"].ToString().Trim();
                try
                {
                    pm.kf = Boolean.Parse(reader["开放"].ToString().Trim());
                }
                catch (Exception)
                {
                    pm.kf = false;
                }
            }
            else
            {
                //pm.flbm = reader["分类编码"].ToString().Trim();
                pm.gtfl = reader["国图分类"].ToString().Trim();

                pm.gtfl = pm.gtfl.Replace(';', ';');
                pm.gtfl = pm.gtfl.Replace('.', '.');
                pm.flbm = GtflToFlbm(pm.gtfl);

                //pm.cgbh = reader["成果编号"].ToString().Trim();
                pm.cgbh = "";

                pm.cgmc = reader["成果名称"].ToString().Trim();
                pm.wcdw = reader["完成单位"].ToString().Trim();
                pm.wcr = reader["完成人"].ToString().Trim();
                pm.dwdz = reader["单位地址"].ToString().Trim();
                pm.yzbm = reader["邮政编码"].ToString().Trim();
                pm.dwdh = reader["单位电话"].ToString().Trim();
                pm.cgjj = reader["成果简介"].ToString().Trim();
                pm.zwztc = reader["中文主题词"].ToString().Trim();
                pm.yjqzsj = reader["研究起止时间"].ToString().Trim();
                pm.cglb = reader["成果类别"].ToString().Trim();
                pm.cgsp = reader["成果水平"].ToString().Trim();
                pm.jdbm = reader["鉴定部门"].ToString().Trim();
                pm.jdrq = reader["鉴定日期"].ToString().Trim();
                pm.lxhhj = reader["立项或获奖"].ToString().Trim();
                pm.fbdw = reader["发布单位"].ToString().Trim();
                pm.zlly = reader["资料来源"].ToString().Trim();

                try
                {
                    if (String.Empty.Equals(reader["发布年份"].ToString().Trim()))
                    {
                        pm.fbnf = 0;
                    }
                    else
                        pm.fbnf = int.Parse(reader["发布年份"].ToString().Trim());
                }
                catch
                {
                    err +="发布年份\"" + reader["发布年份"] + "\"出错" + pmKeyInfo(pm);
                }

                pm.lybh = reader["来源编码"].ToString().Trim();
                pm.hydm = reader["行业代码"].ToString().Trim();
                pm.hymc = reader["行业名称"].ToString().Trim();
                pm.zlsq = reader["专利授权"].ToString().Trim();

                pm.kf = true;
            }

            pm.dlr = user.name;
            pm.gxrq = DateTime.Now;

            pm.cgmc = CutColumnString(pm.cgmc, 150);
            pm.wcdw = CutColumnString(pm.wcdw, 255);
            pm.wcr = CutColumnString(pm.wcr, 100);
            pm.dwdz = CutColumnString(pm.dwdz, 255);
            pm.yzbm = CutColumnString(pm.yzbm, 6);
            pm.dwdh = CutColumnString(pm.dwdh, 255);
            pm.zwztc = CutColumnString(pm.zwztc, 100);
            pm.yjqzsj = CutColumnString(pm.yjqzsj, 50);
            pm.gtfl = CutColumnString(pm.gtfl, 35);
            pm.cglb = CutColumnString(pm.cglb, 15);
            pm.cgsp = CutColumnString(pm.cgsp, 10);
            pm.jdbm = CutColumnString(pm.jdbm, 50);
            pm.jdrq = CutColumnString(pm.jdrq, 20);
            pm.lxhhj = CutColumnString(pm.lxhhj, 150);
            pm.fbdw = CutColumnString(pm.fbdw, 100);
            pm.zlly = CutColumnString(pm.zlly, 60);
            pm.lybh = CutColumnString(pm.lybh, 10);
            pm.hydm = CutColumnString(pm.hydm, 7);
            pm.hymc = CutColumnString(pm.hymc, 50);
            pm.zlsq = CutColumnString(pm.zlsq, 100);

            pm.fillEmptyStringAsNull();

            return pm;
        }