Beispiel #1
0
        //-------------------------------------------------------------------------------------
        private HashSet <string> UpdateNombreAlarmesNonAcquittees()
        {
            HashSet <string> tableIdAlarmes = new HashSet <string>();
            int nHashCode = 0;

            // Affiche le nombre d'Alarmes non aqcuittées
            if (m_dataBase != null)
            {
                CListeEntitesDeMemoryDb <CLocalTypeAlarme> listeTypesAlarme = new CListeEntitesDeMemoryDb <CLocalTypeAlarme>(m_dataBase);
                listeTypesAlarme.Filtre = new CFiltreMemoryDb(
                    CLocalTypeAlarme.c_champAAcquitter + " = @1",
                    true);
                List <string> lstIdString = new List <string>();
                foreach (CLocalTypeAlarme typeAlarme in listeTypesAlarme)
                {
                    lstIdString.Add(typeAlarme.Id);
                }
                string strListeIdTypes = string.Join(",", lstIdString.ToArray());

                CListeEntitesDeMemoryDb <CLocalAlarme> listeAlarmes = new CListeEntitesDeMemoryDb <CLocalAlarme>(m_dataBase);
                CFiltreMemoryDb filtre = new CFiltreMemoryDb(
                    CLocalAlarme.c_champIdParent + " is null and " +
                    CLocalAlarme.c_champDateFin + " is null and " +
                    CLocalAlarme.c_champDateAcquittement + " is null and " +
                    CLocalAlarme.c_champIdMasquageHerite + " is null");
                if (strListeIdTypes != "")
                {
                    filtre = CFiltreMemoryDb.GetAndFiltre(filtre, new CFiltreMemoryDb(
                                                              CLocalTypeAlarme.c_champId + " in(" + strListeIdTypes + ")"));
                }
                else
                {
                    filtre = new CFiltreMemoryDBImpossible();
                }
                listeAlarmes.Filtre = filtre;
                listeAlarmes.Sort   = CLocalAlarme.c_champId;

                int nCompteur = listeAlarmes.Count();
                m_lblCompteurNouvellesAlarmes.Text = nCompteur.ToString();

                // Calcul du Hash Code
                StringBuilder sb = new StringBuilder();
                foreach (CLocalAlarme alarme in listeAlarmes)
                {
                    tableIdAlarmes.Add(alarme.Id);
                }
            }

            return(tableIdAlarmes);
        }
        /// ////////////////////////////////////////////
        private void RefreshListe()
        {
            CFiltreMemoryDb filtre = null;

            if (m_txtRecherche.Text != null)
            {
                filtre = m_filtreRechercheRapide;
                if (filtre != null)
                {
                    if (filtre.Parametres.Count == 0)
                    {
                        filtre.Parametres.Add(m_txtRecherche.Text);
                    }
                    else
                    {
                        filtre.Parametres[0] = "%" + m_txtRecherche.Text + "%";
                    }
                }
            }
            filtre = CFiltreMemoryDb.GetAndFiltre(filtre, m_filtre);

            if (m_listeObjets == null)
            {
                m_listeObjets        = new CListeEntitesDeMemoryDbBase(m_contexteMemoire, m_typeObjets);
                m_listeObjets.Filtre = filtre;
            }
            else
            {
                m_listeObjets.Filtre = filtre;
            }

            m_wndListeElements.ListeSource = m_listeObjets;
            m_wndListeElements.Refresh();

            if (m_listeObjets.Count() == 1)
            {
                m_objetSelectionne = (CEntiteDeMemoryDb)m_listeObjets[0];
            }
        }