/// //////////////////////////////////////////////////////////////////////////// private void m_menuVariableSaisie_Click(object sender, System.EventArgs e) { CVariableDynamiqueSaisie variable = new CVariableDynamiqueSaisie(m_filtre); if (CFormEditVariableDynamiqueSaisie.EditeVariable(variable, m_filtre)) { m_filtre.AddVariable(variable); m_wndAide.FournisseurProprietes = m_filtre; m_wndAide.RefillChamps(); } }
/// //////////////////////////////////////////////////////////////// public static IVariableDynamique AssureVariableElementCible(CFiltreDynamique filtre, CObjetPourSousProprietes objetPourSousProprietes) { if (objetPourSousProprietes.ElementAVariableInstance as IElementAVariablesDynamiquesAvecContexteDonnee == null) { foreach (IVariableDynamique variable in filtre.ListeVariables) { if (variable.Nom == c_champElementSource) { return(variable); } } CVariableDynamiqueSysteme newVariable = new CVariableDynamiqueSysteme(filtre); newVariable.Nom = c_champElementSource; newVariable.SetTypeDonnee(new sc2i.expression.CTypeResultatExpression(objetPourSousProprietes.TypeAnalyse, false)); filtre.AddVariable(newVariable); return(newVariable); } else { filtre.ElementAVariablesExterne = null; while (filtre.ListeVariables.Length > 0) { filtre.RemoveVariable(filtre.ListeVariables[0]); } filtre.ElementAVariablesExterne = objetPourSousProprietes.ElementAVariableInstance as IElementAVariablesDynamiquesAvecContexteDonnee; return(null); } }
/// ///////////////////////////////////////////////////////////// protected void AssureVariableDossierInFiltre(CFiltreDynamique filtre) { if (filtre == null) { return; } bool bVariableExiste = false; foreach (IVariableDynamique variable in filtre.ListeVariables) { if (variable.Nom == c_nomChampDossier) { bVariableExiste = true; break; } } if (!bVariableExiste) { CVariableDynamiqueSysteme variable = new CVariableDynamiqueSysteme(filtre); variable.Nom = c_nomChampDossier; variable.SetTypeDonnee(new CTypeResultatExpression(typeof(CDossierSuivi), false)); filtre.AddVariable(variable); } filtre.TypeElements = this.TypeSuivi; }
private CVariableDynamique AssureVariableParent() { if (m_filtreDynamique == null) { return(null); } foreach (CVariableDynamique variable in m_filtreDynamique.ListeVariables) { if (variable.Nom == c_strNomVariableFiltre && variable is CVariableDynamiqueSysteme) { if (FolderParent == null || FolderParent.TypeElements == null) { m_filtreDynamique.RemoveVariable(variable); return(null); } else { CVariableDynamiqueSystemeInstance varSys = variable as CVariableDynamiqueSystemeInstance; varSys.SetInstance(FolderParent); return(variable); } } } //La variable n'existe pas if (FolderParent != null && FolderParent.TypeElements != null) { CVariableDynamiqueSystemeInstance variable = new CVariableDynamiqueSystemeInstance(); variable.SetInstance(FolderParent); variable.Nom = c_strNomVariableFiltre; m_filtreDynamique.AddVariable(variable); return(variable); } return(null); }
public void FillInventaireNonRecursifTest5() { // Test Inventaire d'un objet CFiltreDynamique filtreDyn = new CFiltreDynamique(); m_helper.FillInventaireNonRecursifTestHelper <C2iExpression>(filtreDyn); // Asserts Assert.AreEqual(3, m_helper.ListeResultInventaire.Count); // 3 Expressions constante false Assert.AreEqual(1, m_helper.ListeResultHorsInventaire.Count); // 1 Formulaire C2iWndFenetre qui utilise des C2iExpression m_helper.FillInventaireNonRecursifTestHelper <CFiltreData>(filtreDyn); Assert.AreEqual(0, m_helper.ListeResultInventaire.Count); // Assert.AreEqual(0, m_helper.ListeResultHorsInventaire.Count); // C2iWndFenetre fenetre = filtreDyn.FormulaireEdition as C2iWndFenetre; m_helper.FillInventaireNonRecursifTestHelper <C2iExpression>(fenetre); Assert.AreEqual(0, m_helper.ListeResultInventaire.Count); Assert.AreEqual(18, m_helper.ListeResultHorsInventaire.Count); m_helper.FillInventaireNonRecursifTestHelper <CFormuleNommee>(fenetre); Assert.AreEqual(3, m_helper.ListeResultInventaire.Count); Assert.AreEqual(0, m_helper.ListeResultHorsInventaire.Count); m_helper.FillInventaireNonRecursifTestHelper <C2iExpression>(fenetre); Assert.AreEqual(0, m_helper.ListeResultInventaire.Count); Assert.AreEqual(24, m_helper.ListeResultHorsInventaire.Count); // 18 + 3 Formules Nommees + 3 Def Methode Dynamique // Ajout de variables CVariableDynamiqueSaisie varX = new CVariableDynamiqueSaisie(); varX.Nom = "varX"; filtreDyn.AddVariable(varX); CVariableDynamiqueSaisie varY = new CVariableDynamiqueSaisie(); varX.Nom = "varY"; filtreDyn.AddVariable(varY); m_helper.FillInventaireNonRecursifTestHelper <IVariableDynamique>(filtreDyn); Assert.AreEqual(2, m_helper.ListeResultInventaire.Count); Assert.AreEqual(1, m_helper.ListeResultHorsInventaire.Count); m_helper.FillInventaireNonRecursifTestHelper <C2iExpression>(filtreDyn); Assert.AreEqual(3, m_helper.ListeResultInventaire.Count); Assert.AreEqual(5, m_helper.ListeResultHorsInventaire.Count); }