//-------------------------------------------------------------------
        public override CResultAErreur TraitementAvantSauvegarde(CContexteDonnee contexte)
        {
            CResultAErreur result = base.TraitementAvantSauvegarde(contexte);
            DataTable      table  = contexte.Tables[GetNomTable()];

            foreach (DataRow row in new ArrayList(table.Rows))
            {
                if (row.RowState == DataRowState.Modified || row.RowState == DataRowState.Added)
                {
                    CIntervention_Intervenant rel = new CIntervention_Intervenant(row);
                    foreach (CFractionIntervention fraction in rel.Intervention.Fractions)
                    {
                        fraction.ForceChangementSyncSession();
                    }
                    if (rel.RelationProfil == null && rel.Intervention != null && rel.Intervention.TypeIntervention != null &&
                        rel.Intervention.TypeIntervention.RelationsProfilsIntervenants.Count > 0)
                    {
                        rel.RelationProfil = rel.Intervention.TypeIntervention.RelationsProfilsIntervenants[0] as CTypeIntervention_ProfilIntervenant;
                    }
                    if (rel.Intervenant == null)
                    {
                        rel.Delete(true);
                    }
                }
            }
            return(result);
        }
        //-------------------------------------------------------------------
        public override CResultAErreur VerifieDonnees(CObjetDonnee objet)
        {
            CResultAErreur result = CResultAErreur.True;

            try
            {
                CIntervention_Intervenant relation = (CIntervention_Intervenant)objet;
            }
            catch (Exception e)
            {
                result.EmpileErreur(new CErreurException(e));
            }
            return(result);
        }
        //---------------------------------------------------------------------------------------
        protected override CResultAErreur MyInitChamps(CCustomizableListItem item)
        {
            CResultAErreur result = base.MyInitChamps(item);

            if (item != null)
            {
                if (m_intervention != null && m_relProfil != null)
                {
                    if (!IsCreatingImage)
                    {
                        // Init la la TextBoxSelectionne avec le filtre par défaut des Intervenants et un filtre rapide
                        CFiltreData filtre = null;
                        if (m_intervention != null && m_intervention.TypeIntervention != null && m_intervention.TypeIntervention.FiltreDynamiqueIntervenants != null)
                        {
                            result = m_intervention.TypeIntervention.FiltreDynamiqueIntervenants.GetFiltreData();
                            if (result)
                            {
                                filtre = result.Data as CFiltreData;
                            }
                        }
                        m_txtSelectIntervenant.InitAvecFiltreDeBase <CActeur>("IdentiteComplete", filtre, true);
                    }
                    else
                    {
                        m_txtSelectIntervenant.Init <CActeur>("IdentiteComplete", false);
                    }
                }
                CIntervention_Intervenant rel = item.Tag as CIntervention_Intervenant;
                if (rel != null && rel.IsValide())
                {
                    m_txtSelectIntervenant.ElementSelectionne = rel.Intervenant;
                }
                else
                {
                    m_txtSelectIntervenant.ElementSelectionne = null;
                }
            }
            return(result);
        }
        //---------------------------------------------------------------------------------------
        protected override CResultAErreur MyMajChamps()
        {
            CResultAErreur result = base.MyMajChamps();

            if (result && CurrentItem != null)
            {
                CIntervention_Intervenant rel = CurrentItem.Tag as CIntervention_Intervenant;
                CActeur acteur = m_txtSelectIntervenant.ElementSelectionne as CActeur;
                if (rel == null && acteur != null)
                {
                    rel = new CIntervention_Intervenant(m_intervention.ContexteDonnee);
                    rel.CreateNewInCurrentContexte();
                    rel.Intervention   = m_intervention;
                    rel.RelationProfil = m_relProfil;
                    CurrentItem.Tag    = rel;
                }
                if (rel != null)
                {
                    rel.Intervenant = acteur;
                }
            }
            return(result);
        }