Пример #1
0
        private void btYieldChartRefresh_Click(object sender, RoutedEventArgs e)
        {
            desiredStartDateTimeForYield = this.dtpStartDateForYield.SelectedDate;
            desiredStartDateTimeForYield = new DateTime(desiredStartDateTimeForYield.Value.Year, desiredStartDateTimeForYield.Value.Month, desiredStartDateTimeForYield.Value.Day, 0, 0, 0);

            desiredEndDateTimeForYield = this.dtpEndDateForYield.SelectedDate;
            desiredEndDateTimeForYield = new DateTime(desiredEndDateTimeForYield.Value.Year, desiredEndDateTimeForYield.Value.Month, desiredEndDateTimeForYield.Value.Day, 23, 59, 59);

            dtYield.Rows.Clear();
            string[] interestedTables = new string[] { $"{projectName}_FCT_Summary", $"{ projectName}_SFG_Summary", $"{projectName}_FG00", $"{projectName}_FG24" };
            string   excludedLineId   = this.cmbReworkLine.Text;

            for (int index = 0; index < interestedTables.Length; index++)
            {
                YieldRateBreakDown yieldrate = myDatabase.GetYieldRateBreakdown(interestedTables[index], desiredStartDateTimeForYield.Value, desiredEndDateTimeForYield.Value, excludedLineId);
                this.AddRowToYieldDataTable(yieldrate);
            }
        }
Пример #2
0
        private void AddRowToYieldDataTable(YieldRateBreakDown yrBreakDown)
        {
            DataRow row = dtYield.NewRow();

            row["Station"]    = yrBreakDown.station;
            row["InputCount"] = yrBreakDown.inputCount;
            row["FailCount"]  = yrBreakDown.failureCount;
            if (yrBreakDown.inputCount != 0)
            {
                row["FailRate"] = Math.Round(100.0 * yrBreakDown.failureCount / yrBreakDown.inputCount, 3);
            }
            for (int i = 0; i < Math.Min(5, yrBreakDown.FailurePattern.Count); i++)
            {
                string header1 = $"Top{i + 1}EC";
                string header2 = $"Top{i + 1}Count";
                string value1  = yrBreakDown.FailurePattern.ElementAt(i).Key;
                int    value2  = yrBreakDown.FailurePattern.ElementAt(i).Value;
                row[header1] = value1;
                row[header2] = value2;
            }
            dtYield.Rows.Add(row);
        }