////////////////////////////////////////////////////////// public CArbreTable IntegreRelation(CInfoRelationComposantFiltre relation, bool bIsLeftOuter, int nIdGroupeRelation) { foreach (CArbreTableFille arbre in m_listeTablesLiees) { if (arbre.Relation.RelationKey == relation.RelationKey && arbre.Relation.IsRelationFille == relation.IsRelationFille && arbre.IdGroupeRelation == nIdGroupeRelation) { if (bIsLeftOuter && !arbre.IsLeftOuter) { arbre.IsLeftOuter = bIsLeftOuter; } return(arbre); } } //la table dépendante n'existe pas string strIdAlias = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; string strNumAlias = strIdAlias[m_listeTablesLiees.Count] + ""; CArbreTableFille arbreNew = new CArbreTableFille(this, relation, RacineAliasFils + strNumAlias); arbreNew.IsLeftOuter = bIsLeftOuter; arbreNew.IdGroupeRelation = nIdGroupeRelation; m_listeTablesLiees.Add(arbreNew); return(arbreNew); }
public int Compare(object x, object y) { CArbreTableFille arbre1 = x as CArbreTableFille; CArbreTableFille arbre2 = y as CArbreTableFille; if (arbre1 == null || arbre2 == null) { return(0); } return(arbre1.Relation.IsRelationFille.CompareTo(arbre2.Relation.IsRelationFille)); }