protected override CResultAErreur InitChamps()
        {
            CResultAErreur result = base.InitChamps();

            if (!result)
            {
                return(result);
            }

            CCategorieAccesAlarme boucle = new CCategorieAccesAlarme(ECategorieAccesAlarme.SortieBoucle);
            List <IEnumALibelle>  lst    = new List <IEnumALibelle>();

            lst.Add(boucle as IEnumALibelle);

            m_cmbTypeAcces.Fill(lst, "Libelle", false);

            /*    TypeAccesAlarme.CategorieAccesAlarme = boucle;
             *  m_cmbTypeAcces.SelectedValue = TypeAccesAlarme.CategorieAccesAlarme;
             *
             *  UpdateAffichagePanelTrap();
             *
             *  UpdatePanelAlarmeGeree();*/

            return(result);
        }
Пример #2
0
        ///////////////////////////////////////////////////////////////
        public override CResultAErreur VerifieDonnees(CObjetDonnee objet)
        {
            CResultAErreur result = CResultAErreur.True;

            try
            {
                CSpvTypeAccesAlarme typeAcces = objet as CSpvTypeAccesAlarme;

                if (typeAcces.CategorieAccesAlarme == null)
                {
                    result.EmpileErreur(I.T("Access type should be defined|2"));
                }
                else
                {
                    if (typeAcces.Row.RowState == DataRowState.Modified &&
                        typeAcces.CodeCategorieAcces != (int)typeAcces.Row[CSpvTypeAccesAlarme.c_champACCES_CATEGORIE, DataRowVersion.Original])
                    {
                        result.EmpileErreur(I.T("Access type isn't modifiable|50001"));
                    }

                    if (typeAcces.CategorieAccesAlarme == ECategorieAccesAlarme.TrapSnmp)
                    {
                        if (typeAcces.NumeroIANA == null || typeAcces.TrapGenerique == null || typeAcces.TrapSpecifique == null)
                        {
                            result.EmpileErreur(I.T("For trap type, fill field iana number, generic trap and specific trap|50022"));
                        }
                        else if (typeAcces.TrapGenerique < 0 || typeAcces.TrapGenerique > 6)
                        {
                            result.EmpileErreur(I.T("Generic trap should be between 0 and 6|50023"));
                        }
                        else if (typeAcces.TrapGenerique < 6 && typeAcces.TrapSpecifique != 0)
                        {
                            result.EmpileErreur(I.T("For a generic trap, specific trap should be 0|50024"));
                        }
                        else if (typeAcces.TrapGenerique >= 0 && typeAcces.TrapGenerique < 6 && typeAcces.NumeroIANA != 0)
                        {
                            result.EmpileErreur(I.T("For a generic trap, IANA number should be 0|50025"));
                        }
                    }
                }
                if (typeAcces.NomAcces == null || typeAcces.NomAcces == "")
                {
                    result.EmpileErreur(I.T("Access type should have a name|3"));
                }


                if ((typeAcces.SpvSite != null || typeAcces.SpvLiai != null) &&
                    typeAcces.CodeCategorieAcces != (int)ECategorieAccesAlarme.SortieBoucle)
                {
                    CCategorieAccesAlarme category = new CCategorieAccesAlarme(ECategorieAccesAlarme.SortieBoucle);

                    result.EmpileErreur(I.T("Only acces type @1 is allowed for this object|60008", category.Libelle));
                }

                CSpvAlarmGeree alarmgeree = typeAcces.GetAlarmeGereeAvecCreationSuppression();
                if (alarmgeree != null && alarmgeree.AlarmgereeFreqPeriod != null &&
                    alarmgeree.AlarmgereeFreqPeriod < 1)
                {
                    result.EmpileErreur(I.T("Frequent alarm period must be grater then 1|60063"));
                }
            }
            catch (Exception e)
            {
                result.EmpileErreur(new CErreurException(e));
            }
            return(result);
        }