Exemple #1
0
        //-------------------------------------------------------
        protected override CResultAErreur MyInitChamps(CCustomizableListItem item)
        {
            CResultAErreur result = base.MyInitChamps(item);

            if (!result)
            {
                return(result);
            }
            CSnmpHotelPolledData p = item != null ? item.Tag as CSnmpHotelPolledData : null;

            if (p != null)
            {
                m_txtHotelTable.Text = p.HotelTable;
                m_txtHotelField.Text = p.HotelField;
                m_txtEntityId.Text   = p.EntityId;
                if (IsCreatingImage)
                {
                    m_lblFormule.Text = p.Formule != null?
                                        p.Formule.GetString() :
                                            "";

                    m_txtFormule.Visible = false;
                    m_lblFormule.Visible = true;
                    m_lblFormule.Dock    = DockStyle.Fill;
                }
                else
                {
                    m_txtFormule.Formule = p.Formule;
                    m_txtFormule.Visible = true;
                    m_lblFormule.Visible = false;
                    m_txtFormule.Dock    = DockStyle.Fill;
                }
            }
            return(result);
        }
        //---------------------------------------------------------------------
        private void m_btnAddData_LinkClicked(object sender, EventArgs e)
        {
            CSnmpHotelPolledData  data = new CSnmpHotelPolledData();
            CCustomizableListItem item = new CCustomizableListItem();

            item.Tag = data;
            m_wndListeChamps.AddItem(item, true);
            m_wndListeChamps.CurrentItemIndex = item.Index;
        }
Exemple #3
0
        //-------------------------------------------------
        public CResultAErreurType <CSnmpHotelPolledData> GetHotelPolledData(CEntiteSnmp entite)
        {
            CResultAErreurType <CSnmpHotelPolledData> result = new CResultAErreurType <CSnmpHotelPolledData>();

            //trouve le champ
            CSnmpPollingField field = new CSnmpPollingField(entite.ContexteDonnee);

            if (!field.ReadIfExistsUniversalId(PollingFieldUID) ||
                field.HotelTableId.Length == 0 ||
                field.HotelColumnId.Length == 0)
            {
                result.EmpileErreur(I.T("Incorrect polling field|20256"));
                return(result);
            }
            CSnmpHotelPolledData polledData = new CSnmpHotelPolledData();

            polledData.HotelTable = field.HotelTableId;
            polledData.HotelField = field.HotelColumnId;

            //calcule l'id de l'entité
            CContexteEvaluationExpression ctx = new CContexteEvaluationExpression(entite);

            if (FormuleIdEntite == null)
            {
                result.EmpileErreur(I.T("Invalid entity id formula|20257"));
                return(result);
            }
            CResultAErreur resTmp = FormuleIdEntite.Eval(ctx);

            if (!resTmp || resTmp.Data == null)
            {
                result.EmpileErreur(I.T("Invalid entity id formula|20257"));
                result.EmpileErreur(resTmp.Erreur);
                return(result);
            }
            polledData.EntityId = resTmp.Data.ToString();

            CResultAErreurType <C2iExpression> resFormule = GetFormuleFinaleForEntite(entite);

            if (!resFormule || !(resFormule.Data is C2iExpression))
            {
                result.EmpileErreur(I.T("Error while converting Polling formula|20258"));
                return(result);
            }
            polledData.Formule = resFormule.DataType;
            result.DataType    = polledData;
            return(result);
        }
        //--------------------------------------------------
        public CResultAErreur MajChamps()
        {
            CResultAErreur result = CResultAErreur.True;

            if (m_txtLibelle.Text.Length == 0)
            {
                result.EmpileErreur(I.T("Enter a label for this polling setup|20127"));
                return(result);
            }
            result = m_wndListeChamps.MajChamps();
            if (!result)
            {
                return(result);
            }
            CListeSnmpHotelPolledData lstData = new CListeSnmpHotelPolledData();

            foreach (CCustomizableListItem item in m_wndListeChamps.Items)
            {
                CSnmpHotelPolledData data = item.Tag as CSnmpHotelPolledData;
                if (data.Formule != null)
                {
                    lstData.Add(data);
                }
            }
            m_setup.HotelIp     = m_txtIP.Text;
            m_setup.HotelPort   = m_txtNumPort.IntValue.Value;
            m_setup.Libelle     = m_txtLibelle.Text;
            m_setup.PolledDatas = lstData;
            if (m_txtFrequence.UnitValue == null)
            {
                m_setup.FrequenceMinutes = 0;
            }
            else
            {
                m_setup.FrequenceMinutes = m_txtFrequence.UnitValue.ConvertTo(CClasseUniteTemps.c_idMIN).Valeur;
            }
            return(result);
        }
Exemple #5
0
        //--------------------------------------------------
        protected override CResultAErreur MyMajChamps()
        {
            CResultAErreur result = base.MyMajChamps();

            if (result)
            {
                CSnmpHotelPolledData p = CurrentItem != null ?
                                         CurrentItem.Tag as CSnmpHotelPolledData
                    : null;
                if (p != null)
                {
                    p.Formule = m_txtFormule.Formule;
                    if (m_txtFormule.Formule == null &&
                        !m_txtFormule.ResultAnalyse)
                    {
                        result.EmpileErreur(m_txtFormule.ResultAnalyse.Erreur);
                    }
                    p.HotelField = m_txtHotelField.Text;
                    p.HotelTable = m_txtHotelTable.Text;
                    p.EntityId   = m_txtEntityId.Text;
                }
            }
            return(result);
        }