internal void OnChangeVariable(IVariableDynamique variable) { CDefinitionProprieteDynamique defProp = new CDefinitionProprieteDynamiqueVariableDynamique(variable as CVariableDynamique); if (FormuleSelectionObjet != null) { foreach (C2iExpressionChamp expChamp in FormuleSelectionObjet.ExtractExpressionsType(typeof(C2iExpressionChamp))) { CDefinitionProprieteDynamiqueVariableDynamique defVar = expChamp.DefinitionPropriete as CDefinitionProprieteDynamiqueVariableDynamique; if (defVar != null && defVar.IdChamp == variable.IdVariable) { expChamp.DefinitionPropriete = defProp; } } } if (FormuleCondition != null) { foreach (C2iExpressionChamp expChamp in FormuleCondition.ExtractExpressionsType(typeof(C2iExpressionChamp))) { CDefinitionProprieteDynamiqueVariableDynamique defVar = expChamp.DefinitionPropriete as CDefinitionProprieteDynamiqueVariableDynamique; if (defVar != null && defVar.IdChamp == variable.IdVariable) { expChamp.DefinitionPropriete = defProp; } } } foreach (CMacroObjetValeur mv in Valeurs) { mv.OnChangeVariable(variable); } }
//------------------------------------------------------------- public virtual CDefinitionProprieteDynamique[] GetProprietesInstance() { List <CDefinitionProprieteDynamique> lst = new List <CDefinitionProprieteDynamique>(); foreach (I2iObjetGraphique objet in Childs) { CODEQBase instance = objet as CODEQBase; if (instance != null) { DataTable table = new DataTable(); foreach (IColumnDeEasyQuery col in instance.Columns) { try { table.Columns.Add(col.ColumnName, col.DataType); } catch { } } lst.Add(new CDefinitionProprieteDynamiqueDataTable(instance.NomFinal, table)); } } foreach (IVariableDynamique variable in ListeVariables) { bool bHasSubs = CFournisseurGeneriqueProprietesDynamiques.HasSubProperties(variable.TypeDonnee.TypeDotNetNatif); if (variable is CVariableDynamique) { CDefinitionProprieteDynamique def = new CDefinitionProprieteDynamiqueVariableDynamique(variable as CVariableDynamique, bHasSubs); lst.Add(def); } } return(lst.ToArray()); }
/// ///////////////////////////////////////////////////////////// public CDefinitionProprieteDynamique[] GetProprietesInstance() { List <CDefinitionProprieteDynamique> lst = new List <CDefinitionProprieteDynamique>(); foreach (CVariableDynamique variable in ListeVariables) { bool bHasSubs = !variable.TypeDonnee.IsArrayOfTypeNatif && CFournisseurGeneriqueProprietesDynamiques.HasSubProperties(variable.TypeDonnee.TypeDotNetNatif); CDefinitionProprieteDynamique def = new CDefinitionProprieteDynamiqueVariableDynamique(variable, bHasSubs); lst.Add(def); } return(lst.ToArray()); }
internal void OnChangeVariable(IVariableDynamique variable) { CDefinitionProprieteDynamique defProp = new CDefinitionProprieteDynamiqueVariableDynamique(variable as CVariableDynamique); if (FormuleValeur != null) { foreach (C2iExpressionChamp expChamp in FormuleValeur.ExtractExpressionsType(typeof(C2iExpressionChamp))) { CDefinitionProprieteDynamiqueVariableDynamique defVar = expChamp.DefinitionPropriete as CDefinitionProprieteDynamiqueVariableDynamique; if (defVar != null && defVar.IdChamp == variable.IdVariable) { expChamp.DefinitionPropriete = defProp; } } } }
//------------------------------------------------------------- public virtual CDefinitionProprieteDynamique[] GetProprietesInstance() { if (m_elementAVariablesExternes != null) { return(m_elementAVariablesExternes.GetProprietesInstance()); } List <CDefinitionProprieteDynamique> lst = new List <CDefinitionProprieteDynamique>(); foreach (IVariableDynamique variable in ListeVariables) { CDefinitionProprieteDynamiqueVariableDynamique def = new CDefinitionProprieteDynamiqueVariableDynamique( variable); lst.Add(def); } return(lst.ToArray()); }
internal void CreateVariable(CObjetDonnee objet) { CVariableDynamiqueSelectionObjetDonnee variable = new CVariableDynamiqueSelectionObjetDonnee(Macro); if (objet != null) { variable.Nom = objet.DescriptionElement.Trim().Replace("[", "-").Replace("]", "-"); } else { variable.Nom = "V" + variable.IdVariable; } CFiltreDynamique filtre = new CFiltreDynamique(Macro, Macro.ContexteDonnee); filtre.TypeElements = TypeObjet; variable.FiltreSelection = filtre; variable.ExpressionRetournee = new C2iExpressionThis(TypeObjet); string strField = DescriptionFieldAttribute.GetDescriptionField(TypeObjet, "DescriptionElement"); if (strField != "") { CDefinitionProprieteDynamiqueDotNet def = new CDefinitionProprieteDynamiqueDotNet( strField, strField, new CTypeResultatExpression(typeof(string), false), false, true, ""); variable.ExpressionAffichee = new C2iExpressionChamp(def); } Macro.AddVariable(variable); Macro.SetInitialValue(variable, objet as CObjetDonneeAIdNumerique); m_strIdVariableAssociee = variable.IdVariable; CDefinitionProprieteDynamiqueVariableDynamique defSource = new CDefinitionProprieteDynamiqueVariableDynamique(variable); FormuleSelectionObjet = new C2iExpressionChamp(defSource); }