/// <summary> /// ////////////////////////////////////////////////// /// </summary> /// <param name="tableOrigines"></param> public override void AddProprietesOrigineToTable( Type typeSource, Hashtable tableOrigines, string strChemin, CContexteDonnee contexteDonnee) { if (strChemin.Length > 0) { strChemin += "."; } string[] strProps = CInterpreteurProprieteDynamique.GetProprietesAccedees(typeSource, ChampOrigine.NomPropriete); if (strProps != null) { foreach (string strProp in strProps) { tableOrigines[strChemin + strProp] = true; } } else { string strOrigine = ChampOrigine.NomPropriete; tableOrigines[strChemin + strOrigine] = true; } /* * if (ChampOrigine is CDefinitionProprieteDynamiqueChampCalcule) * { * if (contexteDonnee != null) * { * CDefinitionProprieteDynamiqueChampCalcule defCal = (CDefinitionProprieteDynamiqueChampCalcule)ChampOrigine; * CChampCalcule champCal = new CChampCalcule(contexteDonnee); * if (champCal.ReadIfExists(defCal.IdChamp)) * { * C2iExpression expression = champCal.Formule; * if (expression != null) * { * CArbreDefinitionsDynamiques arbre = new CArbreDefinitionsDynamiques(null); * expression.GetArbreProprietesAccedees(arbre); * CDefinitionProprieteDynamiqueChampCalcule.DetailleSousArbres(arbre, contexteDonnee); * AddProprietesArbre(arbre, tableOrigines, strChemin); * } * } * } * } * else * { * string strOrigine = ChampOrigine.NomPropriete; * tableOrigines[strChemin + strOrigine] = true; * }*/ }