Esempio n. 1
0
        //Bill of Material
        public override void Build()
        {
            Part part;

            decimal pweight = FrameWorks.Functions.PanelWieghtS2000(m_subAssemblyWidth, m_subAssemblyHieght);

            string labelStileR  = string.Empty;
            string labelStileL  = string.Empty;
            string labelTopRail = string.Empty;
            string labelBotRail = string.Empty;



            #region DoorPanel



            // StileL <<--


            part = new Part(3400, "StileL", this, 1, m_subAssemblyHieght);
            part.PartGroupType = "Door-Parts";
            decimal strikeOrigin = m_subAssemblyHieght - 35.875m;
            part.PartLabel = "1) Miter End" + "\r\n" +
                             "2) Position Origin Strike  " + strikeOrigin.ToString() + "\r\n" +
                             "3) Machine 3127.m";

            m_parts.Add(part);



            // StileR -->>

            part = new Part(3400, "StileR", this, 1, m_subAssemblyHieght);
            part.PartGroupType = "Door-Parts";
            decimal step = (m_subAssemblyHieght - 15.0m);
            step /= Convert.ToDecimal((FrameWorks.Functions.HingeCount(m_subAssemblyHieght) - 1));
            step  = Math.Round(step, 4);
            int msg = FrameWorks.Functions.HingeCount(m_subAssemblyHieght);
            part.PartLabel = "1) Miter Ends" + "\r\n" +
                             "2) Position 0rigin @ " + (7.5m).ToString() + "\r\n" +
                             "3) Tube Backer Prep-> 3123.m"
                             + FrameWorks.Functions.HingeCount(m_subAssemblyHieght).ToString() + "@<" + step.ToString() + ">O.C.";

            m_parts.Add(part);



            // RailT ^^

            part = new Part(3400, "RailT", this, 1, m_subAssemblyWidth);
            part.PartGroupType = "Door-Parts";
            part.PartLabel     = "1) Miter Ends " + "\r\n" +
                                 "2) Bore Hole for [1932 pn]-";

            m_parts.Add(part);



            // RailB ||

            part = new Part(3400, "RailB", this, 1, m_subAssemblyWidth);
            part.PartGroupType = "Door-Parts";
            part.PartLabel     = "1) Miter Ends ";

            m_parts.Add(part);



            #endregion


            #region GlassStop



            // Stop-L #3396
            part = new Part(3396, "GlassStop-L", this, 1, m_subAssemblyHieght - 2 * 2.6875m);
            part.PartGroupType = "GlassStop-Parts";
            part.PartLabel     = "MiterEnds";

            m_parts.Add(part);



            // Stop-R #3396
            part = new Part(3396, "GlassStop-R", this, 1, m_subAssemblyHieght - 2 * 2.6875m);
            part.PartGroupType = "GlassStop-Parts";
            part.PartLabel     = "MiterEnds";

            m_parts.Add(part);



            // Stop-T #3396

            part = new Part(3396, "GlassStop-T", this, 1, m_subAssemblyWidth - 2 * 2.6875m);
            part.PartGroupType = "GlassStop-Parts";
            part.PartLabel     = "MiterEnds";

            m_parts.Add(part);



            // Stop-B #3396

            string crap;
            crap = FrameWorks.Functions.StopWeepMachining(m_subAssemblyWidth - 2 * 2.6875m);
            part = new Part(3396, "GlassStop-B", this, 1, m_subAssemblyWidth - 2 * 2.6875m);
            part.PartGroupType = "GlassStop-Parts";
            part.PartLabel     = "1)MiterEnds" + "\r\n" +
                                 "2)" + crap;

            m_parts.Add(part);



            #endregion


            #region Glass

            //Glass Panel
            part = new Part(1022);
            part.FunctionalName    = "Glass";
            part.PartGroupType     = "Glass-Parts";
            part.Qnty              = 1;
            part.ContainerAssembly = this;
            part.PartWidth         = m_subAssemblyWidth - (3.00m * 2.0m);
            part.PartLength        = m_subAssemblyHieght - (3.00m * 2.0m);
            part.PartThick         = 1.25m;

            m_parts.Add(part);

            #endregion


            #region HardWare Logic



            // Hinges
            part = new Part(1879, "Hinges", this, HingeCount(m_subAssemblyHieght), 0.0m);
            part.PartGroupType = "Hardware-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            // Tube Backer
            part = new Part(1640, "Tube Backer", this, HingeCount(m_subAssemblyHieght), 0.0m);
            part.PartGroupType = "Hardware-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);



            Hoppe hoppe = new Hoppe(m_subAssemblyHieght, this);
            foreach (Part innerpart in hoppe.Parts)
            {
                //inner
                this.Parts.Add(innerpart);
            }

            #endregion


            #region Seal/Weatherstripping


            decimal peri = FrameWorks.Functions.Perimeter(m_subAssemblyHieght, m_subAssemblyWidth);

            //Sash Edge Seal
            part = new Part(2274, "Edge Seal", this, 1, peri);
            part.PartGroupType = "Seal-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);



            for (int i = 0; i < 2; i++)
            {
                peri = FrameWorks.Functions.Perimeter(m_subAssemblyHieght - 3.03125m, m_subAssemblyWidth - 3.03125m);

                //Glazing Seals
                part = new Part(2772, "Glazing Seal", this, 1, peri);
                part.PartGroupType = "Seal-Parts";
                part.PartLabel     = "";

                m_parts.Add(part);
            }



            // Door Bottom
            part = new Part(1518, "Door Bottom", this, 1, m_subAssemblyWidth);
            part.PartGroupType = "Seals-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);



            #endregion


            #region Labor


            part = new LPart("Design", this, 4.0m, 80.0m);
            m_parts.Add(part);
            //Collect Information on Sizes: Measure: Provide Information for Approval: Order: Supervision

            part = new LPart("Draft", this, 3.0m, 80.0m);
            m_parts.Add(part);
            //Typical Drawings

            part = new LPart("MetalHours", this, 8.0m, 80.0m);
            m_parts.Add(part);
            //1 Recieve: 1 Handle: 1 CutSash: 1 CutGlassStop: 1.5 Machine: 1.5 Hardware Prep: 1 Mount Hardware:


            part = new LPart("Finish", this, 4.0m, 80.0m);
            m_parts.Add(part);
            //2 Sand Linegrain: 2 Finish:

            part = new LPart("GlazingHours", this, (this.Area * 0.17m) + 1.5m, 80.0m);
            m_parts.Add(part);
            //.5 Recieve: .5 InspectReject: .5 StoreHandle: * .17 Hrs Per Square Ft:

            part = new LPart("Prehang", this, (this.Area * .10m) + 3.0m, 80.0m);
            m_parts.Add(part);
            //2 FitSash into Frame: 1 Mount Weather Strips/Seals

            part = new LPart("Stage", this, 1.0m, 80.0m);
            m_parts.Add(part);
            //1 Stage

            part = new LPart("Load", this, 1.0m, 80.0m);
            m_parts.Add(part);
            //1 Load


            #endregion
        }
Esempio n. 2
0
        //Bill of Material
        public override void Build()
        {
            partleader = this.Parent.UnitID + "." + this.CreateID.ToString();



            #region DoorCoreAlum


            // SubStileL <<--
            part = new Part(3070, "SubStileL", this, 1, m_subAssemblyHieght - 2 * .48140111m);
            part.PartGroupType = "DoorCoreAlum-Parts";
            part.PartWidth     = part.Source.Width;
            part.PartThick     = part.Source.Height;
            part.PartLabel     = "";

            m_parts.Add(part);


            // SubStileR -->>
            part = new Part(3070, "SubStileR", this, 1, m_subAssemblyHieght - 2 * .48140111m);
            part.PartGroupType = "DoorCoreAlum-Parts";
            part.PartWidth     = part.Source.Width;
            part.PartThick     = part.Source.Height;
            part.PartLabel     = "";

            m_parts.Add(part);


            // SubRailT ^^
            part = new Part(3070, "SubRailT", this, 1, m_subAssemblyWidth - 2 * .48140111m);
            part.PartGroupType = "DoorCoreAlum-Parts";
            part.PartWidth     = part.Source.Width;
            part.PartThick     = part.Source.Height;
            part.PartLabel     = "";

            m_parts.Add(part);


            // SubRailB ||
            part = new Part(3070, "SubRailB", this, 1, m_subAssemblyWidth - 2 * .48140111m);
            part.PartGroupType = "DoorCoreAlum-Parts";
            part.PartWidth     = part.Source.Width;
            part.PartThick     = part.Source.Height;
            part.PartLabel     = "";

            m_parts.Add(part);


            #endregion


            #region ExtCladSS

            // StileExtL <<--
            part = new Part(3093, "StileExtL", this, 1, m_subAssemblyHieght);
            part.PartGroupType = "ExtCladSS-Parts";
            part.PartWidth     = part.Source.Width;
            part.PartThick     = part.Source.Height;
            part.PartLabel     = "";

            m_parts.Add(part);


            // StileExtR -->>
            part = new Part(3093, "StileExtR", this, 1, m_subAssemblyHieght);
            part.PartGroupType = "ExtCladSS-Parts";
            part.PartWidth     = part.Source.Width;
            part.PartThick     = part.Source.Height;
            part.PartLabel     = "";

            m_parts.Add(part);


            // RailExtT ^^
            part = new Part(3093, "RailExtT", this, 1, m_subAssemblyWidth);
            part.PartGroupType = "ExtCladSS-Parts";
            part.PartWidth     = part.Source.Width;
            part.PartThick     = part.Source.Height;
            part.PartLabel     = "";

            m_parts.Add(part);


            // RailExtB ||
            part = new Part(3093, "RailExtB", this, 1, m_subAssemblyWidth);
            part.PartGroupType = "ExtCladSS-Parts";
            part.PartWidth     = part.Source.Width;
            part.PartThick     = part.Source.Height;
            part.PartLabel     = "";

            m_parts.Add(part);


            #endregion


            #region IntCladSS


            // StileIntL <<--
            part = new Part(3093, "StileIntL", this, 1, m_subAssemblyHieght);
            part.PartGroupType = "IntCladSS-Parts";
            part.PartWidth     = part.Source.Width;
            part.PartThick     = part.Source.Height;
            part.PartLabel     = "";

            m_parts.Add(part);


            // StileIntR -->>
            part = new Part(3093, "StileIntR", this, 1, m_subAssemblyHieght);
            part.PartGroupType = "IntCladSS-Parts";
            part.PartWidth     = part.Source.Width;
            part.PartThick     = part.Source.Height;
            part.PartLabel     = "";

            m_parts.Add(part);


            // RailIntT ^^
            part = new Part(3093, "RailIntT", this, 1, m_subAssemblyWidth);
            part.PartGroupType = "IntCladSS-Parts";
            part.PartWidth     = part.Source.Width;
            part.PartThick     = part.Source.Height;
            part.PartLabel     = "";

            m_parts.Add(part);


            // RailIntB ||
            part = new Part(3093, "RailIntB", this, 1, m_subAssemblyWidth);
            part.PartGroupType = "IntCladSS-Parts";
            part.PartWidth     = part.Source.Width;
            part.PartThick     = part.Source.Height;
            part.PartLabel     = "";

            m_parts.Add(part);


            #endregion


            #region HardWare Logic


            // Hinge
            part = new Part(911, "Hinge", this, 3, 0.0m);
            part.PartGroupType = "Hardware-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);



            // Hoppe9000Gear

            Hoppe hoppe = new Hoppe(m_subAssemblyHieght, this);
            foreach (Part innerpart in hoppe.Parts)
            {
                //inner
                this.Parts.Add(innerpart);
            }



            #endregion


            #region HDPEdge


            part = new Part(3383, "HDPEdgeLeft", this, 1, m_subAssemblyHieght);
            part.PartGroupType = "HDPEdge-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            part = new Part(3335, "HDPEdgeRight", this, 1, m_subAssemblyHieght);
            part.PartGroupType = "HDPEdge-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            part = new Part(3383, "HDPEdgeTop", this, 1, m_subAssemblyWidth);
            part.PartGroupType = "HDPEdge-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            part = new Part(3388, "HDPEdgeBottom", this, 1, m_subAssemblyWidth);
            part.PartGroupType = "HDPEdge-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            #endregion


            #region Glass



            //Glass Panel

            part = new Part(3122);
            part.FunctionalName    = "Glass";
            part.PartGroupType     = "Glass-Parts";
            part.Qnty              = 1;
            part.PartName          = "PartName";
            part.PartLabel         = "";
            part.ContainerAssembly = this;
            part.PartWidth         = m_subAssemblyWidth - (2.46875m * 2.0m);
            part.PartLength        = m_subAssemblyHieght - (2.46875m * 2.0m);

            m_parts.Add(part);



            #endregion


            #region Seal/Weatherstripping


            decimal peri = Functions.Perimeter(m_subAssemblyHieght, m_subAssemblyWidth);

            //Sash Edge Seal
            part = new Part(911, "Edge Seal", this, 1, peri * 2.0m);
            part.PartGroupType = "Seal-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);

            peri = Functions.Perimeter(m_subAssemblyHieght - 1.53125m, m_subAssemblyWidth - 1.53125m);

            //Glazing Seals
            part = new Part(911, "Glazing Seal", this, 1, peri * 2.0m);
            part.PartGroupType = "Seal-Parts";
            part.PartLabel     = "";

            m_parts.Add(part);


            #endregion


            #region Labor

            part = new LPart("Design", this, 4.0m, 80.0m);
            m_parts.Add(part);
            //Collect Information on Sizes: Measure: Provide Information for Approval: Order: Supervision

            part = new LPart("Draft", this, 3.0m, 80.0m);
            m_parts.Add(part);
            //Typical Drawings

            part = new LPart("MetalHours", this, 12.0m, 80.0m);
            m_parts.Add(part);
            //1 Recieve: 1 Handle: 1 CutSash: 1 CutGlassStop: 1.5 Machine: 1.5 Hardware Prep: 1 Mount Hardware: 4 Weld:

            part = new LPart("Finish", this, 4.0m, 80.0m);
            m_parts.Add(part);
            //2 Sand Linegrain: 2 Finish:

            part = new LPart("PatinaMat", this, this.m_perimeter, 1.62m);
            m_parts.Add(part);
            //$1.62 per inch

            part = new LPart("Glazing", this, (this.Area * .10m) + 4.5m, 80.0m);
            m_parts.Add(part);
            //0.5 Order: 0.5 Recieve: 1.0 Inspect/Reject: 0.5 Store/Handle: 0.5 SetGlass/Shim&Calk: 0.5 Set GlassStop: 0.5 GlazingSeals

            part = new LPart("Prehang", this, (this.Area * .10m) + 3.0m, 80.0m);
            m_parts.Add(part);
            //2 FitSash into Frame: 1 Mount Weather Strips/Seals

            part = new LPart("Stage", this, 1.0m, 80.0m);
            m_parts.Add(part);
            //1 Stage

            part = new LPart("Load", this, 1.0m, 80.0m);
            m_parts.Add(part);
            //1 Load


            #endregion
        }