Exemplo n.º 1
0
        private void tsbShare_Click(object sender, EventArgs e)
        {
            if (SelectClamp != Guid.Empty)
            {
                if (Atend.Base.Equipment.EContainerPackage.ShareOnServer(Convert.ToInt32(Atend.Control.Enum.ProductType.Kalamp), SelectClamp))
                {
                    Atend.Base.Equipment.EClamp Calamp = Atend.Base.Equipment.EClamp.SelectByXCode(SelectClamp);
                    Code = Calamp.Code;
                    MessageBox.Show("به اشتراک گذاری با موفقیت انجام شد");
                }
                else
                {
                    MessageBox.Show("خطا در به اشتراک گذاری .");
                }
            }
            else
            {
                MessageBox.Show("لطفا تجهیز مورد نظر را انتخاب کنید");
            }

            //if (SelectClamp != Guid.Empty)
            //{
            //    if (Atend.Base.Equipment.EClamp.ShareOnServer(SelectClamp))
            //    {
            //        Atend.Base.Equipment.EClamp c1 = Atend.Base.Equipment.EClamp.SelectByXCode(SelectClamp);
            //        Code = c1.Code;
            //        MessageBox.Show("به اشتراک گذاری با موفقیت انجام شد");
            //    }
            //    else
            //        MessageBox.Show("خطا در به اشتراک گذاری . لطفاً دوباره سعی کنید");
            //}
            //else
            //    MessageBox.Show("لطفا تجهیز مورد نظر را انتخاب کنید");
        }
Exemplo n.º 2
0
        public void BindDataToOwnControl(Guid XCode)
        {
            Atend.Base.Equipment.EClamp clamp = Atend.Base.Equipment.EClamp.SelectByXCode(XCode);
            SelectClamp  = XCode;
            txtName.Text = clamp.Name;

            Atend.Control.Common.selectedProductCode = clamp.ProductCode;
            SelectProduct();
            cboVoltagelevel.Text    = clamp.VoltageLevel.ToString();
            cboType.SelectedValue   = clamp.Type;
            cboKind.SelectedValue   = clamp.Kind;
            txtName.Text            = clamp.Name;
            txtComment.Text         = clamp.Comment;
            tsbIsDefault.Checked    = clamp.IsDefault;
            txtDistanceSupport.Text = clamp.DistanceSupport.ToString();
            Code = clamp.Code;
            BindTreeViwAndGrid();
        }
Exemplo n.º 3
0
        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();
        }
Exemplo n.º 4
0
 private bool CheckStatuseOfAccessChangeDefault()
 {
     Autodesk.AutoCAD.EditorInput.Editor ed = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;
     //ed.WriteMessage("AccessChangeDefault={0}\n", Atend.Control.Common.AccessChangeDefault);
     if (!Atend.Control.Common.AccessChangeDefault)
     {
         if (SelectClamp == Guid.Empty && IsDefault)
         {
             MessageBox.Show("کاربر گرامی شما اجازه ثبت تجهیز به صورت پیش فرض ندارید", "خطا");
             return(false);
         }
         else
         {
             Atend.Base.Equipment.EClamp Equip = Atend.Base.Equipment.EClamp.SelectByXCode(SelectClamp);
             if (Equip.IsDefault || IsDefault)
             {
                 MessageBox.Show("کاربر گرامی شما اجازه ویرایش  تجهیز به صورت پیش فرض ندارید", "خطا");
                 return(false);
             }
         }
     }
     return(true);
 }
Exemplo n.º 5
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());
        }
Exemplo n.º 6
0
        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");
        }
Exemplo n.º 7
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);
        }
Exemplo n.º 8
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);
        }
Exemplo n.º 9
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();
        }
Exemplo n.º 10
0
        private void Save()
        {
            txtName.Focus();
            Atend.Base.Equipment.EClamp clamp = new Atend.Base.Equipment.EClamp();
            clamp.ProductCode     = Atend.Control.Common.selectedProductCode;
            clamp.Type            = Convert.ToByte(cboType.SelectedValue);
            clamp.Kind            = Convert.ToByte(cboKind.SelectedValue);
            clamp.VoltageLevel    = Convert.ToInt32(cboVoltagelevel.Text);
            clamp.Comment         = txtComment.Text;
            clamp.Name            = txtName.Text;
            clamp.IsDefault       = IsDefault;
            clamp.DistanceSupport = Convert.ToDouble(txtDistanceSupport.Text);
            clamp.Code            = Code;

            //Equipment
            ArrayList EPackageProduct = new ArrayList();

            for (int j = 0; j < gvSelectedEquipment.Rows.Count; j++)
            {
                Atend.Base.Equipment.EProductPackage _EProductPackage = new Atend.Base.Equipment.EProductPackage();
                _EProductPackage.XCode     = new Guid(gvSelectedEquipment.Rows[j].Cells[0].Value.ToString());
                _EProductPackage.Count     = Convert.ToInt32(gvSelectedEquipment.Rows[j].Cells[2].Value.ToString());
                _EProductPackage.TableType = Convert.ToInt16(gvSelectedEquipment.Rows[j].Cells[3].Value.ToString());
                EPackageProduct.Add(_EProductPackage);
            }
            clamp.EquipmentList = EPackageProduct;

            //Operation
            ArrayList EOperation = new ArrayList();

            for (int i = 0; i < gvOperation.Rows.Count; i++)
            {
                Atend.Base.Equipment.EOperation _EOperation = new Atend.Base.Equipment.EOperation();
                _EOperation.ProductID = Convert.ToInt32(gvOperation.Rows[i].Cells[0].Value);
                _EOperation.Count     = Convert.ToDouble(gvOperation.Rows[i].Cells[3].Value);
                EOperation.Add(_EOperation);
            }
            clamp.OperationList = EOperation;
            if (SelectClamp == Guid.Empty)
            {
                if (clamp.InsertX())
                {
                    Reset();
                }
                else
                {
                    MessageBox.Show("امکان ثبت اطلاعات نمی باشد", "خطا");
                }
            }
            else
            {
                clamp.XCode = SelectClamp;
                if (clamp.UpdateX())
                {
                    Reset();
                }
                else
                {
                    MessageBox.Show("امکان به روز رسانی اطلاعات نمی باشد", "خطا");
                }
            }
        }
Exemplo n.º 11
0
        private bool Validation()
        {
            if (string.IsNullOrEmpty(txtName.Text))
            {
                MessageBox.Show("لطفاً نام کلمپ را مشخص نمایید", "خطا");
                txtName.Focus();
                return(false);
            }
            if (Atend.Base.Equipment.EClamp.SearchByName(txtName.Text) == true && SelectClamp == Guid.Empty)
            {
                MessageBox.Show("نام قبلا استفاده شده است", "خطا");
                txtName.Focus();
                return(false);
            }
            if (string.IsNullOrEmpty(txtDistanceSupport.Text))
            {
                MessageBox.Show("لطفاً فاصله تا راس  را مشخص نمایید", "خطا");
                txtDistanceSupport.Focus();
                return(false);
            }
            if (!Atend.Control.NumericValidation.DoubleConverter(txtDistanceSupport.Text))
            {
                MessageBox.Show("لطفاً فاصله تا راس  رابا فرمت مناسب وارد نمایید", "خطا");
                txtDistanceSupport.Focus();
                return(false);
            }

            Atend.Base.Equipment.EClamp clamp = Atend.Base.Equipment.EClamp.CheckForExist(Convert.ToByte(cboType.SelectedValue), Convert.ToByte(cboKind.SelectedValue),
                                                                                          Convert.ToInt32(cboVoltagelevel.Text), Convert.ToDouble(txtDistanceSupport.Text));
            if (clamp.Code != -1 && SelectClamp == Guid.Empty)
            {
                if (MessageBox.Show("کلمپ با مشخصات داده شده موجود میباشد\n\n کلمپ با مشخصات فوق  : " + clamp.Name + "\n\n" + "آیا مایل به ادامه  ثبت می باشید؟", "خطا", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
                {
                    cboType.Focus();
                    return(false);
                }
            }
            if (!Atend.Global.Utility.UBinding.CheckGridValidation(gvOperation, 3))
            {
                MessageBox.Show("لطفا تعداد آماده سازی را با فرمت مناسب وارد نمایید", "خطا");
                gvOperation.Focus();
                return(false);
            }
            if (!Atend.Global.Utility.UBinding.CheckGridValidation(gvSelectedEquipment, 2))
            {
                MessageBox.Show("لطفا تعداد تجهیزات جانبی را با فرمت مناسب وارد نمایید", "خطا");
                gvSelectedEquipment.Focus();
                return(false);
            }
            for (int j = 0; j < gvSelectedEquipment.Rows.Count; j++)
            {
                Atend.Base.Equipment.EProductPackage _EProductPackage = new Atend.Base.Equipment.EProductPackage();
                _EProductPackage.XCode     = new Guid(gvSelectedEquipment.Rows[j].Cells[0].Value.ToString());
                _EProductPackage.Count     = Convert.ToInt32(gvSelectedEquipment.Rows[j].Cells[2].Value.ToString());
                _EProductPackage.TableType = Convert.ToInt16(gvSelectedEquipment.Rows[j].Cells[3].Value.ToString());

                if (Atend.Base.Equipment.EContainerPackage.FindLoopNode(SelectClamp, Convert.ToInt32(Atend.Control.Enum.ProductType.Kalamp), _EProductPackage.XCode, _EProductPackage.TableType))
                {
                    MessageBox.Show(string.Format("تجهیز '{0}' در زیر تجهیزات موجود می باشد", txtName.Text), "خطا");
                    gvSelectedEquipment.Focus();
                    return(false);
                }
            }
            return(CheckStatuseOfAccessChangeDefault());
            //return true;
        }