public ProjetForfait( string nomprojet, DateTime debut, DateTime fin, Client cli,
 string contact, string mailcontact, decimal mtc, Penalite cp, Collaborateur chef) : base( nomprojet, debut, fin, cli, contact, mailcontact)
 {
     this.MontantContrat = mtc;
     this.ChefDeProjet = chef;
     this.PenaliteOuiNon = cp;
 }
        // constructeurs

        public ProjetForfait(int code, string nomprojet, DateTime debut, DateTime fin, Client cli,
         string contact, string mailcontact, decimal mtc, Penalite cp, Collaborateur chef): base(code, nomprojet,  debut,  fin,  cli, contact,  mailcontact)
        {
            this.MontantContrat = mtc;
            this.ChefDeProjet = chef;
            this.PenaliteOuiNon = cp;
            this.previsions = new List<Prevision>();
        }
        public static List<Collaborateur> GetAllChefs()
        {
            List<Collaborateur> Chefs = new List<Collaborateur>();
            // création connection
            using (SqlConnection sqlConnect = GetConnection())
            {
                using (SqlCommand sqlCde = new SqlCommand())
                {
                    //initialiser la connection de la commande
                    sqlCde.Connection = sqlConnect;
                    // chargement des collaborateurs + leur qualif
                    String strSql = "select idColl, nomColl, prenomColl, dembauche, prJournalier , c.idqualif "
                                     + "from dbo.collaborateur c "
                                     + " where c.idqualif=1";
                    sqlCde.CommandText = strSql;
                    // Exécution de la commande
                    try
                    {
                        SqlDataReader sqlRdr = sqlCde.ExecuteReader();
                        while (sqlRdr.Read())
                        {
                            // date embauche peut être null :
                            // non utilisé , utilisation opérateur ternaire dans le constructeur
                            //DateTime? dt = null;
                            //if (!sqlRdr.IsDBNull(3)) dt = sqlRdr.GetDateTime(3);

                            Collaborateur oCollab = new Collaborateur(sqlRdr.GetInt32(0), sqlRdr.GetString(1), sqlRdr.GetString(2), sqlRdr.IsDBNull(3)? (DateTime?)null : sqlRdr.GetDateTime(3),
                                            sqlRdr.GetDecimal(4), new Qualification() { CodeQualif = Convert.ToSByte(sqlRdr[5]) });
                            Chefs.Add(oCollab);
                        }
                        sqlRdr.Close();
                        return Chefs;
                    }
                    catch (SqlException se)
                    {
                        throw new DaoExceptionFinAppli("Lecture des collaborateurs impossible, l'application va se fermer: \n" + se.Message, se);
                    }
                }
            }
        }