private void btnRestoreInspectionPlan_Click(object sender, EventArgs e)
        {
            WaitForm2 wf = new WaitForm2();

            wf.Show();
            dtgvInsHis.Rows.Clear();

            RW_ASSESSMENT_BUS              rwAssBus    = new RW_ASSESSMENT_BUS();
            INSPECTION_COVERAGE_BUS        insCovBus   = new INSPECTION_COVERAGE_BUS();
            INSPECTION_PLAN_BUS            inPlanBus   = new INSPECTION_PLAN_BUS();
            INSPECTION_COVERAGE_DETAIL_BUS insCovDeBus = new INSPECTION_COVERAGE_DETAIL_BUS();
            DM_ITEMS_BUS dmItemsBus     = new DM_ITEMS_BUS();
            List <int>   listIDCoverage = insCovBus.getlistIDbyEquipmentIDandComponentID(rwAssBus.getEquipmentID(IDAss), rwAssBus.getComponentID(IDAss));

            foreach (int i in listIDCoverage)
            {
                List <int> listIDDetal = insCovDeBus.getIDbyCoverageID(i);
                foreach (int j in listIDDetal)
                {
                    INSPECTION_COVERAGE_DETAIL insCovDe = insCovDeBus.getDataSourcebyID(j);
                    dtgvInsHis.Rows.Add(inPlanBus.getPlanName(insCovBus.getPlanIDbyID(i)), insCovDe.InspectionDate.ToShortDateString(), dmItemsBus.getDMDescriptionbyDMItemID(insCovDe.DMItemID), insCovDe.InspectionSummary, "...", insCovDe.EffectivenessCode, insCovDe.IsCarriedOut, insCovDe.CarriedOutDate.ToShortDateString(), "Delete");
                }
            }
            int n = dtgvInsHis.RowCount;

            for (int i = 0; i < n; i++)
            {
                dtgvInsHis.Rows[i].ReadOnly          = true;
                dtgvInsHis.Rows[i].Cells[6].ReadOnly = false;
                dtgvInsHis.Rows[i].Cells[5].ReadOnly = false;
                dtgvInsHis.Rows[i].Cells[8].ReadOnly = false;
                dtgvInsHis.Rows[i].Cells[3].ReadOnly = false;
            }
            wf.Close();
        }
        private void UCInspectionHistorySubform_Load(object sender, EventArgs e)
        {
            DataGridViewTextBoxColumn dtvcInsPlan = new DataGridViewTextBoxColumn();

            dtvcInsPlan.HeaderText = "Inspection Plan";
            DataGridViewTextBoxColumn dtvcInsDate = new DataGridViewTextBoxColumn();

            dtvcInsDate.HeaderText = "Inspection Date";
            DataGridViewComboBoxColumn dtvcDamaMechan = new DataGridViewComboBoxColumn();

            dtvcDamaMechan.HeaderText = "Damage Mechanism";
            //add items cho dtvcDamaMechan
            DM_ITEMS_BUS  dmItemsBus  = new DM_ITEMS_BUS();
            List <string> listDMItems = dmItemsBus.getDMDescription();

            foreach (String dm in listDMItems)
            {
                dtvcDamaMechan.Items.Add(dm);
            }
            dtvcDamaMechan.MaxDropDownItems = 4;
            DataGridViewTextBoxColumn dtvcInsSum = new DataGridViewTextBoxColumn();

            dtvcInsSum.HeaderText = "Inspection Summary";
            DataGridViewButtonColumn dtvcSumDetail = new DataGridViewButtonColumn();

            dtvcSumDetail.HeaderText = "Summary Detail";
            dtvcSumDetail.Name       = "dtvcSumDetail";
            DataGridViewComboBoxColumn dtvcEffective = new DataGridViewComboBoxColumn();

            dtvcEffective.Items.Add("A");
            dtvcEffective.Items.Add("B");
            dtvcEffective.Items.Add("C");
            dtvcEffective.Items.Add("D");
            dtvcEffective.Items.Add("E");
            dtvcEffective.HeaderText = "Effectiveness";
            DataGridViewCheckBoxColumn dtvcCarriedOut = new DataGridViewCheckBoxColumn();

            dtvcCarriedOut.HeaderText = "Carried Out";
            DataGridViewTextBoxColumn dtvcICarriedOutDate = new DataGridViewTextBoxColumn();

            dtvcICarriedOutDate.HeaderText = "Carried Out Date";
            DataGridViewButtonColumn dtvcDelete = new DataGridViewButtonColumn();

            dtvcDelete.HeaderText = "";
            dtvcDelete.Name       = "dtvcDelete";
            dtgvInsHis.Columns.Add(dtvcInsPlan);
            dtvcInsPlan.Width = 100;
            dtgvInsHis.Columns.Add(dtvcInsDate);
            dtvcInsDate.Width = 80;
            dtgvInsHis.Columns.Add(dtvcDamaMechan);
            dtvcDamaMechan.Width = 150;
            dtgvInsHis.Columns.Add(dtvcInsSum);
            dtvcInsSum.Width = 200;
            dtgvInsHis.Columns.Add(dtvcSumDetail);
            dtvcSumDetail.Width = 50;
            dtgvInsHis.Columns.Add(dtvcEffective);
            dtvcEffective.Width = 70;
            dtgvInsHis.Columns.Add(dtvcCarriedOut);
            dtvcCarriedOut.Width = 60;
            dtgvInsHis.Columns.Add(dtvcICarriedOutDate);
            dtvcICarriedOutDate.Width = 80;
            dtgvInsHis.Columns.Add(dtvcDelete);
            dtvcDelete.Width = 50;
            RW_INSPECTION_HISTORY_BUS   rwInspHisBus = new RW_INSPECTION_HISTORY_BUS();
            List <RW_INSPECTION_DETAIL> lstRwInsDe   = rwInspHisBus.getDataSourcebyDetailID(IDAss);

            foreach (RW_INSPECTION_DETAIL de in lstRwInsDe)
            {
                dtgvInsHis.Rows.Add(de.InspPlanName, de.InspectionDate.ToShortDateString(), dmItemsBus.getDMDescriptionbyDMItemID(de.DMItemID), de.InspectionSummary, "...", de.EffectivenessCode, de.IsCarriedOut, de.CarriedOutDate, "Delete");
            }
            dtgvInsHis.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.None;
            dtgvInsHis.AllowUserToAddRows  = false;
        }