Ejemplo n.º 1
0
        //-------------------------------------------------
        private CResultAErreurType <C2iExpression> GetFormuleFinaleForEntite(CEntiteSnmp entite)
        {
            CResultAErreurType <C2iExpression> result = new CResultAErreurType <C2iExpression>();

            if (m_formulePolling == null)
            {
                result.EmpileErreur(I.T("Can not apply formula to entity @1|20254",
                                        entite.Libelle));
                return(result);
            }
            C2iExpression formule = CCloner2iSerializable.Clone(m_formulePolling) as C2iExpression;
            ArrayList     lst     = formule.ExtractExpressionsType(typeof(C2iExpressionChamp));

            foreach (C2iExpressionChamp exp in lst)
            {
                CDefinitionProprieteDynamiqueChampCustom def = exp.DefinitionPropriete as CDefinitionProprieteDynamiqueChampCustom;
                string strOID = null;
                if (def != null)
                {
                    CChampCustom champ = new CChampCustom(CContexteDonneeSysteme.GetInstance());
                    if (champ.ReadIfExists(def.DbKeyChamp))
                    {
                        strOID = entite.GetFieldOID(champ.Id);
                        if (strOID.Trim().Length == 0)
                        {
                            strOID = null;
                        }
                        else
                        {
                            exp.DefinitionPropriete = new CDefinitionProprieteDynamiqueOID(strOID);
                        }
                    }
                }
                if (strOID == null)
                {
                    result.EmpileErreur(I.T("Can not find SNMP field for @1|20255", def.Nom));
                    return(result);
                }
            }
            result.Data = formule;
            return(result);
        }
Ejemplo n.º 2
0
        //---------------------------------------------------
        void m_imageTools_Click(object sender, EventArgs e)
        {
            AssureMenuSnmp();
            CEntiteSnmp entiteSnmp     = EditedElement as CEntiteSnmp;
            bool        bWriteAutorise = entiteSnmp != null && entiteSnmp.TypeEntiteSnmp != null && !entiteSnmp.TypeEntiteSnmp.ReadOnly;

            m_menuEcrireSnmp.Visible = bWriteAutorise;
            if (m_menuAddToPolled != null && entiteSnmp != null &&
                entiteSnmp.AgentSnmp.ParametresPolling.Count() > 0)
            {
                m_menuAddToPolled.Visible = !LockEdition;
            }
            else
            {
                m_menuAddToPolled.Visible = false;
            }
            if (m_menuOID != null)
            {
                try
                {
                    string strOID = entiteSnmp.GetFieldOID(WndSnmp.FieldZone.ChampCustom.Id);
                    if (strOID != null)
                    {
                        m_menuOID.Text    = I.T("OID @1 (Click to copy)|20857", strOID);
                        m_menuOID.Tag     = strOID;
                        m_menuOID.Visible = true;
                    }
                    else
                    {
                        m_menuOID.Visible = false;
                    }
                }
                catch
                {
                    m_menuOID.Visible = false;
                }
            }
            m_menuSnmp.Show(Cursor.Position);
        }