[firebase-br] RES: Retorno de dados

Charles Silva charles em streamsolucoes.com
Qua Out 3 15:19:58 -03 2007


Diego, você está querendo reinventar a roda, basta apenas usar um 
DbLockupComboBox. Faça a seguinte ligação:
-Use dois DataSource, um vai ter sua tabela de veículos e outra a sua 
tabela de cidades
Agora coloque um DbLockupComboBox no FORM e ligue as propriedade do 
seguinte modo:

- DataSource = use o datasource da tabela de veículos
- Datafield    = idCidade
- ListSource  = DataSource da tabela de Cidades
-ListField      = Campo idcidade
-KeyField     = IdCidade

Espero ter lhe ajudado.

Att:

Charles Silva
irc.freenode.net #delphix

Ronaldo (NR) wrote:
> vc utiliza dbexpress ?
>
> ----- Original Message ----- 
> From: "Diego Seleguim" <seleguim em gmail.com>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Tuesday, October 02, 2007 11:53 PM
> Subject: Re: [firebase-br] RES: Retorno de dados
>
>
> ok... vamos lá!
>
> Já avisando que meu problema envolve Delphi também...
>
>
> Tenho várias tabelas, dentre elas..estão.. 2 que citarei como exemplo!
>
> TABELA VEICULO
> CREATE TABLE veiculo (
>        idveic               INTEGER NOT NULL,
>        idcidade             INTEGER,
>        descricao            VARCHAR(30),
>        placa                VARCHAR(7),
>        ano                  INTEGER,
>        cor                  VARCHAR(20),
>        modelo               VARCHAR(20),
>        chassi               INTEGER,
>        marca                VARCHAR(20),
>        tipo_veic            VARCHAR(20),
>        qtde_eixos           INTEGER,
>        km_atual             INTEGER
> );
>
> TABELA CIDADE
> CREATE TABLE cidade (
>        idcidade             INTEGER NOT NULL,
>        nome                 VARCHAR(30),
>        estado               CHAR(2)
> );
>
> Estou utilizando a seguinte sintaxe no SQLQUERY: "select * from (NOME DA
> TABELA)"
>
> No meu formulario de veículos eu preciso trazer a cidade para completar o
> cadastro do mesmo, então preciso de um código SQL onde me traga os valores
> como NOME, ESTADO, já que o ID eu já estou conseguindo trazer com a busca!
>
> Código da Busca
> / inicializar variáveis auxiliares
>     aSql := '';
>     aWhere := '';
>     // montar cláusula where.
>     case cmbTipo.ItemIndex of
>       0: {Iniciais}aWhere := Format(' Where Upper(%s) Like %s ', [Campo,
> QuotedStr(EdTexto.Text+'%')]);
>       1: {Qualquer}aWhere := Format(' Where Upper(%s) Like %s ', [Campo,
> QuotedStr('%'+EdTexto.Text+'%')]);
>       2: {Exata   }aWhere := Format(' Where Upper(%s) = %s '   , [Campo,
> QuotedStr(EdTexto.Text)]);
>     end;
>     aSql := Format('Select * From %s %s', [Tabela, aWhere]);
>     with TSimpleDataSet(dsPesq.DataSet) do
>     begin
>       Close;
>       DataSet.CommandText := aSql;
>       Open;
>       if not IsEmpty then
>         DBGrid_Pesq.SetFocus;
>     end;
>   end;
> end;
>
> Com essa pesquisa auxiliar consigo o ID... agora os outros campos...NOME e
> ESTADO da tabela cidade eu busco atravês de LOOKUP... oq eu queria fazer por
> SQL...
>
> Seria algo do tipo?
>
> "select v.idveic, v.idcidade, v.descricao, v.placa, c.idcidade, c.nome as
> nome_cidade, c.estado as uf left join veiculo v on v.idcidade = c.idcidade"
>
> ..Espero ter esclarecido o problema!... Obrigado pela atenção pessoal!
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço 
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
> __________ NOD32 2569 (20071003) Information __________
>
> This message was checked by NOD32 antivirus system.
> http://www.eset.com
>
>
>
>   




Mais detalhes sobre a lista de discussão lista