/// <summary>
 /// Va chercher toute les analyses
 /// </summary>
 /// <returns></returns>
 private IEnumerable <ADR_Analysis_Result> GetAnalysis()
 {
     using (AnalysisResultRepositoty AnalysisResultRepositoty = new AnalysisResultRepositoty())
     {
         return(AnalysisResultRepositoty.Get());
     }
 }
 /// <summary>
 /// Va chercher toute les analyses avec le numéro d'ordre
 /// </summary>
 /// <returns></returns>
 private IEnumerable <ADR_Analysis_Result> GetAnalysis(string OrderNbs, string WorkCenter)
 {
     using (AnalysisResultRepositoty AnalysisResultRepositoty = new AnalysisResultRepositoty())
     {
         return(AnalysisResultRepositoty.GetAllByOrderNbsAndWorkCenter(OrderNbs, WorkCenter));
     }
 }
        /// <summary>
        /// Delete Analysis
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnDelete_Click(object sender, EventArgs e)
        {
            if (SelectedAnalysis != null)
            {
                if (MessageBox.Show("Voulez-vous supprimer l'analyse ?", "Supprimer une analyse", MessageBoxButtons.YesNo) == DialogResult.Yes)
                {
                    FrmWait.ShowWatingForms("Suppression de l'analyse en cours.");

                    List <ADR_Analysis_Parameters> Parameters;

                    using (AnalysisParametersRepository AnalysisParametersRepository = new AnalysisParametersRepository())
                    {
                        Parameters = AnalysisParametersRepository.GetByAnalysis(SelectedAnalysis.Id).ToList();
                    }

                    foreach (ADR_Analysis_Parameters parameter in Parameters)
                    {
                        using (AnalysisParametersRepository AnalysisParametersRepository = new AnalysisParametersRepository())
                        {
                            AnalysisParametersRepository.Delete(parameter);
                        }
                    }

                    using (AnalysisResultRepositoty AnalysisResultRepositoty = new AnalysisResultRepositoty())
                    {
                        AnalysisResultRepositoty.Delete(SelectedAnalysis);
                    }

                    using (SAPOrdersRepository SAPOrdersRepository = new SAPOrdersRepository())
                    {
                        ADR_SAPOrders SAPOrder = SAPOrdersRepository.GetByOrderNbs(SelectedAnalysis.OrderNbs);
                        SAPOrder.AnalysisNbs = null;
                        SAPOrdersRepository.Update(SAPOrder);
                    }



                    GenerateHistorique.CreateHistorique(FormUser.UserID, "Deleted", $"Suppression d'une analyse {SelectedAnalysis.AnalysisNbs}");

                    btnDelete.Enabled = false;
                    SelectedAnalysis  = null;

                    FrmWait.CloseForm();

                    FrmDeleteAnalyse_Load(null, null);
                }
            }
        }