示例#1
0
        private void FindHeightOfPoles()
        {
            Atend.Base.Calculating.CStartEnd startEnd    = new Atend.Base.Calculating.CStartEnd();
            System.Data.DataTable            poleSection = Atend.Base.Design.DPoleSection.AccessSelectBySectionCodeProductType(new Guid(gvSection.SelectedRows[0].Cells[0].Value.ToString()), Convert.ToInt32(Atend.Control.Enum.ProductType.Pole));

            System.Data.DataTable PoleTipSection = Atend.Base.Design.DPoleSection.AccessSelectBySectionCodeProductType(new Guid(gvSection.SelectedRows[0].Cells[0].Value.ToString()), Convert.ToInt32(Atend.Control.Enum.ProductType.PoleTip));

            foreach (DataRow dr in PoleTipSection.Rows)
            {
                DataRow drPole = poleSection.NewRow();
                drPole["ProductType"] = dr["ProductType"].ToString();
                drPole["ProductCode"] = dr["ProductCode"].ToString();
                drPole["SectionCode"] = dr["SectionCode"].ToString();
                poleSection.Rows.Add(drPole);
            }
        }
示例#2
0
        private void BindDataToGridSection()
        {
            Editor ed = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;

            foreach (DataRow dr in dtSectionNumber.Rows)
            {
                ed.WriteMessage("SectionCode={0},SectionNumber={1}\n", new Guid(dr["SectionCode"].ToString()), dr["SectionNumber"].ToString());
                Atend.Base.Calculating.CStartEnd startEnd = Atend.Base.Calculating.CStartEnd.AccessSelectBySectionCode(new Guid(dr["SectionCode"].ToString()));
                ed.WriteMessage("*****Start={0},End={1}\n", startEnd.StartPole, startEnd.EndPole);
                Atend.Base.Design.DPackage dPackStart = Atend.Base.Design.DPackage.AccessSelectByNodeCode(startEnd.StartPole);

                Atend.Base.Design.DPackage dPackEnd = Atend.Base.Design.DPackage.AccessSelectByNodeCode(startEnd.EndPole);

                dr["StartPole"] = dPackStart.Number;
                dr["EndPole"]   = dPackEnd.Number;


                Atend.Base.Calculating.CSetDefaultMec cSetDefaultmec = Atend.Base.Calculating.CSetDefaultMec.AccessSelect();
                System.Data.DataTable dtNetDefault = Atend.Base.Calculating.CNetWorkCross.AccessSelectAll();

                Atend.Base.Calculating.CDefaultRudSurface defaultRudSurface = Atend.Base.Calculating.CDefaultRudSurface.AccessSelectBySectionCode(new Guid(dr["SectionCode"].ToString()));
                if (defaultRudSurface.Code != 0)
                {
                    dr["UTS"]          = defaultRudSurface.UTS;
                    dr["NetCrossCode"] = defaultRudSurface.NetCross;
                }
                else
                {
                    dr["UTS"]          = cSetDefaultmec.Uts;
                    dr["NetCrossCode"] = Convert.ToInt32(dtNetDefault.Rows[0]["Code"].ToString());
                }
            }
            ed.WriteMessage(" EXIT BindDataToGridSection\n");
            gvSection.AutoGenerateColumns = false;
            gvSection.DataSource          = dtSectionNumber;
        }
示例#3
0
        public Atend.Report.dsSagAndTension FillSagAndTension(bool IsUTS)
        {
            Editor ed = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;

            //System.Windows.Forms.MessageBox.Show("salam");
            ed.WriteMessage("-2\n");
            ArrayList arrSection = new ArrayList();

            ed.WriteMessage("-1\n");
            bool chk = true;

            ed.WriteMessage("0\n");
            DataTable dtSagtension = Atend.Base.Calculating.CSagAndTension.AccessSelectByIsUTS(IsUTS);

            ed.WriteMessage("1\n");
            Atend.Report.dsSagAndTension dsSagTensionReport = new Atend.Report.dsSagAndTension();
            ed.WriteMessage("2\n");
            int CountPole = 0;

            ed.WriteMessage("3\n");
            for (int i = 0; i < arrSection.Count; i++)
            {
                DataTable dtpoleSec = Atend.Base.Design.DPoleSection.AccessSelectBySectionCodeProductType(new Guid(arrSection[i].ToString()), Convert.ToInt32(Atend.Control.Enum.ProductType.Pole));
                CountPole += dtpoleSec.Rows.Count;
                DataTable dtpoleSec1 = Atend.Base.Design.DPoleSection.AccessSelectBySectionCodeProductType(new Guid(arrSection[i].ToString()), Convert.ToInt32(Atend.Control.Enum.ProductType.PoleTip));
                CountPole += dtpoleSec1.Rows.Count;
            }
            ed.WriteMessage("4\n");
            DataRow dr1 = dsSagTensionReport.Tables["Title"].NewRow();

            ed.WriteMessage("5\n");
            Atend.Base.Design.DDesignProfile desProfile = Atend.Base.Design.DDesignProfile.AccessSelect();
            ed.WriteMessage("6\n");
            if (desProfile.Id != 0)
            {
                Atend.Base.Base.BRegion b12 = Atend.Base.Base.BRegion.SelectByCode(desProfile.Zone);
                dr1["Area"] = b12.SecondCode;
                System.Globalization.PersianCalendar p = new System.Globalization.PersianCalendar();
                string _date = ChangeToShamsi(desProfile.DesignDate);
                dr1["Date"]         = _date;                 //desProfile.DesignDate.ToString();
                dr1["Designer"]     = desProfile.Designer;
                dr1["ProjectName"]  = desProfile.DesignName; //Atend.Control.Common.DesignName;
                dr1["SectionCount"] = arrSection.Count.ToString();
                dr1["PoleCount"]    = CountPole.ToString();
                dr1["Credit"]       = desProfile.Validate;
                if (System.IO.File.Exists(Atend.Control.ConnectionString.LogoPath))
                {
                    System.IO.FileStream FS = new System.IO.FileStream(Atend.Control.ConnectionString.LogoPath, System.IO.FileMode.Open);
                    byte[] reader           = new byte[FS.Length];
                    FS.Read(reader, 0, Convert.ToInt32(FS.Length));
                    dr1["Logo"] = reader;
                    FS.Close();
                }
                dr1["LogoName"] = Atend.Control.ConnectionString.LogoName;

                dsSagTensionReport.Tables["Title"].Rows.Add(dr1);
            }
            else
            {
                MessageBox.Show("لطفا ابتدا مشخصات طرح را تکمیل نمایید", "اخطار");
                return(null);
            }
            ed.WriteMessage("7\n");

            foreach (DataRow dr in dtSagtension.Rows)
            {
                ed.WriteMessage("FillSagTension\n");
                DataRow drSagTension = dsSagTensionReport.Tables["SagAndTension"].NewRow();
                Atend.Base.Calculating.CStartEnd   startEnd   = Atend.Base.Calculating.CStartEnd.AccessSelectBySectionCode(new Guid(dr["SectionCode"].ToString()));
                Atend.Base.Design.DPackage         dPackStart = Atend.Base.Design.DPackage.AccessSelectByNodeCode(startEnd.StartPole);
                Atend.Base.Design.DPackage         dPackEnd   = Atend.Base.Design.DPackage.AccessSelectByNodeCode(startEnd.EndPole);
                Atend.Base.Calculating.CDefaultMec DefMec     = Atend.Base.Calculating.CDefaultMec.AccessSelectBySectionCode(new Guid(dr["SectionCode"].ToString()), IsUTS);
                drSagTension["SectionCode"] = dr["Number"].ToString();
                drSagTension["StartPole"]   = dPackStart.Number;
                drSagTension["EndPole"]     = dPackEnd.Number;
                drSagTension["NormH"]       = dr["NormH"].ToString();
                drSagTension["NormF"]       = dr["NormF"].ToString();
                drSagTension["WindAndIceH"] = dr["WindAndIceH"].ToString();
                drSagTension["WindAndIceF"] = dr["WindAndIceF"].ToString();
                drSagTension["MinTempH"]    = dr["MinTempH"].ToString();
                drSagTension["MinTempF"]    = dr["MinTempF"].ToString();
                drSagTension["MaxTempH"]    = dr["MaxTempH"].ToString();
                drSagTension["MaxTempF"]    = dr["MaxTempF"].ToString();
                drSagTension["WindH"]       = dr["WindH"].ToString();
                drSagTension["WindF"]       = dr["WindF"].ToString();
                drSagTension["IceH"]        = dr["IceH"].ToString();
                drSagTension["IceF"]        = dr["IceF"].ToString();
                drSagTension["CondName"]    = dr["ConductorName"].ToString();
                drSagTension["Span"]        = DefMec.SE;

                dsSagTensionReport.Tables["SagAndTension"].Rows.Add(drSagTension);

                chk = true;
                for (int i = 0; i < arrSection.Count; i++)
                {
                    if (new Guid(arrSection[0].ToString()) == new Guid(dr["SectionCode"].ToString()))
                    {
                        chk = false;
                    }
                }
                if (chk)
                {
                    arrSection.Add(dr["SectionCode"].ToString());
                }
            }
            ed.WriteMessage("8\n");
            return(dsSagTensionReport);
        }