Epicor_Integration.Bill_Master.TS_Click C# (CSharp) Method

TS_Click() private method

private TS_Click ( object sender, EventArgs e ) : void
sender object
e EventArgs
return void
        void TS_Click(object sender, EventArgs e)
        {
            ToolStripMenuItem TS = (ToolStripMenuItem)sender;

            //retrieve template data
            DataTable DT = new DataTable();

            DT = Templates.GetFullTemplate(TS.Name, "BOM");

            addraw.Enabled = true;

            try
            {
                //line for each row
                foreach (DataRow Dr in DT.Rows)
                {
                    EngWB.GetNewECOMtl(EngWBDS, gid_txt.Text, parent_txt.Text, parentrev_txt.Text, "");

                    int row = EngWBDS.Tables["ECOMtl"].Rows.Count - 1;

                    EngWBDS.Tables["ECOMtl"].Rows[row]["MtlPartNum"] = Dr["PropertyValue"].ToString();

                    EngWBDS.Tables["ECOMtl"].Rows[row]["RelatedOperation"] = Dr["PropertyType"].ToString();

                    EngWBDS.Tables["ECOMtl"].Rows[row]["MtlPartNumPartDescription"] = DataList.GetCurrentDesc(Dr["PropertyValue"].ToString());

                    EngWBDS.Tables["ECOMtl"].Rows[row]["UOMCode"] = Dr["PropertyUOM"].ToString();

                    EngWBDS.Tables["ECOMtl"].Rows[row]["QtyPer"] = Dr["PropertyQty"].ToString();

                    EngWBDS.Tables["ECOMtl"].Rows[row]["ViewAsAsm"] = Dr["PropertyOptions"].ToString();

                    EngWBDS.Tables["ECOMtl"].Rows[row]["PullAsAsm"] = Dr["PropertyOptions1"].ToString();

                    if (Dr["PropertyOptions5"].ToString() != null || Dr["PropertyOptions5"].ToString() != "")
                    {
                        if (Dr["PropertyOptions5"].ToString() == "AREA")
                            EngWBDS.Tables["ECOMtl"].Rows[row]["QtyPer"] = area.Value;

                        if (Dr["PropertyOptions5"].ToString() == "WEIGHT")
                        {
                            try
                            {
                                Part Part = new Part(DataList.EpicConn);

                                PartDataSet Pdata = new PartDataSet();

                                Pdata = Part.GetByID(parent_txt.Text);

                                string Length = RailLength(Pdata.Tables["Part"].Rows[0]["PartDescription"].ToString());

                                string partnumber = Dr["PropertyValue"].ToString();

                                double density = double.Parse(sheetCoil_UsageTableAdapter.GetDensity(partnumber,"%","%","%","%").ToString());

                                double width = double.Parse(sheetCoil_UsageTableAdapter.GetWidth(partnumber, "%", "%", "%","%","%").ToString());

                                double thickness = double.Parse(sheetCoil_UsageTableAdapter.GetLength(partnumber, "%", "%", "%", "%", "%").ToString());

                                weight.Value = (decimal)(double.Parse(Length) * density * width * thickness) / 2;
                            }
                            finally
                            {
                                EngWBDS.Tables["ECOMtl"].Rows[row]["QtyPer"] = weight.Value;
                            }
                        }
                    }

                    EngWB.Update(EngWBDS);
                }

                EnableItemDetails();
            }
            catch (Exception ex) { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); }
        }