//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 Sash if (pweight <= 106.0m) { // Casement Hinge 995 T,996 B labelStileR = ""; labelStileL = ""; labelTopRail = "M-996"; labelBotRail = "M-995"; } else if (pweight > 106) { // Butt Hinge 665 labelStileR = ""; labelStileL = "M-665"; labelTopRail = ""; labelBotRail = ""; } // StileR -->> part = new Part(1167, "StileR", this, 1, m_subAssemblyHieght); part.PartGroupType = "Sash-Parts"; part.PartWidth = part.Source.Width; part.PartThick = part.Source.Height; part.PartLabel = labelStileR; m_parts.Add(part); // StileL <<-- part = new Part(1167, "StileL", this, 1, m_subAssemblyHieght); part.PartGroupType = "Sash-Parts"; part.PartWidth = part.Source.Width; part.PartThick = part.Source.Height; part.PartLabel = labelStileL; m_parts.Add(part); // RailT ^^ part = new Part(1167, "RailT", this, 1, m_subAssemblyWidth); part.PartGroupType = "Sash-Parts"; part.PartWidth = part.Source.Width; part.PartThick = part.Source.Height; part.PartLabel = labelTopRail; m_parts.Add(part); // RailB || part = new Part(1167, "RailB", this, 1, m_subAssemblyWidth); part.PartGroupType = "Sash-Parts"; part.PartWidth = part.Source.Width; part.PartThick = part.Source.Height; part.PartLabel = labelBotRail; m_parts.Add(part); #endregion #region Filler part = new Part(1816, "Filler-Top", this, 1, m_subAssemblyWidth + 0.25m); part.PartGroupType = "Filler-Parts"; part.PartLabel = ""; m_parts.Add(part); part = new Part(1817, "Filler-Bottom", this, 1, m_subAssemblyWidth + 0.25m); part.PartGroupType = "Filler-Parts"; part.PartLabel = ""; m_parts.Add(part); part = new Part(1816, "Filler-Left", this, 1, m_subAssemblyHieght + 0.25m); part.PartGroupType = "Filler-Parts"; part.PartLabel = ""; m_parts.Add(part); part = new Part(1813, "Filler-Right", this, 1, m_subAssemblyHieght + 0.25m); part.PartGroupType = "Filler-Parts"; part.PartLabel = ""; m_parts.Add(part); #endregion #region Stop // StopFrontLeft part = new Part(809, "StopFrontLeft", this, 1, m_subAssemblyHieght - 2 * 1.3125m); part.PartGroupType = "Stop-Parts"; part.PartLabel = "MiterEnds"; m_parts.Add(part); // StopRearLeft part = new Part(809, "StopRearLeft", this, 1, m_subAssemblyHieght - 2 * 1.3125m); part.PartGroupType = "Stop-Parts"; part.PartLabel = "MiterEnds"; m_parts.Add(part); // StopFrontRight part = new Part(809, "StopFrontRight", this, 1, m_subAssemblyHieght - 2 * 1.3125m); part.PartGroupType = "Stop-Parts"; part.PartLabel = "MiterEnds"; m_parts.Add(part); // StopRearRight part = new Part(809, "StopRearRight", this, 1, m_subAssemblyHieght - 2 * 1.3125m); part.PartGroupType = "Stop-Parts"; part.PartLabel = "MiterEnds"; m_parts.Add(part); // StopFrontTop part = new Part(809, "StopFrontTop", this, 1, m_subAssemblyWidth - 2 * 1.3125m); part.PartGroupType = "Stop-Parts"; part.PartLabel = "MiterEnds"; m_parts.Add(part); // StopRearTop part = new Part(809, "StopRearTop", this, 1, m_subAssemblyWidth - 2 * 1.3125m); part.PartGroupType = "Stop-Parts"; part.PartLabel = "MiterEnds"; m_parts.Add(part); // StopFrontBot string crap; crap = FrameWorks.Functions.StopWeepMachining(m_subAssemblyWidth - 2 * 1.3125m); part = new Part(809, "StopFrontBot", this, 1, m_subAssemblyWidth - 2 * 1.3125m); part.PartGroupType = "Stop-Parts"; part.PartLabel = "1)MiterEnds" + "\r\n" + "2)" + crap; m_parts.Add(part); // StopRearBot part = new Part(809, "StopRearBot", this, 1, m_subAssemblyWidth - 2 * 1.3125m); part.PartGroupType = "Stop-Parts"; part.PartLabel = "MiterEnds"; m_parts.Add(part); #endregion #region Glass //Glass Panel part = new Part(2828); part.FunctionalName = "Glass"; part.PartGroupType = "Glass-Parts"; part.Qnty = 1; part.PartName = "PartName"; part.PartLabel = ""; part.ContainerAssembly = this; part.PartWidth = m_subAssemblyWidth - (1.625m * 2.0m); part.PartLength = m_subAssemblyHieght - (1.625m * 2.0m); m_parts.Add(part); #endregion #region Seal/Weatherstripping decimal peri = FrameWorks.Functions.Perimeter(m_subAssemblyHieght, m_subAssemblyWidth); //Sash Edge Seal part = new Part(1769, "Edge Seal", this, 1, peri * 2.0m); part.PartGroupType = "Seal-Parts"; part.PartLabel = ""; m_parts.Add(part); peri = FrameWorks.Functions.Perimeter(m_subAssemblyHieght - 1.53125m, m_subAssemblyWidth - 1.53125m); //Glazing Seals part = new Part(1819, "Glazing Seal", this, 1, peri * 2.0m); part.PartGroupType = "Seal-Parts"; part.PartLabel = ""; m_parts.Add(part); #endregion #region HardWare Logic // PivotSetRHR part = new Part(2110, "PivotSetRHR", this, 1, 0.0m); part.PartGroupType = "Hardware-Parts"; part.PartLabel = "RHR"; m_parts.Add(part); // TopPivotBacker part = new Part(2553, "TopPivHngBacker", this, 1, 0.0m); part.PartGroupType = "Hardware-Parts"; part.PartLabel = ""; m_parts.Add(part); if (m_subAssemblyHieght > 72) { // IntermediatePivotBacker part = new Part(2553, "IntrmdPivHngBkr", this, 1, m_subAssemblyHieght); part.PartGroupType = "Hardware-Parts"; part.PartLabel = ""; m_parts.Add(part); } // BottomPivotBacker part = new Part(2555, "BotPivHngBacker", this, 1, 0.0m); part.PartGroupType = "Hardware-Parts"; part.PartLabel = ""; m_parts.Add(part); // Assembly Braces part = new Part(1117, "Assembly Braces", this, 8, 0.0m); part.PartGroupType = "Hardware-Parts"; part.PartLabel = ""; m_parts.Add(part); //LeverHoppe FrameWorks.Makes.System3000.HoppeCasement hoppe = new FrameWorks.Makes.System3000.HoppeCasement(m_subAssemblyHieght, this); foreach (Part innerpart in hoppe.Parts) { //inner this.Parts.Add(innerpart); } #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("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 }
//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 Sash if (pweight <= 106.0m) { // Casement Hinge 995 T,996 B labelStileR = ""; labelStileL = ""; labelTopRail = "M-996"; labelBotRail = "M-995"; } else if (pweight > 106) { // Butt Hinge 665 labelStileR = ""; labelStileL = "M-665"; labelTopRail = ""; labelBotRail = ""; } // StileR -->> part = new Part(1167, "StileR", this, 1, m_subAssemblyHieght); part.PartGroupType = "Sash-Parts"; part.PartWidth = part.Source.Width; part.PartThick = part.Source.Height; part.PartLabel = labelStileR; m_parts.Add(part); // StileL <<-- part = new Part(1167, "StileL", this, 1, m_subAssemblyHieght); part.PartGroupType = "Sash-Parts"; part.PartWidth = part.Source.Width; part.PartThick = part.Source.Height; part.PartLabel = labelStileL; m_parts.Add(part); // RailT ^^ part = new Part(1167, "RailT", this, 1, m_subAssemblyWidth); part.PartGroupType = "Sash-Parts"; part.PartWidth = part.Source.Width; part.PartThick = part.Source.Height; part.PartLabel = labelTopRail; m_parts.Add(part); // RailB || part = new Part(1167, "RailB", this, 1, m_subAssemblyWidth); part.PartGroupType = "Sash-Parts"; part.PartWidth = part.Source.Width; part.PartThick = part.Source.Height; part.PartLabel = labelBotRail; m_parts.Add(part); #endregion #region Stop // StopFrontLeft part = new Part(809, "StopFrontLeft", this, 1, m_subAssemblyHieght - 2 * 1.3125m); part.PartGroupType = "Stop-Parts"; part.PartLabel = "MiterEnds"; m_parts.Add(part); // StopRearLeft part = new Part(809, "StopRearLeft", this, 1, m_subAssemblyHieght - 2 * 1.3125m); part.PartGroupType = "Stop-Parts"; part.PartLabel = "MiterEnds"; m_parts.Add(part); // StopFrontRight part = new Part(809, "StopFrontRight", this, 1, m_subAssemblyHieght - 2 * 1.3125m); part.PartGroupType = "Stop-Parts"; part.PartLabel = "MiterEnds"; m_parts.Add(part); // StopRearRight part = new Part(809, "StopRearRight", this, 1, m_subAssemblyHieght - 2 * 1.3125m); part.PartGroupType = "Stop-Parts"; part.PartLabel = "MiterEnds"; m_parts.Add(part); // StopFrontTop part = new Part(809, "StopFrontTop", this, 1, m_subAssemblyWidth - 2 * 1.3125m); part.PartGroupType = "Stop-Parts"; part.PartLabel = "MiterEnds"; m_parts.Add(part); // StopRearTop part = new Part(809, "StopRearTop", this, 1, m_subAssemblyWidth - 2 * 1.3125m); part.PartGroupType = "Stop-Parts"; part.PartLabel = "MiterEnds"; m_parts.Add(part); // StopFrontBot string crap; crap = FrameWorks.Functions.StopWeepMachining(m_subAssemblyWidth - 2 * 1.3125m); part = new Part(809, "StopFrontBot", this, 1, m_subAssemblyWidth - 2 * 1.3125m); part.PartGroupType = "GlassStop-Parts"; part.PartLabel = "1)MiterEnds" + "\r\n" + "2)" + crap; m_parts.Add(part); // StopRearBot part = new Part(809, "StopRearBot", this, 1, m_subAssemblyWidth - 2 * 1.3125m); part.PartGroupType = "Stop-Parts"; part.PartLabel = "MiterEnds"; m_parts.Add(part); #endregion #region Muntin // MuntinBarExtV1 || part = new Part(1862, "MuntinBarExtV1", this, 1, m_subAssemblyHieght - 2.0m * 2.0625m); part.PartGroupType = "Muntin-Parts"; part.PartLabel = ""; m_parts.Add(part); // MuntinBarIntV1 || part = new Part(1862, "MuntinBarIntV1", this, 1, m_subAssemblyHieght - 2.0m * 2.0625m); part.PartGroupType = "Muntin-Parts"; part.PartLabel = ""; m_parts.Add(part); // MuntinBarExtV2 || part = new Part(1862, "MuntinBarExtV2", this, 1, m_subAssemblyHieght - 2.0m * 2.0625m); part.PartGroupType = "Muntin-Parts"; part.PartLabel = ""; m_parts.Add(part); // MuntinBarIntV2 || part = new Part(1862, "MuntinBarIntV2", this, 1, m_subAssemblyHieght - 2.0m * 2.0625m); part.PartGroupType = "Muntin-Parts"; part.PartLabel = ""; m_parts.Add(part); #endregion #region FoamTape // Foam Tape Vertical || #2808 part = new Part(2808, "FoamTape", this, 4, m_subAssemblyHieght - 2.0m * 2.0625m); part.PartGroupType = "FoamTape-Parts"; part.PartLabel = ""; m_parts.Add(part); #endregion #region Glass //Glass Panel part = new Part(2828); part.FunctionalName = "Glass"; part.PartGroupType = "Glass-Parts"; part.Qnty = 1; part.PartName = "PartName"; part.PartLabel = ""; part.ContainerAssembly = this; part.PartWidth = m_subAssemblyWidth - (1.625m * 2.0m); part.PartLength = m_subAssemblyHieght - (1.625m * 2.0m); m_parts.Add(part); #endregion #region Seal/Weatherstripping decimal peri = FrameWorks.Functions.Perimeter(m_subAssemblyHieght, m_subAssemblyWidth); //Sash Edge Seal part = new Part(1769, "Edge Seal", this, 1, peri * 2.0m); part.PartGroupType = "Seal-Parts"; part.PartLabel = ""; m_parts.Add(part); peri = FrameWorks.Functions.Perimeter(m_subAssemblyHieght - 1.53125m, m_subAssemblyWidth - 1.53125m); //Glazing Seals part = new Part(1819, "Glazing Seal", this, 1, peri * 2.0m); part.PartGroupType = "Seal-Parts"; part.PartLabel = ""; m_parts.Add(part); #endregion #region Hardware if (pweight <= 106.0m) { // Casement Hinge part = new Part(995, "Casement Hinge", this, 1, 0m); part.PartGroupType = "Hardware-Parts"; part.PartWidth = part.Source.Width; part.PartThick = part.Source.Height; part.PartLabel = ""; m_parts.Add(part); // Casement Hinge part = new Part(996, "Casement Hinge", this, 1, 0m); part.PartGroupType = "Hardware-Parts"; part.PartLabel = ""; m_parts.Add(part); } else if (pweight > 106.0m) { // Butt Hinge int hcount = FrameWorks.Functions.HingeCount(m_subAssemblyHieght); part = new Part(665, "HD Hinge", this, hcount, 0m); part.PartGroupType = "Hardware-Parts"; part.PartLabel = ""; m_parts.Add(part); } FrameWorks.Makes.System3000.HoppeCasement hoppe = new FrameWorks.Makes.System3000.HoppeCasement(m_subAssemblyHieght, this); foreach (Part innerpart in hoppe.Parts) { //inner this.Parts.Add(innerpart); } //LeverHoppe #endregion #region Labor part = new LPart("Design", this, 4.0m, 80.0m); m_parts.Add(part); // Measure: Collect Information on Sizes from Contractor: // Provide Information for Approval: // Samples Correspondence: Ordering: Supervision part = new LPart("Draft", this, 3.0m, 80.0m); m_parts.Add(part); //Typical Drawings: Supervision part = new LPart("MetalHours", this, 8.0m, 80.0m); m_parts.Add(part); //1 Receive: 1 Handle: 1 Cut: 1 Machine: 2 Weld & Assemble: 1 Hardware Prep: 1 NailFin part = new LPart("MuntinHours", this, 6.0m, 80.0m); m_parts.Add(part); //.5 Per Bar this 12 Bars: part = new LPart("GlazingHours", this, (this.Area * 0.1m) + 4.5m, 80.0m); m_parts.Add(part); //.5 Recieve: 1.0 InspectReject: .5 StoreHandle: 1.0 GlazeShimCalk: .5 SetGlassStop: 05 InsertGasket part = new LPart("FinishHours", this, 4.0m, 80.0m); m_parts.Add(part); //2 SandLineGrain: 2 Finish part = new LPart("Stage", this, 0.5m, 80.0m); m_parts.Add(part); //.5 Stage part = new LPart("Load", this, 1.0m, 80.0m); m_parts.Add(part); //1 Load #endregion }