//--------------------------------------------------------------------------- public object GetValeurChamp(string strIdVariable) { if (m_elementAVariablesExternes != null) { return(m_elementAVariablesExternes.GetValeurChamp(strIdVariable)); } object ret = null; if (!m_dicValeursVariables.ContainsKey(strIdVariable)) { IVariableDynamique variable = GetVariable(strIdVariable); IVariableDynamiqueAValeurParDefaut variableADefaut = variable as IVariableDynamiqueAValeurParDefaut; if (variableADefaut != null) { return(variableADefaut.GetValeurParDefaut()); } IVariableDynamiqueCalculee variableCalculee = variable as IVariableDynamiqueCalculee; if (variableCalculee != null && variableCalculee.FormuleDeCalcul != null) { CContexteEvaluationExpression ctx = new CContexteEvaluationExpression(this); CResultAErreur result = variableCalculee.FormuleDeCalcul.Eval(ctx); if (result) { return(result.Data); } } } m_dicValeursVariables.TryGetValue(strIdVariable, out ret); return(ret); }
//-------------------------------------------------------------- public object GetValeurChamp(string strCleVariable) { object val = null; m_dicValeursChamps.TryGetValue(strCleVariable, out val); if (val == null) { if (!m_dicValeursChamps.ContainsKey(strCleVariable)) { foreach (IVariableDynamique v in ListeVariables) { if (v.IdVariable == strCleVariable) { IVariableDynamiqueAValeurParDefaut vAvecDef = v as IVariableDynamiqueAValeurParDefaut; if (vAvecDef != null) { val = vAvecDef.GetValeurParDefaut(); } else { IVariableDynamiqueCalculee varCalc = v as IVariableDynamiqueCalculee; if (varCalc != null) { if (varCalc.FormuleDeCalcul != null) { CContexteEvaluationExpression ctx = new CContexteEvaluationExpression(this); CResultAErreur res = varCalc.FormuleDeCalcul.Eval(ctx); if (res) { return(res.Data); } } return(null); } } break; } } } m_dicValeursChamps[strCleVariable] = val; } return(val); }