/// <summary>
 /// Retorna um IBaseBD de CotaItemFormaPagamento especifico
 /// </summary>
 public override IBaseBD this[int indice]
 {
     get
     {
         if (indice < 0 || indice >= lista.Count)
         {
             return(null);
         }
         else
         {
             int id = (int)lista[indice];
             elementoMapa.Ler(id);
             return(elementoMapa);
         }
     }
 }
        public List <SetorElementoMapa> ListarElementos(int SetorID)
        {
            List <SetorElementoMapa> elementos = new List <SetorElementoMapa>();

            try
            {
                string sql = "SELECT sem.* FROM SetorElementoMapa (NOLOCK) sem WHERE sem.SetorID = " + SetorID + " ORDER BY Z";

                bd.Consulta(sql);

                while (bd.Consulta().Read())
                {
                    SetorElementoMapa sem = new SetorElementoMapa();
                    sem.Ler(bd.LerInt("ID"));
                    elementos.Add(sem);
                }

                foreach (var setorElemento in elementos)
                {
                    var elemento = new ElementoMapa();
                    elemento.Ler(setorElemento.ElementoMapaID.Valor);
                    setorElemento.ElementoMapa = elemento;
                }

                bd.Fechar();
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(elementos);
        }