Utilizando a ferramenta “seleção por atributo” percebi um erro na mesma, quando se utiliza um campo numérico da tabela de atributo de algum tema a ferramenta trata os dados como tipo “texto” e não como tipo “numérico” (o correto), sendo assim quando se faz uma seleção e.g.=: “área maior que 30000” a ferramenta seleciona todas as feições com atributos que começam com números maiores que 3 (e.g.: feições com áreas de valor 4). E quando se executa alguma pesquisa em campos tipo “texto”, a ferramenta não conseguiu selecionar os atributos que possuem acento (e.g. :Goiânia), mesmo listando eles como opção de seleção.
Alguém já havia percebido esses problemas e conseguiu resolve-los?
Edmar obrigado pela ajuda anterior sobre o do tempo de ativação. Vou tentar aplicar
Autor: Levindo Cardoso Medeiros

33 comentários
{
if ($tipo == "limpa")
{return($this->selecaoLimpa());}
if ($tipo == "inverte")
{return($this->selecaoInverte());}
$operador = explode(",",$operador);
$operador = $operador[1];
$this->layer->set("template","none.htm");
$indxlayer = $this->layer->index;
if (file_exists(($this->arquivo)."qy"))
{$this->mapa->loadquery(($this->arquivo)."qy");}
$res_count = $this->layer->getNumresults();
$shp_atual = array();
for ($i = 0; $i < $res_count;++$i)
{
$rc = $this->layer->getResult($i);
$shp_atual[] = $rc->shapeindex;
}
$this->mapa->freequery($indxlayer);
$shpi = array();
if($this->layer->connectiontype == MS_POSTGIS)
{$this->layer->querybyattributes($item,$item." ".$operador." '".$valor."' ",1);}
else
{
if(!is_numeric($valor))
{$this->layer->querybyattributes($item,'("['.$item.']"'.$operador.'"'.$valor.'")',1);}
else
{$this->layer->querybyattributes($item,'(['.$item.']'.$operador.' '.$valor.' )',1);}
}
$res_count = $this->layer->getNumresults();
$shpi = array();
for ($i = 0; $i < $res_count; ++$i)
{
$result = $this->layer->getResult($i);
$shpi[] = $result->shapeindex;
}
if ($tipo == "adiciona")
{return($this->selecaoAdiciona($shpi,$shp_atual));}
if ($tipo == "retira")
{return($this->selecaoRetira($shpi,$shp_atual));}
return("ok");
}