/// ////////////////////////////////////////////////////////////////////////////
        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();
            }
        }
Esempio n. 2
0
 /// ////////////////////////////////////////////////////////////////
 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);
     }
 }
Esempio n. 3
0
        /// /////////////////////////////////////////////////////////////
        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;
        }
Esempio n. 4
0
        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);
        }