예제 #1
0
        //-------------------------------------------------------------------------
        public CResultAErreur RetombageManuel(string strIdAlarme, int nIdSession)
        {
            CResultAErreur result = CResultAErreur.True;

            using (CContexteDonnee context = new CContexteDonnee(nIdSession, true, false))
            {
                CAlarme alarmeARetomber = new CAlarme(context);
                if (alarmeARetomber.ReadIfExists(new CFiltreData(
                                                     CAlarme.c_champAlarmId + " = @1",
                                                     strIdAlarme)))
                {
                    CMemoryDb    db     = CMemoryDbPourSupervision.GetMemoryDb(context);
                    CLocalAlarme alarme = alarmeARetomber.GetLocalAlarme(db, true);
                    if (alarme.EtatCode != EEtatAlarme.Close)
                    {
                        alarme.EtatCode = EEtatAlarme.Close;
                    }
                    result = CAlarme.TraiteAlarmesManuellement(nIdSession, db);
                    if (result)
                    {
                        CSnmpConnexion.DefaultInstance.RedescendAlarmes(db);
                    }
                }
                else
                {
                    result.EmpileErreur(I.T("Alarm Id @1 not found|10022", strIdAlarme));
                }
            }

            return(result);
        }
예제 #2
0
        public bool Clear()
        {
            CResultAErreur result = CResultAErreur.True;

            CMemoryDb    db     = CMemoryDbPourSupervision.GetMemoryDb(this.ContexteDonnee);
            CLocalAlarme alarme = GetLocalAlarme(db, true);

            if (alarme.EtatCode != EEtatAlarme.Close)
            {
                alarme.EtatCode = EEtatAlarme.Close;
            }
            result = CAlarme.TraiteAlarmesManuellement(this.ContexteDonnee.IdSession, db);
            if (result)
            {
                CSnmpConnexion.DefaultInstance.RedescendAlarmes(db);
            }

            return(result.Result);
        }