コード例 #1
0
        //internal double[] ComputeTension(Atend.Base.Design.DWeather WeatherBase, Atend.Base.Design.DWeather WeatherSecond, double BaseH, double p)
        //{
        //    throw new Exception("The method or operation is not implemented.");
        //}

        /// <summary>
        /// Returns a Datatable that contains all poles which was DDE or DE
        /// </summary>
        /// <returns></returns>

        public static System.Data.DataTable GetDesignPoles()
        {
            Editor ed = Application.DocumentManager.MdiActiveDocument.Editor;

            System.Data.DataColumn dc1 = new System.Data.DataColumn("PoleGuid");
            System.Data.DataColumn dc2 = new System.Data.DataColumn("PoleOI");

            System.Data.DataTable PolesTable = new System.Data.DataTable();
            PolesTable.Columns.Add(dc1);
            PolesTable.Columns.Add(dc2);



            Database db = Application.DocumentManager.MdiActiveDocument.Database;

            using (DocumentLock dlock = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.LockDocument())
            {
                //ed.WriteMessage("1\n");
                using (Transaction tr = db.TransactionManager.StartTransaction())
                {
                    //ed.WriteMessage("2\n");
                    BlockTable       bt  = (BlockTable)tr.GetObject(db.BlockTableId, OpenMode.ForRead);
                    BlockTableRecord btr = (BlockTableRecord)tr.GetObject(bt[BlockTableRecord.ModelSpace], OpenMode.ForRead);
                    //ed.WriteMessage("3\n");
                    foreach (ObjectId oi in btr)
                    {
                        Atend.Base.Acad.AT_INFO at_info = Atend.Base.Acad.AT_INFO.SelectBySelectedObjectId(oi);
                        if (at_info.ParentCode != "NONE" && at_info.NodeType == (int)Atend.Control.Enum.ProductType.Pole)
                        {
                            //ed.WriteMessage("4\n");
                            //CurrentPoleOi = oi;

                            System.Data.DataTable Consols = Atend.Base.Design.DPackage.AccessSelectByParentCodeAndType(Atend.Base.Design.DPackage.AccessSelectByNodeCode(new Guid(at_info.NodeCode)).Code, (int)Atend.Control.Enum.ProductType.Consol);
                            foreach (System.Data.DataRow dr in Consols.Rows)
                            {
                                //ed.WriteMessage("5\n");
                                Atend.Base.Equipment.EConsol EC = Atend.Base.Equipment.EConsol.SelectByCode(Convert.ToInt32(dr["ProductCode"]));
                                if (EC.ConsolType == 0 || EC.ConsolType == 1)
                                {
                                    ed.WriteMessage("6\n");
                                    System.Data.DataRow NewR = PolesTable.NewRow();
                                    NewR["PoleGuid"] = at_info.NodeCode;
                                    NewR["PoleOI"]   = oi.ToString().Substring(1, oi.ToString().Length - 2);
                                    PolesTable.Rows.Add(NewR);
                                }
                            }
                        }
                    }
                } //end of transaction
            }     // end of lock


            foreach (System.Data.DataRow dr in PolesTable.Rows)
            {
                ed.WriteMessage("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");
                ed.WriteMessage("PG:{0} \nPOI:{1} \n", dr["PoleGuid"], dr["PoleOI"]);
            }
            return(PolesTable);
        }
コード例 #2
0
ファイル: frmEditConsol.cs プロジェクト: ParisaMousavi/ATEND
        private void frmEditConsol_Load(object sender, EventArgs e)
        {
            if (ForceToClose)
            {
                this.Close();
            }

            //BindDataToForm();

            BindDataToComboBoxIsExist();
            if (cboType.Items.Count > 0)
            {
                cboType.SelectedIndex = 0;
            }

            Dpack = Atend.Base.Design.DPackage.AccessSelectByCode(NodeCode);
            //ed.WriteMessage("((={0}\n", Dpack.Code.ToString());
            SelectedProductCode = Dpack.ProductCode;
            Atend.Base.Equipment.EConsol Consol = Atend.Base.Equipment.EConsol.AccessSelectByCode(Dpack.ProductCode);


            Volt                      = Consol.VoltageLevel;
            txtCount.Text             = Dpack.Count.ToString();
            CboIsExist.SelectedValue  = Atend.Base.Base.BEquipStatus.SelectByACode(Dpack.IsExistance).Code;
            CboProjCode.SelectedValue = Dpack.ProjectCode;



            //ed.WriteMessage("**Volt={0}\n", Volt);



            dtMergeConsol = Atend.Base.Equipment.EConsol.SelectAllAndMerge();

            dtMergeConsol.DefaultView.RowFilter = " VoltageLevel = '" + Volt + "'";
            //DataView dv = new DataView();
            //dv.Table = dtMergeConsol;
            //dv.RowFilter = " VoltageLevel = '" + Volt + "'";

            gvConsol.AutoGenerateColumns = false;
            gvConsol.DataSource          = dtMergeConsol;
            ChangeColor();

            for (int i = 0; i < gvConsol.Rows.Count; i++)
            {
                if (Convert.ToInt32(gvConsol.Rows[i].Cells[1].Value.ToString()) == Dpack.ProductCode)
                {
                    gvConsol.Rows[i].DefaultCellStyle.BackColor = Color.Yellow;
                }
            }
            Atend.Global.Utility.UBinding.SetGridToCurrentSelectedEquip("Code,Xcode", new object[2] {
                SelectedProductCode, "00000000-0000-0000-0000-000000000000"
            }, dtMergeConsol, gvConsol, this);
        }
コード例 #3
0
ファイル: frmElecterical.cs プロジェクト: ParisaMousavi/ATEND
        private void btnSelect_Click(object sender, EventArgs e)
        {
            this.Hide();
            Editor ed = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;
            PromptEntityOptions peo = new PromptEntityOptions("\nSelect Entity:");
            PromptEntityResult  per = ed.GetEntity(peo);

            Atend.Base.Acad.AT_INFO atInfo = Atend.Base.Acad.AT_INFO.SelectBySelectedObjectId(per.ObjectId);
            //ed.WriteMessage("NodeType={0}\n",atInfo.NodeType);
            if ((atInfo.NodeType == Convert.ToInt32(Atend.Control.Enum.ProductType.Consol)) || (atInfo.NodeType == Convert.ToInt32(Atend.Control.Enum.ProductType.Kalamp)) || (atInfo.NodeType == Convert.ToInt32(Atend.Control.Enum.ProductType.HeaderCabel)))
            {
                CanDoCalculate = true;
                consolobj      = Convert.ToInt32(per.ObjectId.ToString().Substring(1, per.ObjectId.ToString().Length - 2));
                Atend.Base.Design.DPackage dPack = Atend.Base.Design.DPackage.AccessSelectByCode(new Guid(atInfo.NodeCode));
                if (dPack.Type == Convert.ToInt32(Atend.Control.Enum.ProductType.Kalamp))
                {
                    Atend.Base.Equipment.EClamp eClamp = Atend.Base.Equipment.EClamp.AccessSelectByCode(dPack.ProductCode);
                    txtNamedVoltage.Text = eClamp.VoltageLevel.ToString();
                    txtVoltTev.Text      = eClamp.VoltageLevel.ToString();
                }
                else if (dPack.Type == Convert.ToInt32(Atend.Control.Enum.ProductType.Consol))
                {
                    Atend.Base.Equipment.EConsol eConsol = Atend.Base.Equipment.EConsol.AccessSelectByCode(dPack.ProductCode);
                    txtNamedVoltage.Text = eConsol.VoltageLevel.ToString();
                    txtVoltTev.Text      = eConsol.VoltageLevel.ToString();
                }
                else if (dPack.Type == Convert.ToInt32(Atend.Control.Enum.ProductType.HeaderCabel))
                {
                    Atend.Base.Equipment.EHeaderCabel eHeaderCabel = Atend.Base.Equipment.EHeaderCabel.AccessSelectByCode(dPack.ProductCode);
                    txtNamedVoltage.Text = eHeaderCabel.Voltage.ToString();
                    txtVoltTev.Text      = eHeaderCabel.Voltage.ToString();
                }

                txtR.Text = "0";
                txtX.Text = "0";
            }
            else
            {
                MessageBox.Show("لطفت جهت شروع محاسبات یک گره را انتخاب کنید");
                CanDoCalculate = false;
            }
            //ed.WriteMessage("ca={0}\n",CanDoCalculate);
            this.Show();
        }
コード例 #4
0
        private void BindGridEquipment(DataGridView dataGridView)
        {
            Editor ed = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;

            for (int i = 0; i <= dataGridView.Rows.Count - 1; i++)
            {
                dataGridView.Rows.RemoveAt(i);
            }
            dataGridView.Rows.Clear();
            dataGridView.Refresh();
            ed.WriteMessage("ll\n");
            ed.WriteMessage("Count={0}\n", Atend.Base.Equipment.EPoleTip.nodeKeysEPackageX.Count);
            for (int i = 0; i < Atend.Base.Equipment.EPoleTip.nodeKeysEPackageX.Count; i++)
            {
                //string s = Atend.Base.Equipment.EPoleTip.nodeKeysEPackage[i].ToString();
                ed.WriteMessage("i={0},Key={1}\n", i.ToString(), Atend.Base.Equipment.EPoleTip.nodeKeysEPackageX[i]);
                gvPoleTip.Rows.Add();
                gvPoleTip.Rows[gvPoleTip.Rows.Count - 1].Cells[0].Value = Atend.Base.Equipment.EPoleTip.nodeKeysEPackageX[i].ToString();
                gvPoleTip.Rows[gvPoleTip.Rows.Count - 1].Cells[2].Value = Atend.Base.Equipment.EPoleTip.nodeCountEPackageX[i].ToString();
                Atend.Base.Equipment.EConsol consol = Atend.Base.Equipment.EConsol.SelectByXCode(new Guid(Atend.Base.Equipment.EPoleTip.nodeKeysEPackageX[i].ToString()));
                gvPoleTip.Rows[gvPoleTip.Rows.Count - 1].Cells[1].Value = consol.Name;
            }
        }
コード例 #5
0
        private void gvPoleTip_Click(object sender, EventArgs e)
        {
            Editor ed = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;

            dtgvPoleConsol.Rows.Clear();
            Atend.Base.Equipment.EPoleTip poleTip       = new Atend.Base.Equipment.EPoleTip();
            System.Data.DataTable         dtExistance   = Atend.Base.Base.BEquipStatus.SelectAllX();                                                        //Atend.Control.Common.StatuseCode;
            System.Data.DataTable         dtProjectCode = Atend.Base.Base.BWorkOrder.SelectJoinOrder(Convert.ToInt32(cboIsExist.SelectedValue.ToString())); //Atend.Base.Base.BProjectCode.AccessSelectAll();


            if (gvPoleTip.Rows.Count > 0)
            {
                if (Convert.ToBoolean(gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells[2].Value) == true)
                {
                    poleTip = Atend.Base.Equipment.EPoleTip.SelectByXCode(new Guid(gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells[0].Value.ToString()));
                    //poleTip = Atend.Base.Equipment.EPoleTip.SelectByXCode(new Guid(gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells[0].Value.ToString()));
                    Atend.Base.Equipment.EHalter halter = Atend.Base.Equipment.EHalter.SelectByXCode(poleTip.HalterXID);
                    if (halter.Code != -1)
                    {
                        txtHalter.Text      = halter.Name;
                        txtHalterCount.Text = poleTip.HalterCount.ToString();
                    }

                    dtgvPoleConsol.Rows.Clear();
                    for (int i = 0; i < Atend.Base.Equipment.EPoleTip.nodeKeysEPackageX.Count; i++)
                    {
                        Atend.Base.Equipment.EConsol consol = Atend.Base.Equipment.EConsol.SelectByXCode(new Guid(Atend.Base.Equipment.EPoleTip.nodeKeysEPackageX[i].ToString()));
                        DataRow dr = dtgvPoleConsol.NewRow();
                        dr["Code"]        = Guid.Empty;
                        dr["XCode"]       = Atend.Base.Equipment.EPoleTip.nodeKeysEPackageX[i];
                        dr["AccessCode"]  = "_";
                        dr["IsSql"]       = true;
                        dr["IsExistance"] = cboIsExist.SelectedValue.ToString();
                        if (cboProjCode.Items.Count > 0)
                        {
                            dr["ProjectCode"] = cboProjCode.SelectedValue.ToString();
                        }
                        else
                        {
                            dr["ProjectCode"] = 0;
                        }
                        //dr["IsExistance"] = dtExistance.Rows[4]["Code"].ToString();
                        //dr["ProjectCode"] = dtProjectCode.Rows[0]["Code"].ToString();
                        dr["Name"]  = consol.Name;
                        dr["Count"] = "1";
                        dtgvPoleConsol.Rows.Add(dr);
                        //gvConsol.Rows[gvConsol.Rows.Count - 1].Cells[0].Value = Atend.Base.Equipment.EPoleTip.nodeKeysEPackageX[i];
                        //Atend.Base.Equipment.EConsol Consol = Atend.Base.Equipment.EConsol.SelectByXCode(new Guid(Atend.Base.Equipment.EPoleTip.nodeKeysEPackageX[i].ToString()));
                        //gvConsol.Rows[gvConsol.Rows.Count - 1].Cells[2].Value = Consol.Name;
                        //gvConsol.Rows[gvConsol.Rows.Count - 1].Cells[4].Value = Atend.Base.Equipment.EPoleTip.nodeCountEPackageX[i].ToString();
                    }
                }
                else
                {
                    poleTip = Atend.Base.Equipment.EPoleTip.AccessSelectByCode(Convert.ToInt32(gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells[1].Value.ToString()));
                    //poleTip = Atend.Base.Equipment.EPoleTip.AccessSelectByCode(Convert.ToInt32(gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells[1].Value.ToString()));
                    Atend.Base.Equipment.EHalter halter = Atend.Base.Equipment.EHalter.AccessSelectByCode(poleTip.HalterID);
                    if (halter.Code != -1)
                    {
                        txtHalter.Text      = halter.Name;
                        txtHalterCount.Text = poleTip.HalterCount.ToString();
                    }
                    else
                    {
                        txtHalter.Text      = "";
                        txtHalterCount.Text = "0";
                    }

                    dtgvPoleConsol.Rows.Clear();
                    for (int i = 0; i < Atend.Base.Equipment.EPoleTip.nodeKeysEPackage.Count; i++)
                    {
                        Atend.Base.Equipment.EConsol Consol = Atend.Base.Equipment.EConsol.AccessSelectByCode(Convert.ToInt32(Atend.Base.Equipment.EPoleTip.nodeKeysEPackage[i].ToString()));
                        DataRow dr = dtgvPoleConsol.NewRow();
                        dr["Name"]        = Consol.Name;
                        dr["Code"]        = Guid.Empty;//Atend.Base.Equipment.EPoleTip.nodeKeysEPackage[i];
                        dr["XCode"]       = "_";
                        dr["AccessCode"]  = Atend.Base.Equipment.EPoleTip.nodeKeysEPackage[i];
                        dr["IsSql"]       = false;
                        dr["IsExistance"] = cboIsExist.SelectedValue.ToString();
                        if (cboProjCode.Items.Count > 0)
                        {
                            dr["ProjectCode"] = cboProjCode.SelectedValue.ToString();
                        }
                        else
                        {
                            dr["ProjectCode"] = 0;
                        }
                        //dr["IsExistance"] = dtExistance.Rows[4]["Code"].ToString();
                        //dr["ProjectCode"] = dtProjectCode.Rows[0]["Code"].ToString();
                        dr["count"] = "1";
                        dtgvPoleConsol.Rows.Add(dr);
                    }
                }

                //if (Convert.ToBoolean(gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells[2].Value) == false)
                //{
                //    dtgvPoleConsol = dtCurrent.Copy();
                //    gvConsol.AutoGenerateColumns = false;
                //    gvConsol.DataSource = dtgvPoleConsol;
                //    return;
                //}
                //else
                //{
                //    gvConsol.AutoGenerateColumns = false;
                //    gvConsol.DataSource = dtgvPoleConsol;
                //}
            }
        }
コード例 #6
0
        private void btnOk_Click(object sender, EventArgs e)
        {
            Editor ed = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;

            if (Validation())
            {
                bool useAccess   = false;
                int  projectcode = 0;

                List <Atend.Base.Equipment.EConsol> list = new List <Atend.Base.Equipment.EConsol>();
                ArrayList consoluse      = new ArrayList();
                ArrayList consolexis     = new ArrayList();
                ArrayList consolcount    = new ArrayList();
                ArrayList ConsolProjCode = new ArrayList();
                ArrayList DelConsol      = new ArrayList();

                Atend.Base.Equipment.EConsol eConsol = new Atend.Base.Equipment.EConsol();
                int Existance = 0;
                Atend.Base.Equipment.EPole    ePole    = new Atend.Base.Equipment.EPole();
                Atend.Base.Equipment.EPoleTip ePoletip = new Atend.Base.Equipment.EPoleTip();
                //ed.WriteMessage("IsSqlSelected={0}\n", gvPoleTip.SelectedRows[0].Cells[2].Value.ToString());
                Atend.Base.Equipment.EHalter halt = new Atend.Base.Equipment.EHalter();

                if (Convert.ToBoolean(gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells[2].Value) == true)
                {
                    ePoletip  = Atend.Base.Equipment.EPoleTip.SelectByXCode(new Guid(gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells[0].Value.ToString()));
                    ePole     = Atend.Base.Equipment.EPole.SelectByXCode(ePoletip.PoleXCode);
                    useAccess = false;
                    if (ePoletip.HalterCount != 0)
                    {
                        halt = Atend.Base.Equipment.EHalter.SelectByXCode(ePoletip.HalterXID);
                    }
                }
                else
                {
                    ePoletip  = Atend.Base.Equipment.EPoleTip.AccessSelectByCode(Convert.ToInt32(gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells[1].Value.ToString()));//gvPoleTip.SelectedRows[0].Cells[1].Value
                    ePole     = Atend.Base.Equipment.EPole.AccessSelectByCode(ePoletip.PoleCode);
                    useAccess = true;
                    if (ePoletip.HalterCount != 0)
                    {
                        halt = Atend.Base.Equipment.EHalter.AccessSelectByCode(ePoletip.HalterID);
                    }
                }

                foreach (DataRow dr in dtLastConsol.Rows)
                {
                    DelConsol.Add(dr["Code"].ToString());
                }



                //if (ePole.Shape == 0)
                //{
                //    ed.WriteMessage("**********I AM IN Shape=0\n");
                //    shape = 0;
                //    Atend.Global.Acad.DrawEquips.AcDrawCirclePole ACDCP = new Atend.Global.Acad.DrawEquips.AcDrawCirclePole();
                //    ACDCP.ePole = ePole;
                //    ACDCP.ePoleTip = ePoletip;
                //    ACDCP.UseAccess = useAccess;
                //    ACDCP.ProjectCode = Convert.ToInt32(cboProjCode.SelectedValue);
                //    ACDCP.Existance = Convert.ToByte(cboIsExist.SelectedValue);

                //    ACDCP.HalterExistance = Convert.ToByte(cboHIsExistance.SelectedValue);
                //    ACDCP.HalterProjectCode = Convert.ToInt32(cboHProjectCode.SelectedValue);
                //    ACDCP.Height = Convert.ToInt32(txtHeight.Text);
                //    ACDCP.eHalter = halt;
                //    //Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsols.Clear();
                //    //Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolCount.Clear();
                //    //Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolExistance.Clear();
                //    ed.WriteMessage("oo\n");
                //    ACDCP.eConsols.Clear();
                //    //Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolUseAccess.Clear();
                //    //Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolProjectCode.Clear();

                //    //Atend.Base.Acad.AcadGlobal.CirclePoleData.dPoleInfo.HalterCount = ePoletip.HalterCount;
                //    //Atend.Base.Acad.AcadGlobal.CirclePoleData.dPoleInfo.HalterType = ePoletip.HalterID;
                //    //Atend.Base.Acad.AcadGlobal.CirclePoleData.dPoleInfo.Factor = ePoletip.Factor;
                //    //Atend.Base.Acad.AcadGlobal.CirclePoleData.Existance = Convert.ToByte(cboIsExist.SelectedValue);
                //    //Atend.Base.Acad.AcadGlobal.CirclePoleData.UseAccess = useAccess;
                //    //Atend.Base.Acad.AcadGlobal.CirclePoleData.ePole = ePole;
                //    //Atend.Base.Acad.AcadGlobal.CirclePoleData.ePoleTip = ePoletip;
                //    //Atend.Base.Acad.AcadGlobal.CirclePoleData.ProjectCode = Convert.ToInt32(cboProjCode.SelectedValue);

                //    foreach (DataRow dr in dtgvPoleConsol.Rows)
                //    {
                //        if (Convert.ToInt32(dr["Count"].ToString()) != 0)
                //        {
                //            //DataGridViewComboBoxCell c = (DataGridViewComboBoxCell)gvConsol.Rows[i].Cells[3];
                //            //Existance = Convert.ToInt32(c.Value);

                //            //DataGridViewComboBoxCell cPCode = (DataGridViewComboBoxCell)gvConsol.Rows[i].Cells[5];
                //            //projectcode = Convert.ToInt32(cPCode.Value);
                //            if (Convert.ToBoolean(dr["IsSql"].ToString()))
                //            {
                //                ed.WriteMessage("LocalConsolXCODE={0}\n", dr["XCode"].ToString());
                //                eConsol = Atend.Base.Equipment.EConsol.SelectByXCode(new Guid(
                //                    dr["XCode"].ToString()));
                //                ed.WriteMessage("Consol.NAme={0}\n", eConsol.Name);
                //                ACDCP.eConsols.Add(eConsol);
                //                ed.WriteMessage("HH\n");
                //                ACDCP.eConsolUseAccess.Add(false);
                //                ed.WriteMessage("AA\n");
                //                ACDCP.eConsolCount.Add(Convert.ToInt32(dr["Count"].ToString()));
                //                ed.WriteMessage("Ab\n");

                //                ACDCP.eConsolExistance.Add(Convert.ToInt32(dr["IsExistance"].ToString()));
                //                ed.WriteMessage("Ac\n");

                //                ACDCP.eConsolProjectCode.Add(Convert.ToInt32(dr["ProjectCode"].ToString()));
                //            }
                //            else
                //            {
                //                ed.WriteMessage("Access Consol\n");
                //                eConsol = Atend.Base.Equipment.EConsol.AccessSelectByCode(Convert.ToInt32(
                //                   dr["AccessCode"].ToString()));
                //                ACDCP.eConsols.Add(eConsol);
                //                ACDCP.eConsolUseAccess.Add(true);
                //                ACDCP.eConsolCount.Add(Convert.ToInt32(dr["Count"].ToString()));
                //                ed.WriteMessage("eConsolExistance={0}\n", Existance);
                //                ACDCP.eConsolExistance.Add(Convert.ToInt32(dr["IsExistance"].ToString()));
                //                ACDCP.eConsolProjectCode.Add(Convert.ToInt32(dr["ProjectCode"].ToString()));

                //            }

                //        }
                //    }
                //    ed.WriteMessage("Consol.Count={0}\n", Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsols.Count);

                //    if (ACDCP.UpdatePoleDataTip(objID, DelConsol, NodeCode))
                //    {
                //        AllowClose = true;
                //        return;
                //    }
                //}
                //else
                //{
                //    shape = 1;
                //    ed.WriteMessage("TYPE={0}\n", ePole.Type);
                //    if (ePole.Type == 2)
                //    {
                //        Atend.Global.Acad.DrawEquips.AcDrawPolygonPole ACDP = new Atend.Global.Acad.DrawEquips.AcDrawPolygonPole();
                //        ed.WriteMessage("***************Type=2\n");
                //        Type = 2;
                //        //Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsols.Clear();
                //        //Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolCount.Clear();
                //        //Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolExistance.Clear();
                //        //Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsols.Clear();
                //        //Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolUseAccess.Clear();
                //        //Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolProjectCode.Clear();

                //        //Atend.Base.Acad.AcadGlobal.PolygonPoleData.dPoleInfo.HalterCount = ePoletip.HalterCount;
                //        //Atend.Base.Acad.AcadGlobal.PolygonPoleData.dPoleInfo.HalterType = ePoletip.HalterID;
                //        //Atend.Base.Acad.AcadGlobal.PolygonPoleData.dPoleInfo.Factor = ePoletip.Factor;
                //        ACDP.Existance = Convert.ToByte(cboIsExist.SelectedValue);
                //        ACDP.UseAccess = useAccess;
                //        ACDP.ProjectCode = Convert.ToInt32(cboProjCode.SelectedValue);

                //        ACDP.ePole = ePole;
                //        ACDP.ePoleTip = ePoletip;


                //        ACDP.HalterExistance = Convert.ToByte(cboHIsExistance.SelectedValue);
                //        ACDP.HalterProjectCode = Convert.ToInt32(cboHProjectCode.SelectedValue);
                //        ACDP.Height = Convert.ToInt32(txtHeight.Text);
                //        ACDP.eHalter = halt;
                //        foreach (DataRow dr in dtgvPoleConsol.Rows)
                //        {
                //            if (Convert.ToInt32(dr["Count"].ToString()) != 0)
                //            {
                //                //DataGridViewComboBoxCell c = (DataGridViewComboBoxCell)gvConsol.Rows[i].Cells[3];


                //                //Existance = Convert.ToInt32(c.Value);
                //                //DataGridViewComboBoxCell cPCode = (DataGridViewComboBoxCell)gvConsol.Rows[i].Cells[5];
                //                //projectcode = Convert.ToInt32(cPCode.Value);
                //                ed.WriteMessage("***IsSQL={0}\n",dr["IsSql"].ToString());
                //                if (Convert.ToBoolean(dr["IsSql"].ToString()))
                //                {
                //                    eConsol = Atend.Base.Equipment.EConsol.SelectByXCode(new Guid(
                //                       dr["XCode"].ToString()));
                //                    ACDP.eConsols.Add(eConsol);
                //                    ACDP.eConsolUseAccess.Add(false);
                //                    ACDP.eConsolCount.Add(Convert.ToInt32(dr["Count"].ToString()));
                //                    ed.WriteMessage("eConsolExistance={0}\n", Existance);
                //                    ACDP.eConsolExistance.Add(Convert.ToInt32(dr["IsExistance"].ToString()));
                //                    ACDP.eConsolProjectCode.Add(Convert.ToInt32(dr["ProjectCode"].ToString()));
                //                }
                //                else
                //                {
                //                    eConsol = Atend.Base.Equipment.EConsol.AccessSelectByCode(Convert.ToInt32(
                //                       dr["AccessCode"].ToString()));
                //                    ACDP.eConsols.Add(eConsol);
                //                    ACDP.eConsolUseAccess.Add(true);
                //                    ACDP.eConsolCount.Add(Convert.ToInt32(dr["Count"].ToString()));
                //                    ed.WriteMessage("eConsolExistance={0}\n", Existance);
                //                    ACDP.eConsolExistance.Add(Convert.ToInt32(dr["IsExistance"].ToString()));
                //                    ACDP.eConsolProjectCode.Add(Convert.ToInt32(dr["ProjectCode"].ToString()));
                //                }
                //            }
                //        }
                //        if (ACDP.UpdatePoleDataTip(objID, DelConsol, NodeCode))
                //        {
                //            AllowClose = true;
                //            return;
                //        }
                //        //ed.WriteMessage("Consol.Count={0}\n", Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsols.Count);

                //    }
                //    //if (ePole.Type == 3)
                //    //{
                //Type = 3;
                Atend.Global.Acad.DrawEquips.AcDrawPole ADP = new Atend.Global.Acad.DrawEquips.AcDrawPole();
                //Atend.Base.Acad.AcadGlobal.PoleData.eConsols.Clear();
                //Atend.Base.Acad.AcadGlobal.PoleData.eConsolCount.Clear();
                //Atend.Base.Acad.AcadGlobal.PoleData.eConsolExistance.Clear();
                //Atend.Base.Acad.AcadGlobal.PoleData.eConsols.Clear();
                //Atend.Base.Acad.AcadGlobal.PoleData.eConsolUseAccess.Clear();
                //Atend.Base.Acad.AcadGlobal.PoleData.eConsolProjectCode.Clear();

                //Atend.Base.Acad.AcadGlobal.PoleData.dPoleInfo.HalterCount = ePoletip.HalterCount;
                //Atend.Base.Acad.AcadGlobal.PoleData.dPoleInfo.HalterType = ePoletip.HalterID;
                //Atend.Base.Acad.AcadGlobal.PoleData.dPoleInfo.Factor = ePoletip.Factor;
                Atend.Base.Base.BEquipStatus status = Atend.Base.Base.BEquipStatus.SelectByCode(Convert.ToInt32(cboIsExist.SelectedValue.ToString()));
                ADP.Existance = status.ACode;

                if (cboProjCode.Items.Count == 0)
                {
                    ADP.ProjectCode = 0;
                }
                else
                {
                    ADP.ProjectCode = Convert.ToInt32(cboProjCode.SelectedValue);
                }
                ADP.UseAccess = useAccess;
                ADP.ePoleTip  = ePoletip;
                ADP.ePole     = ePole;


                Atend.Base.Base.BEquipStatus statusHalter = Atend.Base.Base.BEquipStatus.SelectByCode(Convert.ToInt32(cboHIsExistance.SelectedValue.ToString()));
                ADP.HalterExist = statusHalter.ACode;

                if (cboHProjectCode.Items.Count == 0)
                {
                    ADP.HalterProjectCode = 0;
                }
                else
                {
                    ADP.HalterProjectCode = Convert.ToInt32(cboHProjectCode.SelectedValue);
                }

                ADP.Height       = Convert.ToInt32(txtHeight.Text);
                ADP.eHalter      = halt;
                ADP.eHalterCount = Convert.ToInt32(txtHalterCount.Text);

                foreach (DataRow dr in dtgvPoleConsol.Rows)
                {
                    if (Convert.ToInt32(dr["Count"].ToString()) != 0)
                    {
                        //DataGridViewComboBoxCell c = (DataGridViewComboBoxCell)gvConsol.Rows[i].Cells[3];

                        //Existance = Convert.ToInt32(c.Value);
                        //DataGridViewComboBoxCell cPCode = (DataGridViewComboBoxCell)gvConsol.Rows[i].Cells[5];
                        //projectcode = Convert.ToInt32(cPCode.Value);
                        if (Convert.ToBoolean(dr["IsSql"].ToString()))
                        {
                            eConsol = Atend.Base.Equipment.EConsol.SelectByXCode(new Guid(
                                                                                     dr["XCode"].ToString()));
                            ADP.eConsols.Add(eConsol);
                            ADP.eConsolUseAccess.Add(false);
                            ADP.eConsolCount.Add(Convert.ToInt32(dr["Count"].ToString()));

                            Atend.Base.Base.BEquipStatus status2 = Atend.Base.Base.BEquipStatus.SelectByCode(Convert.ToInt32(dr["IsExistance"].ToString()));
                            ADP.eConsolExistance.Add(status2.ACode);

                            if (dr["ProjectCode"].ToString() == "")
                            {
                                ADP.eConsolProjectCode.Add(0);
                            }
                            else
                            {
                                ADP.eConsolProjectCode.Add(Convert.ToInt32(dr["ProjectCode"].ToString()));
                            }
                        }
                        else
                        {
                            eConsol = Atend.Base.Equipment.EConsol.AccessSelectByCode(Convert.ToInt32(
                                                                                          dr["AccessCode"].ToString()));
                            ADP.eConsols.Add(eConsol);
                            ADP.eConsolUseAccess.Add(true);
                            ADP.eConsolCount.Add(Convert.ToInt32(dr["Count"].ToString()));

                            Atend.Base.Base.BEquipStatus status2 = Atend.Base.Base.BEquipStatus.SelectByCode(Convert.ToInt32(dr["IsExistance"].ToString()));
                            ADP.eConsolExistance.Add(status2.ACode);

                            if (dr["ProjectCode"].ToString() == "")
                            {
                                ADP.eConsolProjectCode.Add(0);
                            }
                            else
                            {
                                ADP.eConsolProjectCode.Add(Convert.ToInt32(dr["ProjectCode"].ToString()));
                            }
                        }
                    }
                }
                if (ADP.UpdatePoleDataTip(objID, DelConsol, NodeCode))
                {
                    AllowClose = true;
                    return;
                }

                //}


                //}

                //AllowClose = true;
            }
            else
            {
                AllowClose = false;
            }
        }
コード例 #7
0
        //public static DataTable SelectAllAndMerge()
        //{

        //    DataTable AccTbl = AccessSelectAll();
        //    DataTable SqlTbl = SelectAll();

        //    DataTable MergeTbl = SqlTbl.Copy();
        //    DataColumn IsSql = new DataColumn("IsSql", typeof(bool));
        //    IsSql.DefaultValue = true;
        //    MergeTbl.Columns.Add(IsSql);

        //    foreach (DataRow Dr in AccTbl.Rows)
        //    {
        //        DataRow MergeRow = MergeTbl.NewRow();

        //        foreach (DataColumn Dc in AccTbl.Columns)
        //        {
        //            MergeRow[Dc.ColumnName] = Dr[Dc.ColumnName];
        //        }

        //        MergeRow["IsSql"] = false;
        //        MergeRow["XCode"] = new Guid("00000000-0000-0000-0000-000000000000");
        //        MergeTbl.Rows.Add(MergeRow);
        //    }


        //    return MergeTbl;

        //}

        //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//

        public static bool SentFromLocalToAccess(int Code, Guid XCode, int Type, OleDbTransaction _transaction, OleDbConnection _connection)
        {
            int NewCode = 0;

            try
            {
                switch ((Atend.Control.Enum.ProductType)Type)
                {
                case Atend.Control.Enum.ProductType.Consol:
                    Atend.Base.Equipment.EConsol SelectedConsol = Atend.Base.Equipment.EConsol.SelectByXCodeForDesign(XCode);
                    if (SelectedConsol.Code != -1)
                    {
                        if (SelectedConsol.AccessInsert(_transaction, _connection, true, false))
                        {
                            NewCode = SelectedConsol.Code;
                        }
                        else
                        {
                            throw new Exception("SelectedConsol.AccessInsert failed");
                        }
                    }
                    break;
                }

                //aval tazhiz bayad dar jadvale khodesh bere bad Code baraie ContainerCode ersal shavad
                if (Atend.Base.Equipment.EContainerPackage.SentFromLocalToAccess(XCode, Type, 1, _transaction, _connection))
                {
                    EProductPackage SubProducts = Atend.Base.Equipment.EProductPackage.SelectByCode(Code);
                    if (SubProducts.Code != -1)
                    {
                        Atend.Base.Equipment.EProductPackage SelectedSub = Atend.Base.Equipment.EProductPackage.SelectByCode(Code);
                        if (SelectedSub.Code != -1)
                        {
                            SelectedSub.productCode = NewCode;
                            if (!SelectedSub.AccessInsert(_transaction, _connection))
                            {
                                throw new Exception("SelectedSub.AccessInsert failed");
                            }
                        }
                        else
                        {
                            //error
                        }
                        //insert access here
                    }
                    else
                    {
                        //error
                    }
                }
                else
                {
                    //error
                }
            }
            catch (System.Exception ex)
            {
                return(false);
            }
            return(true);
        }
コード例 #8
0
        private void btnSelect_Click(object sender, EventArgs e)
        {
            Editor ed            = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;
            Guid   StartPoleCode = Guid.Empty;

            Autodesk.AutoCAD.DatabaseServices.ObjectId _BranchOi = Autodesk.AutoCAD.DatabaseServices.ObjectId.Null;
            int _vol = 0;

            //gClamp.Visible = false;
            //gConsol.Visible = false;
            BranchesData.Clear();

            this.Hide();

            PromptSelectionOptions pso = new PromptSelectionOptions();

            pso.MessageForAdding = "Select Branches Please";

            //PromptEntityOptions PEO = new PromptEntityOptions(": \n");
            //PromptEntityResult PER = ed.GetEntity(PEO);
            PromptSelectionResult PSR = ed.GetSelection(pso);

            SelectdEntities.Clear();
            if (PSR.Status == PromptStatus.OK)
            {
                SelectionSet ss = PSR.Value;
                ////////if (ss.Count > 0)
                ////////{
                ////////    Atend.Base.Acad.AT_INFO SelectedBranchInfo = Atend.Base.Acad.AT_INFO.SelectBySelectedObjectId(ss[0].ObjectId);
                ////////    if (SelectedBranchInfo.NodeType == (int)Atend.Control.Enum.ProductType.Conductor)
                ////////    {
                ////////        IsConductor = true;
                ////////    }
                ////////    else
                ////////    {
                ////////        IsConductor = false;
                ////////    }
                ////////}
                //MessageBox.Show("NUmber of selected entity : " + ss.Count.ToString());
                foreach (SelectedObject so in ss)
                {
                    ConsolsOIs.Clear();
                    ClampsOIs.Clear();
                    Atend.Base.Acad.AT_INFO BranchInfo = Atend.Base.Acad.AT_INFO.SelectBySelectedObjectId(so.ObjectId);
                    if (BranchInfo.NodeType == (int)Atend.Control.Enum.ProductType.Conductor)
                    {
                        //MessageBox.Show("it was conductor");
                        //gConsol.Visible = true;
                        Atend.Base.Acad.AT_SUB BranchSub = Atend.Base.Acad.AT_SUB.SelectBySelectedObjectId(so.ObjectId);
                        foreach (Autodesk.AutoCAD.DatabaseServices.ObjectId oi in BranchSub.SubIdCollection)
                        {
                            Atend.Base.Acad.AT_INFO ConsolInfo = Atend.Base.Acad.AT_INFO.SelectBySelectedObjectId(oi);
                            if (ConsolInfo.NodeType == (int)Atend.Control.Enum.ProductType.Consol)
                            {
                                Atend.Base.Equipment.EConsol ConsolData = Atend.Base.Equipment.EConsol.AccessSelectByCode(ConsolInfo.ProductCode);
                                if (ConsolData.ConsolType == 0 || ConsolData.ConsolType == 1)
                                {
                                    ConsolsOIs.Add(oi);
                                    Autodesk.AutoCAD.DatabaseServices.Line BranchEntity = Atend.Global.Acad.UAcad.GetEntityByObjectID(so.ObjectId) as Autodesk.AutoCAD.DatabaseServices.Line;
                                    if (BranchEntity != null)
                                    {
                                        if (Atend.Global.Acad.UAcad.CenterOfEntity(Atend.Global.Acad.UAcad.GetEntityByObjectID(oi)) == BranchEntity.StartPoint)
                                        {
                                            StartPoleCode = new Guid(ConsolInfo.ParentCode);
                                            _BranchOi     = so.ObjectId;
                                            _vol          = ConsolData.VoltageLevel;
                                        }
                                    }
                                }
                            }
                        }
                    }
                    else if (BranchInfo.NodeType == (int)Atend.Control.Enum.ProductType.SelfKeeper)
                    {
                        //MessageBox.Show("it was self keeper");
                        //gClamp.Visible = true;
                        Atend.Base.Acad.AT_SUB BranchSub = Atend.Base.Acad.AT_SUB.SelectBySelectedObjectId(so.ObjectId);
                        foreach (Autodesk.AutoCAD.DatabaseServices.ObjectId oi in BranchSub.SubIdCollection)
                        {
                            Atend.Base.Acad.AT_INFO ClampInfo = Atend.Base.Acad.AT_INFO.SelectBySelectedObjectId(oi);
                            if (ClampInfo.NodeType == (int)Atend.Control.Enum.ProductType.Kalamp)
                            {
                                Atend.Base.Equipment.EClamp ClampData = Atend.Base.Equipment.EClamp.AccessSelectByCode(ClampInfo.ProductCode);
                                if (ClampData.Type != 5)
                                {
                                    ClampsOIs.Add(oi);
                                    Autodesk.AutoCAD.DatabaseServices.Line BranchEntity = Atend.Global.Acad.UAcad.GetEntityByObjectID(so.ObjectId) as Autodesk.AutoCAD.DatabaseServices.Line;
                                    if (BranchEntity != null)
                                    {
                                        if (Atend.Global.Acad.UAcad.CenterOfEntity(Atend.Global.Acad.UAcad.GetEntityByObjectID(oi)) == BranchEntity.StartPoint)
                                        {
                                            StartPoleCode = new Guid(ClampInfo.ParentCode);
                                            _BranchOi     = so.ObjectId;
                                            _vol          = ClampData.VoltageLevel;
                                        }
                                    }
                                }
                            }
                        }
                    }

                    if (ConsolsOIs.Count == 2 || ClampsOIs.Count == 2)
                    {
                        //if (IsConductor)
                        //{
                        //    if (BranchInfo.NodeType == (int)Atend.Control.Enum.ProductType.Conductor)
                        //    {
                        SelectdEntities.Add(Atend.Global.Acad.UAcad.GetEntityByObjectID(so.ObjectId));


                        DataRow NewDataRow = BranchesData.NewRow();
                        NewDataRow["BranchCode"] = BranchInfo.NodeCode;
                        NewDataRow["BranchType"] = Convert.ToInt32(BranchInfo.NodeType);
                        NewDataRow["BranchOI"]   = _BranchOi.ToString().Substring(1, _BranchOi.ToString().Length - 2);
                        //NewDataRow["IsSelected"] = true;
                        NewDataRow["Type"]     = (Convert.ToInt32(BranchInfo.NodeType) == (int)Atend.Control.Enum.ProductType.Conductor ? "سیم" : "کابل خودنگهدار");
                        NewDataRow["Voltage"]  = _vol;
                        NewDataRow["PoleCode"] = StartPoleCode;
                        BranchesData.Rows.Add(NewDataRow);

                        //int NewRowIndex = gvBranches.Rows.Add();
                        //gvBranches.Rows[NewRowIndex].Cells["BranchCode"].Value = BranchInfo.ProductCode;
                        //gvBranches.Rows[NewRowIndex].Cells["BranchType"].Value = Convert.ToInt32(BranchInfo.NodeType);
                        //gvBranches.Rows[NewRowIndex].Cells["BranchOI"].Value = _BranchOi.ToString().Substring(1, _BranchOi.ToString().Length - 2);
                        //gvBranches.Rows[NewRowIndex].Cells["IsSelected"].Value = true;
                        //gvBranches.Rows[NewRowIndex].Cells["Type"].Value = (Convert.ToInt32(BranchInfo.NodeType) == (int)Atend.Control.Enum.ProductType.Conductor ? "سیم" : "کابل خودنگهدار");
                        //gvBranches.Rows[NewRowIndex].Cells["Voltage"].Value = _vol;


                        //    }
                        //    gConsol.Visible = true;
                        //    gClamp.Visible = false;
                        //}
                        //else
                        //{
                        //    if (BranchInfo.NodeType == (int)Atend.Control.Enum.ProductType.SelfKeeper)
                        //    {
                        //        SelectdEntities.Add(Atend.Global.Acad.UAcad.GetEntityByObjectID(so.ObjectId));
                        //    }
                        //    gConsol.Visible = false;
                        //    gClamp.Visible = true;
                        //}
                    }
                } //end for
            }     // end if (PSR.Status == PromptStatus.OK)
            this.Show();
            DataView dv = new DataView(BranchesData);

            dv.RowFilter          = "BranchType=" + (cboBranchType.SelectedIndex == 0 ? (int)Atend.Control.Enum.ProductType.Conductor : (int)Atend.Control.Enum.ProductType.SelfKeeper);
            gvBranches.DataSource = dv;
            //MessageBox.Show("count:" + SelectdEntities.Count.ToString());
        }
コード例 #9
0
        private void gvPoleTip_Click(object sender, EventArgs e)
        {
            Editor ed = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;

            //MessageBox.Show(dtMergePoleTip.Rows[gvPoleTip.CurrentRow.Index]["Height"].ToString());
            dtgvPoleConsol.Rows.Clear();
            DataTable dtExistance   = Atend.Base.Base.BEquipStatus.SelectAllX();
            DataTable dtProjectCode = Atend.Base.Base.BWorkOrder.SelectJoinOrder(Convert.ToInt32(cboIsExist.SelectedValue.ToString())); //Atend.Base.Base.BProjectCode.AccessSelectAll();

            Atend.Base.Equipment.EPoleTip poleTip = new Atend.Base.Equipment.EPoleTip();
            if (gvPoleTip.Rows.Count > 0)
            {
                if (Convert.ToBoolean(gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells["IsSql"].Value) == true)
                {
                    poleTip = Atend.Base.Equipment.EPoleTip.SelectByXCode(new Guid(gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells[0].Value.ToString()));
                    Atend.Base.Equipment.EHalter halter = Atend.Base.Equipment.EHalter.SelectByXCode(poleTip.HalterXID);
                    if (halter.Code != -1)
                    {
                        txtHalter.Text      = halter.Name;
                        txtHalterCount.Text = poleTip.HalterCount.ToString();
                    }
                    Byte[] byteBLOBData = new Byte[0];
                    byteBLOBData = (Byte[])(poleTip.Image);
                    MemoryStream stmBLOBData = new MemoryStream(byteBLOBData);
                    pictureBox1.Image = Image.FromStream(stmBLOBData);

                    for (int i = 0; i < Atend.Base.Equipment.EPoleTip.nodeKeysEPackageX.Count; i++)
                    {
                        //int count = Convert.ToInt32(Atend.Base.Equipment.EPoleTip.nodeCountEPackageX[i].ToString());
                        DataRow dr = dtgvPoleConsol.NewRow();
                        dr["XCode"] = Atend.Base.Equipment.EPoleTip.nodeKeysEPackageX[i];
                        Atend.Base.Equipment.EConsol Consol = Atend.Base.Equipment.EConsol.SelectByXCode(new Guid(Atend.Base.Equipment.EPoleTip.nodeKeysEPackageX[i].ToString()));
                        dr["Name"]  = Consol.Name;
                        dr["Count"] = Atend.Base.Equipment.EPoleTip.nodeCountEPackageX[i].ToString();

                        dr["IsExistance"] = cboIsExist.SelectedValue.ToString();
                        if (cboProjCode.Items.Count > 0)
                        {
                            dr["ProjectCode"] = cboProjCode.SelectedValue.ToString();
                        }
                        else
                        {
                            dr["ProjectCode"] = dtWorkOrders.Rows[0]["ACode"];
                        }
                        //dr["IsExistance"] = Convert.ToInt32(dtExistance.Rows[4]["Code"]);
                        //dr["ProjectCode"] = Convert.ToInt32(dtProjectCode.Rows[0]["Code"]);
                        dr["Code"] = Guid.Empty;
                        dtgvPoleConsol.Rows.Add(dr);
                    }
                }
                else
                {
                    //ed.WriteMessage("Code={0}\n", gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells[1].Value.ToString());
                    poleTip = Atend.Base.Equipment.EPoleTip.AccessSelectByCode(Convert.ToInt32(gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells[1].Value.ToString()));
                    Atend.Base.Equipment.EHalter halter = Atend.Base.Equipment.EHalter.AccessSelectByCode(poleTip.HalterID);
                    if (halter.Code != -1)
                    {
                        txtHalter.Text      = halter.Name;
                        txtHalterCount.Text = poleTip.HalterCount.ToString();
                    }
                    Byte[] byteBLOBData = new Byte[0];
                    byteBLOBData = (Byte[])(poleTip.Image);
                    MemoryStream stmBLOBData = new MemoryStream(byteBLOBData);
                    pictureBox1.Image = Image.FromStream(stmBLOBData);
                    for (int i = 0; i < Atend.Base.Equipment.EPoleTip.nodeKeysEPackage.Count; i++)
                    {
                        //int count = Convert.ToInt32(Atend.Base.Equipment.EPoleTip.nodeCountEPackage[i].ToString());
                        DataRow dr = dtgvPoleConsol.NewRow();
                        dr["Code"] = Atend.Base.Equipment.EPoleTip.nodeKeysEPackage[i];
                        string name = "";
                        //ed.WriteMessage("EPoleTip.nodeKeysEPackage[i]={0}\n", Atend.Base.Equipment.EPoleTip.nodeKeysEPackage[i]);
                        Atend.Base.Equipment.EConsol Consol = Atend.Base.Equipment.EConsol.AccessSelectByCode(Convert.ToInt32(Atend.Base.Equipment.EPoleTip.nodeKeysEPackage[i].ToString()));
                        dr["Name"]  = Consol.Name;
                        dr["Count"] = Atend.Base.Equipment.EPoleTip.nodeCountEPackage[i].ToString();

                        dr["IsExistance"] = cboIsExist.SelectedValue.ToString();
                        if (cboProjCode.Items.Count > 0)
                        {
                            dr["ProjectCode"] = cboProjCode.SelectedValue.ToString();
                        }
                        else
                        {
                            dr["ProjectCode"] = dtWorkOrders.Rows[0]["ACode"];
                        }
                        //dr["IsExistance"] = Convert.ToInt32(dtExistance.Rows[4]["Code"]);
                        //dr["ProjectCode"] = Convert.ToInt32(dtProjectCode.Rows[0]["Code"]);
                        //dr["Code"] = Guid.Empty;
                        dtgvPoleConsol.Rows.Add(dr);
                    }
                }
            }
        }
コード例 #10
0
        private void btnOk_Click(object sender, EventArgs e)
        {
            Editor ed = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;

            if (Validation())
            {
                //Atend.Base.Base.BEquipStatus statusaaaa = Atend.Base.Base.BEquipStatus.SelectByCode(Convert.ToInt32(cboIsExist.SelectedValue));
                gvPoleTip.Focus();
                bool useAccess   = false;
                int  projectcode = 0;
                Atend.Base.Equipment.EConsol eConsol = new Atend.Base.Equipment.EConsol();
                int Existance = 0;
                Atend.Base.Equipment.EPole    ePole    = new Atend.Base.Equipment.EPole();
                Atend.Base.Equipment.EPoleTip ePoletip = new Atend.Base.Equipment.EPoleTip();

                Atend.Base.Equipment.EHalter Halt = new Atend.Base.Equipment.EHalter();


                if (Convert.ToBoolean(gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells[2].Value) == true)
                {
                    ePoletip  = Atend.Base.Equipment.EPoleTip.SelectByXCode(new Guid(gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells[0].Value.ToString()));
                    ePole     = Atend.Base.Equipment.EPole.SelectByXCode(ePoletip.PoleXCode);
                    useAccess = false;
                    Halt      = Atend.Base.Equipment.EHalter.SelectByXCode(ePoletip.HalterXID);
                }
                else
                {
                    //ed.WriteMessage("Access\n");
                    ePoletip  = Atend.Base.Equipment.EPoleTip.AccessSelectByCode(Convert.ToInt32(gvPoleTip.Rows[gvPoleTip.CurrentRow.Index].Cells[1].Value.ToString()));
                    ePole     = Atend.Base.Equipment.EPole.AccessSelectByCode(ePoletip.PoleCode);
                    useAccess = true;
                    Halt      = Atend.Base.Equipment.EHalter.AccessSelectByCode(ePoletip.HalterID);
                }



                if (ePole.Shape == 0)
                {
                    shape = 0;

                    Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsols.Clear();
                    Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolCount.Clear();
                    Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolExistance.Clear();
                    Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsols.Clear();
                    Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolUseAccess.Clear();
                    Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolProjectCode.Clear();

                    Atend.Base.Acad.AcadGlobal.CirclePoleData.dPoleInfo.HalterCount = ePoletip.HalterCount;
                    //Atend.Base.Acad.AcadGlobal.CirclePoleData.dPoleInfo.HalterType = ePoletip.HalterID;
                    Atend.Base.Acad.AcadGlobal.CirclePoleData.dPoleInfo.Factor = ePoletip.Factor;
                    Atend.Base.Acad.AcadGlobal.CirclePoleData.UseAccess        = useAccess;

                    Atend.Base.Base.BEquipStatus status = Atend.Base.Base.BEquipStatus.SelectByCode(Convert.ToInt32(cboIsExist.SelectedValue));
                    Atend.Base.Acad.AcadGlobal.CirclePoleData.Existance = status.ACode;
                    if (cboProjCode.Items.Count == 0)
                    {
                        Atend.Base.Acad.AcadGlobal.CirclePoleData.ProjectCode = 0;
                    }
                    else
                    {
                        Atend.Base.Acad.AcadGlobal.CirclePoleData.ProjectCode = Convert.ToInt32(cboProjCode.SelectedValue);
                    }

                    Atend.Base.Acad.AcadGlobal.CirclePoleData.ePole    = ePole;
                    Atend.Base.Acad.AcadGlobal.CirclePoleData.ePoleTip = ePoletip;
                    Atend.Base.Acad.AcadGlobal.CirclePoleData.Height   = Convert.ToDouble(txtHeight.Text);

                    Atend.Base.Base.BEquipStatus statusHalteer = Atend.Base.Base.BEquipStatus.SelectByCode(Convert.ToInt32(cboHIsExist.SelectedValue));
                    Atend.Base.Acad.AcadGlobal.CirclePoleData.HalterExistance = statusHalteer.ACode;
                    if (cboHProjectCode.Items.Count == 0)
                    {
                        Atend.Base.Acad.AcadGlobal.CirclePoleData.HalterProjectCode = 0;
                    }
                    else
                    {
                        Atend.Base.Acad.AcadGlobal.CirclePoleData.HalterProjectCode = Convert.ToInt32(cboHProjectCode.SelectedValue);
                    }

                    Atend.Base.Acad.AcadGlobal.CirclePoleData.eHalter      = Halt;
                    Atend.Base.Acad.AcadGlobal.CirclePoleData.eHalterCount = ePoletip.HalterCount;

                    //for (int i = 0; i < gvConsol.Rows.Count; i++)
                    foreach (DataRow dr in dtgvPoleConsol.Rows)
                    {
                        if (Convert.ToInt32(dr["Count"].ToString()) != 0)
                        {
                            //DataGridViewComboBoxCell c = (DataGridViewComboBoxCell)gvConsol.Rows[i].Cells[3];
                            Atend.Base.Base.BEquipStatus statusPole = Atend.Base.Base.BEquipStatus.SelectByCode(Convert.ToInt32(dr["IsExistance"].ToString()));
                            Existance = statusPole.ACode;
                            if (dr["ProjectCode"].ToString() == "")
                            {
                                projectcode = 0;
                            }
                            else
                            {
                                projectcode = Convert.ToInt32(dr["ProjectCode"].ToString());
                            }

                            //DataGridViewComboBoxCell cPCode = (DataGridViewComboBoxCell)gvConsol.Rows[i].Cells[5];
                            if (!useAccess)
                            {
                                eConsol = Atend.Base.Equipment.EConsol.SelectByXCode(new Guid(dr["XCode"].ToString()));
                                Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsols.Add(eConsol);
                                Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolUseAccess.Add(false);
                                Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolCount.Add(Convert.ToInt32(dr["Count"].ToString()));
                                Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolExistance.Add(Existance);
                                Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolProjectCode.Add(projectcode);
                            }
                            else
                            {
                                eConsol = Atend.Base.Equipment.EConsol.AccessSelectByCode(Convert.ToInt32(dr["Code"].ToString()));
                                Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsols.Add(eConsol);
                                Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolUseAccess.Add(true);
                                Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolCount.Add(Convert.ToInt32(dr["Count"].ToString()));
                                Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolExistance.Add(Existance);
                                Atend.Base.Acad.AcadGlobal.CirclePoleData.eConsolProjectCode.Add(projectcode);
                            }
                        }
                    }
                }
                else
                {
                    shape = 1;
                    //ed.WriteMessage("*******EPOLe.Type={0}\n", ePole.Type);

                    if (ePole.Type == 2)
                    {
                        //ed.WriteMessage("Type=2\n");
                        Type = 2;
                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsols.Clear();
                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolCount.Clear();
                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolExistance.Clear();
                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsols.Clear();
                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolUseAccess.Clear();
                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolProjectCode.Clear();

                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.dPoleInfo.HalterCount = ePoletip.HalterCount;
                        //Atend.Base.Acad.AcadGlobal.PolygonPoleData.dPoleInfo.HalterType = ePoletip.HalterID;
                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.dPoleInfo.Factor = ePoletip.Factor;

                        Atend.Base.Base.BEquipStatus status = Atend.Base.Base.BEquipStatus.SelectByCode(Convert.ToInt32(cboIsExist.SelectedValue));
                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.Existance = status.ACode;
                        if (cboProjCode.Items.Count == 0)
                        {
                            Atend.Base.Acad.AcadGlobal.PolygonPoleData.ProjectCode = 0;
                        }
                        else
                        {
                            Atend.Base.Acad.AcadGlobal.PolygonPoleData.ProjectCode = Convert.ToInt32(cboProjCode.SelectedValue);
                        }

                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.UseAccess = useAccess;
                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.Height    = Convert.ToDouble(txtHeight.Text);

                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.ePole    = ePole;
                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.ePoleTip = ePoletip;

                        Atend.Base.Base.BEquipStatus statusHalteer = Atend.Base.Base.BEquipStatus.SelectByCode(Convert.ToInt32(cboHIsExist.SelectedValue));
                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.HalterExistance = statusHalteer.ACode;
                        if (cboHProjectCode.Items.Count == 0)
                        {
                            Atend.Base.Acad.AcadGlobal.PolygonPoleData.HalterProjectCode = 0;
                        }
                        else
                        {
                            Atend.Base.Acad.AcadGlobal.PolygonPoleData.HalterProjectCode = Convert.ToInt32(cboHProjectCode.SelectedValue);
                        }

                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.eHalter      = Halt;
                        Atend.Base.Acad.AcadGlobal.PolygonPoleData.eHalterCount = ePoletip.HalterCount;

                        //for (int i = 0; i < gvConsol.Rows.Count; i++)
                        foreach (DataRow dr in dtgvPoleConsol.Rows)
                        {
                            if (Convert.ToInt32(dr["Count"].ToString()) != 0)
                            {
                                //DataGridViewComboBoxCell c = (DataGridViewComboBoxCell)gvConsol.Rows[i].Cells[3];

                                Atend.Base.Base.BEquipStatus statusPole = Atend.Base.Base.BEquipStatus.SelectByCode(Convert.ToInt32(dr["IsExistance"].ToString()));
                                Existance = statusPole.ACode;
                                if (dr["ProjectCode"].ToString() == "")
                                {
                                    projectcode = 0;
                                }
                                else
                                {
                                    projectcode = Convert.ToInt32(dr["ProjectCode"].ToString());
                                }

                                //DataGridViewComboBoxCell cPCode = (DataGridViewComboBoxCell)gvConsol.Rows[i].Cells[5];

                                if (!useAccess)
                                {
                                    eConsol = Atend.Base.Equipment.EConsol.SelectByXCode(new Guid(
                                                                                             dr["XCode"].ToString()));
                                    Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsols.Add(eConsol);
                                    Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolUseAccess.Add(false);
                                    Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolCount.Add(Convert.ToInt32(dr["Count"].ToString()));
                                    //ed.WriteMessage("eConsolExistance={0}\n", Existance);
                                    Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolExistance.Add(Existance);
                                    Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolProjectCode.Add(projectcode);
                                }
                                else
                                {
                                    eConsol = Atend.Base.Equipment.EConsol.AccessSelectByCode(Convert.ToInt32(
                                                                                                  dr["Code"].ToString()));
                                    Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsols.Add(eConsol);
                                    Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolUseAccess.Add(true);
                                    Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolCount.Add(Convert.ToInt32(dr["Count"].ToString()));
                                    //ed.WriteMessage("eConsolExistance={0}\n", Existance);
                                    Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolExistance.Add(Existance);
                                    Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsolProjectCode.Add(projectcode);
                                }
                            }
                        }
                        //ed.WriteMessage("Consol.Count={0}\n", Atend.Base.Acad.AcadGlobal.PolygonPoleData.eConsols.Count);
                    }
                    else   //if (ePole.Type == 3)
                    {
                        Type = 3;
                        //ed.WriteMessage("Type=3\n");
                        Atend.Base.Acad.AcadGlobal.PoleData.eConsols.Clear();
                        Atend.Base.Acad.AcadGlobal.PoleData.eConsolCount.Clear();
                        Atend.Base.Acad.AcadGlobal.PoleData.eConsolExistance.Clear();
                        Atend.Base.Acad.AcadGlobal.PoleData.eConsols.Clear();
                        Atend.Base.Acad.AcadGlobal.PoleData.eConsolUseAccess.Clear();
                        Atend.Base.Acad.AcadGlobal.PoleData.eConsolProjectCode.Clear();

                        Atend.Base.Acad.AcadGlobal.PoleData.dPoleInfo.HalterCount = ePoletip.HalterCount;
                        //Atend.Base.Acad.AcadGlobal.PoleData.dPoleInfo.HalterType = ePoletip.HalterID;
                        Atend.Base.Acad.AcadGlobal.PoleData.dPoleInfo.Factor = ePoletip.Factor;

                        Atend.Base.Base.BEquipStatus status = Atend.Base.Base.BEquipStatus.SelectByCode(Convert.ToInt32(cboIsExist.SelectedValue));
                        Atend.Base.Acad.AcadGlobal.PoleData.Existance = status.ACode;
                        if (cboProjCode.Items.Count == 0)
                        {
                            Atend.Base.Acad.AcadGlobal.PoleData.ProjectCode = 0;
                        }
                        else
                        {
                            Atend.Base.Acad.AcadGlobal.PoleData.ProjectCode = Convert.ToInt32(cboProjCode.SelectedValue);
                        }

                        Atend.Base.Acad.AcadGlobal.PoleData.UseAccess = useAccess;
                        Atend.Base.Acad.AcadGlobal.PoleData.ePoleTip  = ePoletip;
                        Atend.Base.Acad.AcadGlobal.PoleData.ePole     = ePole;
                        Atend.Base.Acad.AcadGlobal.PoleData.Height    = Convert.ToDouble(txtHeight.Text);

                        Atend.Base.Base.BEquipStatus statusHalteer = Atend.Base.Base.BEquipStatus.SelectByCode(Convert.ToInt32(cboHIsExist.SelectedValue));
                        Atend.Base.Acad.AcadGlobal.PoleData.HalterExistance = statusHalteer.ACode;
                        if (cboHProjectCode.Items.Count == 0)
                        {
                            Atend.Base.Acad.AcadGlobal.PoleData.HalterProjectCode = 0;
                        }
                        else
                        {
                            Atend.Base.Acad.AcadGlobal.PoleData.HalterProjectCode = Convert.ToInt32(cboHProjectCode.SelectedValue);
                        }

                        Atend.Base.Acad.AcadGlobal.PoleData.eHalter      = Halt;
                        Atend.Base.Acad.AcadGlobal.PoleData.eHalterCount = ePoletip.HalterCount;

                        //for (int i = 0; i < gvConsol.Rows.Count; i++)
                        foreach (DataRow dr in dtgvPoleConsol.Rows)
                        {
                            if (Convert.ToInt32(dr["Count"].ToString()) != 0)
                            {
                                //DataGridViewComboBoxCell c = (DataGridViewComboBoxCell)gvConsol.Rows[i].Cells[3];
                                Atend.Base.Base.BEquipStatus statusPole = Atend.Base.Base.BEquipStatus.SelectByCode(Convert.ToInt32(dr["IsExistance"].ToString()));
                                Existance = statusPole.ACode;
                                if (dr["ProjectCode"].ToString() == "")
                                {
                                    projectcode = 0;
                                }
                                else
                                {
                                    projectcode = Convert.ToInt32(dr["ProjectCode"].ToString());
                                }

                                //DataGridViewComboBoxCell cPCode = (DataGridViewComboBoxCell)gvConsol.Rows[i].Cells[5];
                                if (!useAccess)
                                {
                                    eConsol = Atend.Base.Equipment.EConsol.SelectByXCode(new Guid(dr["XCode"].ToString()));
                                    Atend.Base.Acad.AcadGlobal.PoleData.eConsols.Add(eConsol);
                                    Atend.Base.Acad.AcadGlobal.PoleData.eConsolUseAccess.Add(false);
                                    Atend.Base.Acad.AcadGlobal.PoleData.eConsolCount.Add(Convert.ToInt32(dr["Count"].ToString()));
                                    //ed.WriteMessage("eConsolExistance={0}\n", Existance);
                                    Atend.Base.Acad.AcadGlobal.PoleData.eConsolExistance.Add(Existance);
                                    Atend.Base.Acad.AcadGlobal.PoleData.eConsolProjectCode.Add(projectcode);
                                }
                                else
                                {
                                    eConsol = Atend.Base.Equipment.EConsol.AccessSelectByCode(Convert.ToInt32(dr["Code"].ToString()));
                                    Atend.Base.Acad.AcadGlobal.PoleData.eConsols.Add(eConsol);
                                    Atend.Base.Acad.AcadGlobal.PoleData.eConsolUseAccess.Add(true);
                                    Atend.Base.Acad.AcadGlobal.PoleData.eConsolCount.Add(Convert.ToInt32(dr["Count"].ToString()));
                                    Atend.Base.Acad.AcadGlobal.PoleData.eConsolExistance.Add(Existance);
                                    Atend.Base.Acad.AcadGlobal.PoleData.eConsolProjectCode.Add(projectcode);
                                }
                            }
                        }
                        //ed.WriteMessage("Consol.Count={0}\n", Atend.Base.Acad.AcadGlobal.PoleData.eConsols.Count);
                    }
                }

                Atend.Control.Common.IsExist = Convert.ToInt32(cboIsExist.SelectedValue.ToString());
                if (cboProjCode.Items.Count != 0)
                {
                    Atend.Control.Common.ProjectCode = Convert.ToInt32(cboProjCode.SelectedValue.ToString());
                }
                else
                {
                    Atend.Control.Common.ProjectCode = -1;
                }

                AllowClose = true;
            }
            else
            {
                AllowClose = false;
            }
        }
コード例 #11
0
        //***************WithHalter**************
        public System.Data.DataTable CalcHalter(System.Data.DataTable dtForce, double X, double Y, double SaftyFactor, ArrayList _M, ArrayList _Count, int MaxHalterCount, out bool result, double SaftyFactorOburi)
        {
            System.Data.DataTable dtResult = new System.Data.DataTable();
            dtResult = dtForce.Copy();
            System.Data.DataColumn dcPower       = new System.Data.DataColumn("Power");
            System.Data.DataColumn dcCount       = new System.Data.DataColumn("Count");
            System.Data.DataColumn dcHalterPower = new System.Data.DataColumn("HalterPower");
            System.Data.DataColumn dcHalterCount = new System.Data.DataColumn("HalterCount");
            System.Data.DataColumn dcName        = new System.Data.DataColumn("Name");
            System.Data.DataColumn dcHalterXCode = new System.Data.DataColumn("HalterXCode");

            dtResult.Columns.Add(dcPower);
            dtResult.Columns.Add(dcCount);
            dtResult.Columns.Add(dcHalterPower);
            dtResult.Columns.Add(dcHalterCount);
            dtResult.Columns.Add(dcName);
            dtResult.Columns.Add(dcHalterXCode);


            result = true;
            bool chkEntehai  = false;
            bool chkKesheshi = false;
            bool chkOburi    = false;
            bool chkDP       = false;
            int  Polecount   = 0;

            double Distance = 0;
            double Depth    = 0;
            double h1       = 0;
            double h2       = 0;
            double h3       = 0;
            double T        = 0;
            double F        = 0;
            double M        = 0;

            //const double constValue = 60;
            System.Data.DataTable dtHalter = Atend.Base.Equipment.EHalter.SelectAllX();
            try
            {
                foreach (DataRow dr in dtResult.Rows)
                {
                    chkEntehai  = false;
                    chkKesheshi = false;
                    chkOburi    = false;
                    chkDP       = false;
                    Atend.Base.Design.DPackage dPack = Atend.Base.Design.DPackage.AccessSelectByNodeCode(new Guid(dr["DcPoleGuid"].ToString()));
                    Atend.Base.Equipment.EPole pole  = Atend.Base.Equipment.EPole.AccessSelectByCode(dPack.ProductCode);

                    System.Data.DataTable dtConsol = Atend.Base.Design.DPackage.AccessSelectByParentCodeAndType(dPack.Code, Convert.ToInt32(Atend.Control.Enum.ProductType.Consol));
                    System.Data.DataTable dtCalamp = Atend.Base.Design.DPackage.AccessSelectByParentCodeAndType(dPack.Code, Convert.ToInt32(Atend.Control.Enum.ProductType.Kalamp));

                    if (dtConsol.Rows.Count > 0)
                    {
                        foreach (DataRow drConsol in dtConsol.Rows)
                        {
                            Atend.Base.Equipment.EConsol Consol = Atend.Base.Equipment.EConsol.AccessSelectByCode(Convert.ToInt32(drConsol["ProductCode"].ToString()));

                            if (Convert.ToByte(Consol.ConsolType) == Convert.ToByte(ConsolType.Entehai))
                            {
                                chkEntehai = true;

                                ed.WriteMessage("Entehai\n");
                            }
                            if (Convert.ToByte(Consol.ConsolType) == Convert.ToByte(ConsolType.Kesheshi))
                            {
                                chkKesheshi = true;
                                ed.WriteMessage("Kesheshi\n");
                            }

                            if (Convert.ToByte(Consol.ConsolType) == Convert.ToByte(ConsolType.Oburi))
                            {
                                chkOburi = true;
                                ed.WriteMessage("Oburi\n");
                            }
                            if (Convert.ToByte(Consol.ConsolType) == Convert.ToByte(ConsolType.DP))
                            {
                                chkDP = true;
                                ed.WriteMessage("DP\n");
                            }
                            Distance = Consol.DistanceCrossArm;
                            ed.WriteMessage("DistanceCrossArm={0}\n", Consol.DistanceCrossArm);
                        }
                    }

                    foreach (DataRow drCalamp in dtCalamp.Rows)
                    {
                        Atend.Base.Equipment.EClamp Calamp = Atend.Base.Equipment.EClamp.AccessSelectByCode(Convert.ToInt32(drCalamp["ProductCode"].ToString()));
                        switch (Calamp.Type)
                        {
                        case 1:
                        case 2:
                        case 3:
                        case 4:
                        case 6:

                            chkEntehai = true;
                            break;

                        case 5:
                        {
                            chkOburi = true;
                            break;
                        }
                            //default :
                            //    {
                            //        chkEntehai = true;
                            //    }
                        }


                        Distance = Calamp.DistanceSupport;
                    }



                    if (chkEntehai)
                    {
                        M         = Convert.ToDouble(_M[0].ToString()) * Convert.ToDouble(_Count[0].ToString());
                        Polecount = Convert.ToInt32(_Count[0].ToString());
                        M        *= SaftyFactor;
                    }
                    else if (chkKesheshi)
                    {
                        M         = Convert.ToDouble(_M[2].ToString()) * Convert.ToDouble(_Count[2].ToString());
                        Polecount = Convert.ToInt32(_Count[2].ToString());
                        M        *= SaftyFactor;
                    }
                    else if (chkOburi)
                    {
                        ed.WriteMessage("_M[1]={0}\n", _M[1].ToString());
                        M         = Convert.ToDouble(_M[1].ToString()) * Convert.ToDouble(_Count[1].ToString());
                        Polecount = Convert.ToInt32(_Count[1].ToString());
                        M        *= SaftyFactorOburi;
                    }
                    else if (chkDP)
                    {
                        M         = Convert.ToDouble(_M[3].ToString()) * Convert.ToDouble(_Count[3].ToString());
                        Polecount = Convert.ToInt32(_Count[3].ToString());
                        M        *= SaftyFactorOburi;
                    }
                    //ed.WriteMessage("M={0},chk={1}\n",M,chkOburi);
                    //M *= SaftyFactor;
                    //ed.WriteMessage("M saftyFactor={0}\n",M);
                    ed.WriteMessage("M={0}\n", M);
                    F = GetForceOnPole(dr);
                    ed.WriteMessage("F={0}\n", F);
                    Depth = .1 * pole.Height + .6;
                    h1    = pole.Height - (Depth + Distance);
                    ed.WriteMessage("h1={0}\n", h1.ToString());
                    h2 = Y;
                    ed.WriteMessage("h2={0}\n", h2.ToString());
                    h3 = X;
                    ed.WriteMessage("h3={0},Power={1}\n", h3.ToString(), pole.Power);

                    //DataRow drHalter = dtTable.NewRow();
                    T = (((F * h1) / (h1)) - M) * ((h1) / (h2 * Math.Sin(Math.Atan(h3 / h2))));

                    bool    Answer   = true;
                    DataRow drResult = GetPowerPoleAndHalter(T, M, dr, dtHalter, 0, Polecount, MaxHalterCount, out Answer);
                    if (Answer)
                    {
                        ed.WriteMessage("***HalterPower={0}\n", drResult["HalterPower"].ToString());
                        dr["HalterPower"] = drResult["HalterPower"].ToString();
                        dr["HalterCount"] = drResult["HalterCount"].ToString();
                        dr["Power"]       = Convert.ToDouble(drResult["Power"].ToString()) / SaftyFactor;
                        dr["Count"]       = drResult["Count"].ToString();
                        dr["HalterXCode"] = drResult["HalterXCode"].ToString();
                    }
                    else
                    {
                        result = false;
                    }
                    //dtTable.Rows.Add(drHalter);
                }
            }
            catch (System.Exception ex)
            {
                ed.WriteMessage("ERROOOOOOOOOOOOOOOOR:={0}\n", ex.Message);
            }

            return(dtResult);
        }
コード例 #12
0
        private DataRow GetPower(double MaxForce, System.Data.DataTable dtPower, DataRow drPoleFoece, double SaftyFactor, double SaftyFactorOburi)
        {
            ed.WriteMessage("dtPower.Count={0}\n", dtPower.Rows.Count);
            int  i        = 0;
            bool Continue = true;

            bool   chkEntehai  = false;
            bool   chkKesheshi = false;
            bool   chkOburi    = false;
            bool   chkDP       = false;
            double SFactor     = 0;

            Atend.Base.Design.DPackage dPack    = Atend.Base.Design.DPackage.AccessSelectByNodeCode(new Guid(drPoleFoece["DcPoleGuid"].ToString()));
            System.Data.DataTable      dtConsol = Atend.Base.Design.DPackage.AccessSelectByParentCodeAndType(dPack.Code, Convert.ToInt32(Atend.Control.Enum.ProductType.Consol));
            System.Data.DataTable      dtCalamp = Atend.Base.Design.DPackage.AccessSelectByParentCodeAndType(dPack.Code, Convert.ToInt32(Atend.Control.Enum.ProductType.Kalamp));

            foreach (DataRow drConsol in dtConsol.Rows)
            {
                Atend.Base.Equipment.EConsol Consol = Atend.Base.Equipment.EConsol.AccessSelectByCode(Convert.ToInt32(dtConsol.Rows[0]["ProductCode"].ToString()));

                if (Convert.ToByte(Consol.ConsolType) == Convert.ToByte(ConsolType.Entehai))
                {
                    chkEntehai = true;

                    ed.WriteMessage("Entehai\n");
                }
                if (Convert.ToByte(Consol.ConsolType) == Convert.ToByte(ConsolType.Kesheshi))
                {
                    chkKesheshi = true;
                    ed.WriteMessage("Kesheshi\n");
                }

                if (Convert.ToByte(Consol.ConsolType) == Convert.ToByte(ConsolType.Oburi))
                {
                    chkOburi = true;
                    ed.WriteMessage("Oburi\n");
                }
                if (Convert.ToByte(Consol.ConsolType) == Convert.ToByte(ConsolType.DP))
                {
                    chkDP = true;
                    ed.WriteMessage("DP\n");
                }
                //Distance = Consol.DistanceCrossArm;
                ed.WriteMessage("DistanceCrossArm={0}\n", Consol.DistanceCrossArm);
            }
            foreach (DataRow drCalamp in dtCalamp.Rows)
            {
                Atend.Base.Equipment.EClamp Calamp = Atend.Base.Equipment.EClamp.AccessSelectByCode(Convert.ToInt32(drCalamp["ProductCode"].ToString()));
                switch (Calamp.Type)
                {
                case 1:
                case 2:
                case 3:
                case 4:
                case 6:

                    chkEntehai = true;
                    break;

                case 5:
                {
                    chkOburi = true;
                    break;
                }
                    //default :
                    //    {
                    //        chkEntehai = true;
                    //    }
                }


                //Distance = Calamp.DistanceSupport;
            }


            if (chkEntehai || chkKesheshi)
            {
                SFactor = SaftyFactor;
            }
            else if (chkOburi || chkDP)
            {
                SFactor = SaftyFactorOburi;
            }
            ed.WriteMessage("*********SaftyFactor={0}\n", SFactor);
            while (Continue)
            {
                i++;
                foreach (DataRow dr in dtPower.Rows)
                {
                    if (MaxForce <= (i * Convert.ToDouble(dr["Power"].ToString()) * SFactor))
                    {
                        drPoleFoece["DcPower"] = dr["Power"].ToString();
                        drPoleFoece["DcCount"] = i.ToString();
                        Continue = false;
                        return(drPoleFoece);
                    }
                }
            }


            return(drPoleFoece);
        }
コード例 #13
0
ファイル: frmTest.cs プロジェクト: ParisaMousavi/ATEND
        //private string FindNameOperation(Guid Code)
        //{
        //    string DBName = string.Empty;
        //    Atend.Base.Equipment.EOperation eOP = Atend.Base.Equipment.EOperation.SelectByCode(Code);
        //    Atend.Base.Base.BProduct BP = Atend.Base.Base.BProduct.Select_ById(eOP.ProductID);

        //    DBName = BP.Name;
        //    PID = BP.Code;
        //    return DBName;
        //}

        private string FindNameAndProductCode(int Type, int ProductCode)
        {
            //Atend.Base.Equipment.EPole. p = new Atend.Base.Equipment.EPole();

            string DBName = string.Empty;

            switch ((Atend.Control.Enum.ProductType)Type)
            {
            case Atend.Control.Enum.ProductType.Pole:
                Atend.Base.Equipment.EPole ePole = Atend.Base.Equipment.EPole.SelectByCode(ProductCode);
                DBName = ePole.Name;
                PID    = ePole.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.Conductor:
                Atend.Base.Equipment.EConductor eConductor = Atend.Base.Equipment.EConductor.SelectByCode(ProductCode);
                DBName = eConductor.Name;
                PID    = eConductor.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.AuoKey3p:
                Atend.Base.Equipment.EAutoKey_3p eAuto = Atend.Base.Equipment.EAutoKey_3p.SelectByCode(ProductCode);
                DBName = eAuto.Name;
                PID    = eAuto.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.Breaker:
                Atend.Base.Equipment.EBreaker eBreaker = Atend.Base.Equipment.EBreaker.SelectByCode(ProductCode);
                DBName = eBreaker.Name;
                PID    = eBreaker.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.Bus:
                Atend.Base.Equipment.EBus eBus = Atend.Base.Equipment.EBus.SelectByCode(ProductCode);
                DBName = eBus.Name;
                PID    = eBus.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.CatOut:
                Atend.Base.Equipment.ECatOut eCatOut = Atend.Base.Equipment.ECatOut.SelectByCode(ProductCode);
                DBName = eCatOut.Name;
                PID    = eCatOut.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.CT:
                Atend.Base.Equipment.ECT eCT = Atend.Base.Equipment.ECT.SelectByCode(ProductCode);
                DBName = eCT.Name;
                PID    = eCT.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.DB:
                Atend.Base.Equipment.EDB eDB = Atend.Base.Equipment.EDB.SelectByCode(ProductCode);
                DBName = eDB.Name;
                PID    = eDB.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.HeaderCabel:
                Atend.Base.Equipment.EHeaderCabel eHeader = Atend.Base.Equipment.EHeaderCabel.SelectByCode(ProductCode);
                DBName = eHeader.Name;
                PID    = eHeader.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.Disconnector:
                Atend.Base.Equipment.EDisconnector eDC = Atend.Base.Equipment.EDisconnector.SelectByCode(ProductCode);
                DBName = eDC.Name;
                PID    = eDC.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.Rod:
                Atend.Base.Equipment.ERod eRod = Atend.Base.Equipment.ERod.SelectByCode(ProductCode);
                DBName = eRod.Name;
                PID    = eRod.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.Countor:
                Atend.Base.Equipment.ECountor eCounter = Atend.Base.Equipment.ECountor.SelectByCode(ProductCode);
                DBName = eCounter.Name;
                PID    = eCounter.ProductCode;
                break;

            //case Atend.Control.Enum.ProductType.JackPanel:
            //    Atend.Base.Equipment.EJAckPanel eJack = Atend.Base.Equipment.EJAckPanel.SelectByCode(ProductCode);
            //    break;

            case Atend.Control.Enum.ProductType.PhotoCell:
                Atend.Base.Equipment.EPhotoCell ePhotoCell = Atend.Base.Equipment.EPhotoCell.SelectByCode(ProductCode);
                DBName = ePhotoCell.Name;
                PID    = ePhotoCell.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.Phuse:
                Atend.Base.Equipment.EPhuse ePhuse = Atend.Base.Equipment.EPhuse.SelectByCode(ProductCode);
                DBName = ePhuse.Name;
                PID    = ePhuse.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.StreetBox:
                Atend.Base.Equipment.EStreetBox eStreet = Atend.Base.Equipment.EStreetBox.SelectByCode(ProductCode);
                DBName = eStreet.Name;
                PID    = eStreet.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.Transformer:
                Atend.Base.Equipment.ETransformer eTrans = Atend.Base.Equipment.ETransformer.SelectByCode(ProductCode);
                DBName = eTrans.Name;
                PID    = eTrans.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.PT:
                Atend.Base.Equipment.EPT ePT = Atend.Base.Equipment.EPT.SelectByCode(ProductCode);
                DBName = ePT.Name;
                PID    = ePT.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.Insulator:
                Atend.Base.Equipment.EInsulator eInsulator = Atend.Base.Equipment.EInsulator.SelectByCode(ProductCode);
                DBName = eInsulator.Name;
                PID    = eInsulator.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.ReCloser:
                Atend.Base.Equipment.EReCloser eRecloser = Atend.Base.Equipment.EReCloser.SelectByCode(ProductCode);
                DBName = eRecloser.Name;
                PID    = eRecloser.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.PhuseKey:
                Atend.Base.Equipment.EPhuseKey ePhusekey = Atend.Base.Equipment.EPhuseKey.SelectByCode(ProductCode);
                DBName = ePhusekey.Name;
                PID    = ePhusekey.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.Consol:
                Atend.Base.Equipment.EConsol eConsol = Atend.Base.Equipment.EConsol.SelectByCode(ProductCode);
                DBName = eConsol.Name;
                PID    = eConsol.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.PhusePole:
                Atend.Base.Equipment.EPhusePole ePhusepole = Atend.Base.Equipment.EPhusePole.SelectByCode(ProductCode);
                DBName = ePhusepole.Name;
                PID    = ePhusepole.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.MiddleJackPanel:
                Atend.Base.Equipment.EJAckPanel eJackP = Atend.Base.Equipment.EJAckPanel.SelectByCode(ProductCode);
                DBName = eJackP.Name;
                PID    = eJackP.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.Khazan:
                Atend.Base.Equipment.EKhazan eKhazan = Atend.Base.Equipment.EKhazan.SelectByCode(ProductCode);
                DBName = eKhazan.Name;
                PID    = eKhazan.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.GroundPost:
                Atend.Base.Equipment.EGroundPost ePost = Atend.Base.Equipment.EGroundPost.SelectByCode(ProductCode);
                DBName = ePost.Name;
                PID    = ePost.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.AirPost:
                Atend.Base.Equipment.EAirPost eAirpost = Atend.Base.Equipment.EAirPost.SelectByCode(ProductCode);
                DBName = eAirpost.Name;
                PID    = eAirpost.ProductCode;
                break;

            case Atend.Control.Enum.ProductType.WeekJackPanel:
                Atend.Base.Equipment.EJackPanelWeek eJPW = Atend.Base.Equipment.EJackPanelWeek.SelectByCode(ProductCode);
                DBName = eJPW.Name;
                PID    = eJPW.ProductCode;
                break;
            }

            return(DBName);
        }
コード例 #14
0
        private void gvConsolsTip_Click(object sender, EventArgs e)
        {
            //tvConsolSubEquipment.Nodes.Clear();

            //int Type = (int)Atend.Control.Enum.ProductType.Consol;
            //int ContainerCode = Convert.ToInt32(gvConsolsTip.SelectedRows[0].Cells[0].Value);

            //ed.WriteMessage("Row Code is : " + ContainerCode + "\n");
            //Atend.Base.Equipment.EContainerPackage ContainerPackage = Atend.Base.Equipment.EContainerPackage.selectByContainerCodeAndType(ContainerCode, Type);
            //ed.WriteMessage("Row Code in EContainerPackage is : " + ContainerPackage.Code + "\n");


            //DataTable ProductPackageTable = Atend.Base.Equipment.EProductPackage.SelectByContainerPackageCode(ContainerPackage.Code);
            //ed.WriteMessage(string.Format("RowCount in productPackage : {0} \n", ProductPackageTable.Rows.Count));

            //foreach (DataRow row in ProductPackageTable.Rows)
            //{

            //    #region find each row TableType
            //    byte TableType = Convert.ToByte(row["TableType"]);
            //    #endregion
            //    ed.WriteMessage(string.Format("TableType : {0} \n", TableType));

            //    #region search in XML for Table of TableType value
            //    string Table = DetermineTableValue(TableType);
            //    #endregion

            //    ed.WriteMessage(string.Format("Table : {0} \n", Table));

            //    if (Table == "Self")
            //    {
            //        switch ((Atend.Control.Enum.ProductType)TableType)
            //        {
            //            case Atend.Control.Enum.ProductType.Insulator:

            //                ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
            //                Atend.Base.Equipment.EInsulator insulator = Atend.Base.Equipment.EInsulator.SelectByCode(Convert.ToInt32(row["ProductCode"]));
            //                tvConsolSubEquipment.Nodes.Add(insulator.Name);

            //                break;
            //            case Atend.Control.Enum.ProductType.InsulatorChain:

            //                break;
            //            case Atend.Control.Enum.ProductType.InsulatorPipe:
            //                break;
            //        }
            //    }
            //    else
            //    {
            //        ed.WriteMessage("second productCode : " + Convert.ToInt32(row["ProductCode"]).ToString());
            //        Atend.Base.Base.BProduct product = Atend.Base.Base.BProduct.Select_ByCode(Convert.ToInt32(row["ProductCode"]));
            //        tvConsolSubEquipment.Nodes.Add(product.Name);
            //    }
            //}

            /////////////////////////////////////////////////////////////////////

            if (gvConsolsTip.Rows.Count > 0)
            {
                tvConsolSubEquipment.Nodes.Clear();

                int Type          = (int)Atend.Control.Enum.ProductType.Consol;
                int ContainerCode = Convert.ToInt32(gvConsolsTip.SelectedRows[0].Cells[0].Value);

                //ed.WriteMessage("Row Code is : " + ContainerCode + "\n");
                //Atend.Base.Equipment.EContainerPackage ContainerPackage = Atend.Base.Equipment.EContainerPackage.selectByContainerCodeAndType(ContainerCode, Type);
                //ed.WriteMessage("Row Code in EContainerPackage is : " + ContainerPackage.Code + "\n");


                DataTable ProductPackageTable = Atend.Base.Equipment.EProductPackage.SelectByContainerCodeAndType(ContainerCode, Type);
                //ed.WriteMessage(string.Format("RowCount in productPackage : {0} \n", ProductPackageTable.Rows.Count));

                foreach (DataRow row in ProductPackageTable.Rows)
                {
                    #region find each row TableType
                    byte TableType = Convert.ToByte(row["TableType"]);
                    #endregion
                    //ed.WriteMessage(string.Format("TableType : {0} \n", TableType));

                    #region search in XML for Table of TableType value
                    string Table = DetermineTableValue(TableType);
                    #endregion

                    //ed.WriteMessage(string.Format("Table : {0} \n", Table));

                    if (Table == "Self")
                    {
                        switch ((Atend.Control.Enum.ProductType)TableType)
                        {
                        case Atend.Control.Enum.ProductType.Insulator:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.EInsulator insulator = Atend.Base.Equipment.EInsulator.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(insulator.Name);

                            break;

                        case Atend.Control.Enum.ProductType.AirPost:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.EAirPost airPost = Atend.Base.Equipment.EAirPost.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(airPost.Name);
                            break;
                        //case Atend.Control.Enum.ProductType.AuoKey3p:

                        //    //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                        //    Atend.Base.Equipment.EAutoKey_3p autokey3p = Atend.Base.Equipment.EAutoKey_3p.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                        //    tvConsolSubEquipment.Nodes.Add(autokey3p.Name);
                        //    break;

                        case Atend.Control.Enum.ProductType.Breaker:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.EBreaker breaker = Atend.Base.Equipment.EBreaker.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(breaker.Name);
                            break;
                        //case Atend.Control.Enum.ProductType.Bus:

                        //    ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                        //    Atend.Base.Equipment.EBus bus = Atend.Base.Equipment.EBus.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                        //    tvConsolSubEquipment.Nodes.Add(conductor.Name);
                        //    break;
                        case Atend.Control.Enum.ProductType.GroundCabel:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.EGroundCabel cabel = Atend.Base.Equipment.EGroundCabel.AccessSelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(cabel.Name);
                            break;

                        case Atend.Control.Enum.ProductType.CatOut:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.ECatOut catout = Atend.Base.Equipment.ECatOut.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(catout.Name);
                            break;

                        case Atend.Control.Enum.ProductType.Conductor:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.EConductor conductor = Atend.Base.Equipment.EConductor.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(conductor.Name);
                            break;

                        case Atend.Control.Enum.ProductType.Consol:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.EConsol consol = Atend.Base.Equipment.EConsol.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(consol.Name);
                            break;
                        //case Atend.Control.Enum.ProductType.Countor:

                        //    ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                        //    Atend.Base.Equipment.ECountor counter = Atend.Base.Equipment.ECountor.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                        //    tvConsolSubEquipment.Nodes.Add(counter.Name);
                        //    break;
                        //case Atend.Control.Enum.ProductType.CT:

                        //    ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                        //    Atend.Base.Equipment.ECT ct = Atend.Base.Equipment.ECT.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                        //    tvConsolSubEquipment.Nodes.Add(ct.Name);
                        //    break;
                        //case Atend.Control.Enum.ProductType.DB:

                        //    ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                        //    Atend.Base.Equipment.EDB db = Atend.Base.Equipment.EDB.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                        //    tvConsolSubEquipment.Nodes.Add(db.Name);
                        //    break;
                        case Atend.Control.Enum.ProductType.Disconnector:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.EDisconnector disconnector = Atend.Base.Equipment.EDisconnector.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(disconnector.Name);
                            break;

                        case Atend.Control.Enum.ProductType.GroundPost:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.EGroundPost groundPost = Atend.Base.Equipment.EGroundPost.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(groundPost.Name);
                            break;

                        case Atend.Control.Enum.ProductType.HeaderCabel:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.EHeaderCabel headerCabel = Atend.Base.Equipment.EHeaderCabel.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(headerCabel.Name);
                            break;

                        case Atend.Control.Enum.ProductType.Jumper:
//Extra
                        ////ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                        //Atend.Base.Equipment.EJumper jumper = Atend.Base.Equipment.EJumper.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                        //tvConsolSubEquipment.Nodes.Add(jumper.Name);
                        //break;
                        case Atend.Control.Enum.ProductType.Khazan:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.EKhazan khzan = Atend.Base.Equipment.EKhazan.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(khzan.Name);
                            break;

                        case Atend.Control.Enum.ProductType.Mafsal:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.EMafsal mafsal = Atend.Base.Equipment.EMafsal.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(mafsal.Name);
                            break;
                        //case Atend.Control.Enum.ProductType.PhotoCell:

                        //    ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                        //    Atend.Base.Equipment.EPhotoCell phtoCell = Atend.Base.Equipment.EPhotoCell.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                        //    tvConsolSubEquipment.Nodes.Add(phtoCell.Name);
                        //    break;
                        case Atend.Control.Enum.ProductType.Pole:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.EPole pole = Atend.Base.Equipment.EPole.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(pole.Name);
                            break;
                        //case Atend.Control.Enum.ProductType.PT:

                        //    ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                        //    Atend.Base.Equipment.EPT pt = Atend.Base.Equipment.EPT.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                        //    tvConsolSubEquipment.Nodes.Add(pt.Name);
                        //    break;
                        //case Atend.Control.Enum.ProductType.ReCloser:

                        //    ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                        //    Atend.Base.Equipment.EReCloser recloser = Atend.Base.Equipment.EReCloser.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                        //    tvConsolSubEquipment.Nodes.Add(recloser.Name);
                        //    break;
                        case Atend.Control.Enum.ProductType.Rod:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.ERod rod = Atend.Base.Equipment.ERod.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(rod.Name);
                            break;
                        //case Atend.Control.Enum.ProductType.SectionLizer:

                        //    ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                        //    Atend.Base.Equipment.ESectionLizer sectionLizer = Atend.Base.Equipment.ESectionLizer.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                        //    tvConsolSubEquipment.Nodes.Add(sectionLizer.Name);
                        //    break;
                        case Atend.Control.Enum.ProductType.StreetBox:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.EStreetBox streetBox = Atend.Base.Equipment.EStreetBox.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(streetBox.Name);
                            break;

                        case Atend.Control.Enum.ProductType.Transformer:

                            //ed.WriteMessage("first productCode : " + Convert.ToInt32(row["ProductCode"]));
                            Atend.Base.Equipment.ETransformer transform = Atend.Base.Equipment.ETransformer.SelectByCode(Convert.ToInt32(row["ProductCode"]));
                            tvConsolSubEquipment.Nodes.Add(transform.Name);
                            break;

                        case Atend.Control.Enum.ProductType.InsulatorChain:

                            break;

                        case Atend.Control.Enum.ProductType.InsulatorPipe:
                            break;
                        }
                    }
                    else
                    {
                        //ed.WriteMessage("second productCode : " + Convert.ToInt32(row["ProductCode"]).ToString());
                        Atend.Base.Base.BProduct product = Atend.Base.Base.BProduct.Select_ByCode(Convert.ToInt32(row["ProductCode"]));
                        tvConsolSubEquipment.Nodes.Add(product.Name);
                    }
                }
            }

            /////////////////////////////////////////////////////////////////////
        }
コード例 #15
0
ファイル: frmRudSurface.cs プロジェクト: ParisaMousavi/ATEND
        private void ReadVoltage(int RowIndex)
        {
            Editor ed = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;

            ed.WriteMessage("ReadVoltage\n");
            System.Data.DataTable dtsec = Atend.Base.Design.DPoleSection.AccessSelectBySectionCodeProductType(new Guid(gvSection.Rows[RowIndex].Cells[0].Value.ToString()), Convert.ToInt32(Atend.Control.Enum.ProductType.Pole));
            ed.WriteMessage("ReadVoltage\n");
            if (dtsec.Rows.Count == 0)
            {
                dtsec = Atend.Base.Design.DPoleSection.AccessSelectBySectionCodeProductType(new Guid(gvSection.Rows[RowIndex].Cells[0].Value.ToString()), Convert.ToInt32(Atend.Control.Enum.ProductType.PoleTip));
            }

            ed.WriteMessage("@@\n");
            Atend.Base.Design.DPackage dParent = Atend.Base.Design.DPackage.AccessSelectByNodeCode(new Guid(dtsec.Rows[0]["ProductCode"].ToString()));
            System.Data.DataTable      dt      = Atend.Base.Design.DPackage.AccessSelectByParentCodeAndType(dParent.Code, Convert.ToInt32(Atend.Control.Enum.ProductType.Consol));
            if (dt.Rows.Count == 0)
            {
                dt = Atend.Base.Design.DPackage.AccessSelectByParentCodeAndType(dParent.Code, Convert.ToInt32(Atend.Control.Enum.ProductType.Kalamp));
            }

            ed.WriteMessage("BeforConsol Count={0}\n", dt.Rows.Count);
            if (Convert.ToInt32(dt.Rows[0]["Type"].ToString()) == Convert.ToInt32(Atend.Control.Enum.ProductType.Consol))
            {
                ed.WriteMessage("*******\n");
                Atend.Base.Equipment.EConsol eConsol = Atend.Base.Equipment.EConsol.AccessSelectByCode(Convert.ToInt32(dt.Rows[0]["ProductCode"].ToString()));
                if (eConsol.VoltageLevel == 400)
                {
                    Volt = 400;
                }

                if (eConsol.VoltageLevel == 1100)
                {
                    Volt = 1100;
                }

                if (eConsol.VoltageLevel == 20000)
                {
                    Volt = 20000;
                }

                if (eConsol.VoltageLevel == 33000)
                {
                    Volt = 33000;
                }
            }

            if (Convert.ToInt32(dt.Rows[0]["Type"].ToString()) == Convert.ToInt32(Atend.Control.Enum.ProductType.Kalamp))
            {
                Atend.Base.Equipment.EClamp eKalamp = Atend.Base.Equipment.EClamp.AccessSelectByCode(Convert.ToInt32(dt.Rows[0]["ProductCode"].ToString()));
                if (eKalamp.VoltageLevel == 400)
                {
                    Volt = 400;
                }

                if (eKalamp.VoltageLevel == 1100)
                {
                    Volt = 1100;
                }

                if (eKalamp.VoltageLevel == 20000)
                {
                    Volt = 20000;
                }

                if (eKalamp.VoltageLevel == 33000)
                {
                    Volt = 33000;
                }
            }
            ed.WriteMessage("FINISH++\n");
        }
コード例 #16
0
        public void BindDataToOwnControl()
        {
            // BindDataTofeathurePole

            //ed.WriteMessage("DesignCode=" + Atend.Control.Common.SelectedDesignCode.ToString() + "\n");
            Atend.Base.Design.DNode myNode = Atend.Base.Design.DNode.AccessSelectByCode(NodeCode);
            //ed.WriteMessage("myNode.Code= " + myNode.Code.ToString() + "\n");

            Atend.Base.Design.DPackage myPackage = Atend.Base.Design.DPackage.AccessSelectByNodeCodeType(myNode.Code, Convert.ToInt32(Atend.Control.Enum.ProductType.Pole));
            //ed.WriteMessage("myPackage.ProductCode= " + myPackage.ProductCode.ToString() + "\n");

            Atend.Base.Equipment.EPole myPole = Atend.Base.Equipment.EPole.AccessSelectByCode(myNode.ProductCode);
            //Extra
            //Atend.Base.Equipment.EPoleType myPoleType = Atend.Base.Equipment.EPoleType.SelectByCode(myPole.Type);
            //ed.WriteMessage("myPole.Height.ToString()" + myPole.Height.ToString() + "\n");
            gvPole.AutoGenerateColumns = false;
            gvPole.DataSource          = Atend.Base.Equipment.EPole.DrawSearch(-1, -1, -1);
            for (int i = 0; i < gvPole.Rows.Count; i++)
            {
                if (Convert.ToInt32(gvPole.Rows[i].Cells[0].Value.ToString()) == myNode.ProductCode)
                {
                    gvPole.Rows[i].DefaultCellStyle.BackColor = Color.Yellow;
                }
            }
            //Extra
            //txtType.Text = myPoleType.Name;
            txtTopCrossSectionArea.Text = myPole.TopCrossSectionArea.ToString();
            txtPower.Text  = myPole.Power.ToString();
            txtHeight.Text = myPole.Height.ToString();
            txtBottomCrossSectionArea.Text = myPole.ButtomCrossSectionArea.ToString();
            //ed.WriteMessage("Finish BindDataTofeathurePole\n");
            //****************************

            //BindDataToHalterAndPoleTypeAndConsolType
            Atend.Base.Design.DPoleInfo myPoleInfo = Atend.Base.Design.DPoleInfo.AccessSelectByNodeCode(myNode.Code);

            //ed.WriteMessage("myPoleInfo.HalterType:=" + myPoleInfo.HalterType.ToString() + "\n");
            //ed.WriteMessage("myPoleInfo.HalterCount:=" + myPoleInfo.HalterCount.ToString());

            cboHalterType.SelectedValue = myPoleInfo.HalterType;

            nudHalter.Value = myPoleInfo.HalterCount;

            //string poleType = myPoleInfo.PoleType.ToString();
            //if (poleType.EndsWith("1"))
            //{
            //    chkCross.Checked = true;
            //}

            //if (poleType.EndsWith("2"))
            //{
            //    chkEnding.Checked = true;
            //}

            //if (poleType.EndsWith("4"))
            //{
            //    chkPulling.Checked = true;
            //}
            //ed.WriteMessage("FinishBindDataToHalterAndPoleTypeAndConsolType\n");
            //*****************************

            //BindDataToConsol

            DataTable dtPackage = Atend.Base.Design.DPackage.AccessSelectByParentCodeAndType(myPackage.Code, Convert.ToInt32(Atend.Control.Enum.ProductType.Consol));

            foreach (DataRow drPackage in dtPackage.Rows)
            {
                //ed.WriteMessage("ProductCode= " + drPackage["ProductCode"].ToString() + "\n");
                Atend.Base.Equipment.EConsol consol = Atend.Base.Equipment.EConsol.SelectByCodeForDesign(Convert.ToInt32(drPackage["ProductCode"]));
                gvPoleConsol.Rows.Add();
                //ed.WriteMessage("Code= "+consol.Code+"Name= "+consol.Name+"\n");
                gvPoleConsol.Rows[gvPoleConsol.Rows.Count - 1].Cells[0].Value = consol.Code.ToString();
                gvPoleConsol.Rows[gvPoleConsol.Rows.Count - 1].Cells[1].Value = consol.Name;
                //ed.WriteMessage("as\n");
                if (consol.ConsolType == 0)
                {
                    gvPoleConsol.Rows[gvPoleConsol.Rows.Count - 1].Cells[2].Value = "کششی";
                }
                if (consol.ConsolType == 1)
                {
                    gvPoleConsol.Rows[gvPoleConsol.Rows.Count - 1].Cells[2].Value = "انتهایی";
                }
                if (consol.ConsolType == 2)
                {
                    gvPoleConsol.Rows[gvPoleConsol.Rows.Count - 1].Cells[2].Value = "عبوری";
                }
                if (consol.ConsolType == 3)
                {
                    gvPoleConsol.Rows[gvPoleConsol.Rows.Count - 1].Cells[2].Value = "DP";
                }
                gvPoleConsol.Rows[gvPoleConsol.Rows.Count - 1].Cells[4].Value = drPackage["Code"].ToString();
            }
            //ed.WriteMessage("FinishBindDataToconsol\n");
            //*****************************
        }
コード例 #17
0
        private void btnSelect_Click(object sender, EventArgs e)
        {
            this.Hide();

            PromptEntityOptions peo = new PromptEntityOptions("\nSelect Entity:");
            PromptEntityResult  per = ed.GetEntity(peo);

            Atend.Base.Acad.AT_INFO atInfo = Atend.Base.Acad.AT_INFO.SelectBySelectedObjectId(per.ObjectId);
            //ed.WriteMessage("PoleGuid={0} ,ConsolGuid={1}\n", atInfo.ParentCode, atInfo.NodeCode);
            DataTable dtCondAndSelf = Atend.Global.Acad.UAcad.FillBranchList();


            if ((atInfo.NodeType == Convert.ToInt32(Atend.Control.Enum.ProductType.Consol)) || (atInfo.NodeType == Convert.ToInt32(Atend.Control.Enum.ProductType.Kalamp)) || (atInfo.NodeType == Convert.ToInt32(Atend.Control.Enum.ProductType.HeaderCabel)))
            {
                CanDoCalculate = true;
                Nodeobj        = Convert.ToInt32(per.ObjectId.ToString().Substring(1, per.ObjectId.ToString().Length - 2));
                //ed.WriteMessage("NodeCode={0}\n",atInfo.NodeCode);
                Atend.Base.Design.DPackage dPAck = Atend.Base.Design.DPackage.AccessSelectByCode(new Guid(atInfo.NodeCode));
                //ed.WriteMessage("dConsol.ProductCode={0}\n",dconsol.ProductCode);
                if (dPAck.Type == Convert.ToInt32(Atend.Control.Enum.ProductType.Consol))
                {
                    Atend.Base.Equipment.EConsol eConsol = Atend.Base.Equipment.EConsol.AccessSelectByCode(dPAck.ProductCode);
                    //ed.WriteMessage("^^^^={0}\n",eConsol.Length);
                    txtVolt.Text    = eConsol.VoltageLevel.ToString();
                    txtVoltTev.Text = eConsol.VoltageLevel.ToString();
                    if (eConsol.VoltageLevel == 400)
                    {
                        txtMaxDropVolt.Text  = "5";
                        txtMaxDropPower.Text = "3";
                    }
                    else
                    {
                        txtMaxDropVolt.Text  = "3";
                        txtMaxDropPower.Text = "3";
                    }
                }
                else if (dPAck.Type == Convert.ToInt32(Atend.Control.Enum.ProductType.Kalamp))
                {
                    //ed.WriteMessage("This Is Kalamp\n");
                    Atend.Base.Equipment.EClamp Clamp = Atend.Base.Equipment.EClamp.AccessSelectByCode(dPAck.ProductCode);
                    txtVolt.Text    = Clamp.VoltageLevel.ToString();
                    txtVoltTev.Text = Clamp.VoltageLevel.ToString();
                    if (Clamp.VoltageLevel == 400)
                    {
                        txtMaxDropVolt.Text  = "5";
                        txtMaxDropPower.Text = "3";
                    }
                    else
                    {
                        txtMaxDropVolt.Text  = "3";
                        txtMaxDropPower.Text = "3";
                    }
                }
                else if (dPAck.Type == Convert.ToInt32(Atend.Control.Enum.ProductType.HeaderCabel))
                {
                    //ed.WriteMessage("This Is Kalamp\n");
                    Atend.Base.Equipment.EHeaderCabel HeaderCabel = Atend.Base.Equipment.EHeaderCabel.AccessSelectByCode(dPAck.ProductCode);
                    txtVolt.Text    = HeaderCabel.Voltage.ToString();
                    txtVoltTev.Text = HeaderCabel.Voltage.ToString();
                    if (HeaderCabel.Voltage == 400)
                    {
                        txtMaxDropVolt.Text  = "5";
                        txtMaxDropPower.Text = "3";
                    }
                    else
                    {
                        txtMaxDropVolt.Text  = "3";
                        txtMaxDropPower.Text = "3";
                    }
                }
                //ed.WriteMessage("dtCondAndSelf.Rows.Count={0}\n",dtCondAndSelf.Rows.Count);
                DataRow[] drCond = dtCondAndSelf.Select(string.Format("Type={0}", (int)Atend.Control.Enum.ProductType.Conductor));
                //System.Data.DataTable dtConductor = Atend.Global.Acad.UAcad.GetConsolConductors(new Guid(atInfo.ParentCode), new Guid(atInfo.NodeCode));
                if (drCond.Length != 0)
                {
                    Atend.Base.Design.DBranch branch = Atend.Base.Design.DBranch.AccessSelectByCode(new Guid(drCond[0]["BranchGuid"].ToString()));// SelectByCode(new Guid(dtConductor.Rows[0]["BranchGuid"].ToString()));
                    //ed.WriteMessage("branch.productCode={0}\n",branch.ProductCode);

                    Atend.Base.Equipment.EConductorTip condTip = Atend.Base.Equipment.EConductorTip.AccessSelectByCode(branch.ProductCode);
                    cond = Atend.Base.Equipment.EConductor.AccessSelectByCode(condTip.PhaseProductCode);
                    //ed.WriteMessage("Cond.TypeCode={0}\n",cond.TypeCode);
                    cboMaterial.SelectedIndex = cond.TypeCode;
                    //ed.WriteMessage("****\n");
                }

                DataRow[] drSelf = dtCondAndSelf.Select(string.Format("Type={0}", (int)Atend.Control.Enum.ProductType.SelfKeeper));
                if (drSelf.Length != 0)
                {
                    //ed.WriteMessage("Self\n");

                    Atend.Base.Design.DBranch           branchSelf = Atend.Base.Design.DBranch.AccessSelectByCode(new Guid(drSelf[0]["BranchGuid"].ToString()));
                    Atend.Base.Equipment.ESelfKeeperTip SelfTip    = Atend.Base.Equipment.ESelfKeeperTip.AccessSelectByCode(branchSelf.ProductCode);
                    Atend.Base.Equipment.ESelfKeeper    Self       = Atend.Base.Equipment.ESelfKeeper.AccessSelectByCode(SelfTip.PhaseProductCode);
                    CboMaterialCalamp.SelectedIndex = Self.MaterialConductorCode - 1;
                }
                txtX.Text           = "0";
                txtR.Text           = "0";
                txtLoadPercent.Text = "75";

                //ed.WriteMessage("FinishSElect\n");
            }
            else
            {
                MessageBox.Show("لطفت جهت شروع محاسبات یک گره را انتخاب کنید");
                CanDoCalculate = false;
            }
            this.Show();
        }