Beispiel #1
0
        //поиск оборудования  для четвёртой серии
        public void SearchOborud16m()
        {
            VLDataBase vl = new VLDataBase();
            //получаем список опор 4-й серии  из базы данных
            var      opory       = vl.GetOp_4();
            Opory16m selectOpora = new Opory16m();


            foreach (var s in ListNameELement)
            {
                selectOpora = opory.FirstOrDefault(x => x.Name == s);
                if (selectOpora != null)
                {
                    CurrentOpory16m.Add(selectOpora);
                }
            }
        }
Beispiel #2
0
        public void CreateOp16m(Excel._Worksheet oSheet)
        {
            //////////////////////////////////////////////////// 4-я серия               //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
            //создаём заголовки таблиц по ячейкам для опор
            Opory16m vl  = new Opory16m();
            int      col = 0;//количество 'элементов

            //массив свойств опоры вл
            PropertyInfo[] pi = vl.GetType().GetProperties();
            for (int i = 0; i < OpVl16m.Count(); i++)
            {
                oSheet.Cells[135, i + 2] = OpVl16m[i].Name;
                vl  = OpVl16m.FirstOrDefault(x => x.Name == OpVl16m[i].Name);
                col = Colich(OpVl16m[i].Name);


                for (int j = 1; j < pi.Count(); j++)
                {
                    double name = Convert.ToDouble(pi[j].GetValue(vl, null));
                    oSheet.Cells[135 + j + 1, i + 2] = name * col;
                }
            }
            oSheet.Cells[135, OpVl16m.Count() + 2] = "Итого:";

            for (int i = 2; i < pi.Count() + 1; i++)
            {
                var cellStart = oSheet.Cells[135 + i, 2].Address;                   // первая заполненная ячейка в строке
                var cellEnd   = oSheet.Cells[135 + i, OpVl16m.Count() + 1].Address; // последняя заполненная ячейка в строке

                oSheet.Cells[135 + i, OpVl16m.Count() + 2] = "=SUM(" + cellStart + ":" + cellEnd + ")";
            }
            //список названий столбцов бд опор вл

            var s = vl.GetName();

            for (int i = 1; i < s.Count(); i++)
            {
                oSheet.Cells[136 + i, 1] = s[i];
            }
        }