Fórum Como mostrar vários fields, num campo lookup num grid? #275060
01/04/2005
0
Preciso mostrar no lookup de um field tipo lookup várias informações sobre o item a ser escolhido, como faço isso..
exemplo..
Para selecionar um material a ser inserido, preciso tb saber o modelo, a marca e a série do mesmo, mas estou num grid e só visualizo 1 campo, que seria a descrição..
já tentei
C_DESC_INSUMO;C_MODELO_INSUMO;C_MARCA_INSUMO;C_SERIE_INSUMO
e não deu certo.
Cabelo
Curtir tópico
+ 0Posts
01/04/2005
Ehvasc
Uma solução é no evento OnGetText do field (no caso DESCRICAO), vc implementa o código abaixo
Text := Query.FieldByNAme(´C_DESC_INSUMO´).AsString+ Query.FieldByNAme(´C_MODELO_INSUMO´).AsString+ Query.FieldByNAme(´C_MARCA_INSUMO´).AsString+ Query.FieldByNAme(´C_SERIE_INSUMO´).AsString;
isso funcionará, o campo DESCRICAO não precisa ser lookup
Espero ter ajudado, boa sorte e até a próxima
Gostei + 0
01/04/2005
Guilherme
de um clique duplo no grid e escolha o campo q ira mostar o campo criado e altere a opçao FIELD NAME . Pronto !!!!
espero ter ajudado !!!!!!!
Depois posta ai se deu certo e como vc fez !!!!
Ate +
Gostei + 0
01/04/2005
Cabelo
Text := Query.FieldByNAme(´C_DESC_INSUMO´).AsString+ Query.FieldByNAme(´C_MODELO_INSUMO´).AsString+ Query.FieldByNAme(´C_MARCA_INSUMO´).AsString+ Query.FieldByNAme(´C_SERIE_INSUMO´).AsString;
Gostei + 0
04/04/2005
Cabelo
Isso irá fazer mostrar todos os campos juntos no grid, e não ´pe o que eu quero, eu quero que o combo do field lookup, funcione como em um dblookupcombobox comum, quero que ele mostre vários campos, mas depois de selecionado, só fica aparecendo a descrição.
Gostei + 0
04/04/2005
Flaviosan
que eu saiba só é possivel fazer essa concatenação de campos que vc quer em um dblookupcombobox, na propriedade listfield, separando o nome dos campos por ponto e virgula e setando a propriedade listfieldindex para o indice do campo que vc quer que seja mostrado quando já estiver selecionado.
Espero ter ajudado.
Gostei + 0
04/04/2005
Cabelo
Você sabe se consigo adicionar um objeto a um DBGrid?
lembro que no Delphi 5, eu conseguia fazr isso. Se conseguisse teria meu problema solucionado.
Gostei + 0
04/04/2005
Silviogs
se vc estiver usando o rxlib( RxDBLookupCombo) mude a propriedade Fieldelimiter para ; (ponto e vírgula). E a propriedade DisplayAllFields para true. Caso estiver usando o DbLookupComboBox padrão basta apenas na propriedade Listfield coloque codigo;descproduto;precounit
Atencisomente,
Silvio Guedes
Gostei + 0
04/04/2005
Cabelo
Colega..
Na verdade, isso eu sei fazer, e não é esse meu problema, o que preciso pode ter duas opções :
1ª - Mostrar no campo LookUp de um dataset, quando associar no grid, vários campos, mas sendo somente um o resultado;
2ª - Adiconar um componente ao DBGrid, que poderia ser um DBLookUpComboBox, com a propriedade listfield com os campos que eu desejo, sendo que o keyfield seria usado com o result.
Mas o problema é que não estou consegundo achar nenhuma solução, sendo quelquer uma das opções.
OBs: No Delphi 5 é possível fazer isso, mas os comando para o Delphi 7 não funcionam.
Gostaria de saber como fazer.
Gostei + 0
04/04/2005
Cabelo
Gostei + 0
04/04/2005
Guilherme
Gostei + 0
04/04/2005
Cabelo
Até aí blz, funciona legal, quando eu trago somente um campo no lookup. O q eu quero é :
Quando clicar no combo do campo lookup no grid, eu visualizar outros campos desta tabela lookup no grid, e quando selecionar o item que desejo, ele simplesmente, mostra um dos campos, assim como funciona o DBLookupComboBox, na propriedade listfield, posso adicionar vários campos separados por virgula, mas quando fecho o combo, ele simplemente mostra o campo que estiversetado no ListFieldIndex.
Gostei + 0
04/04/2005
Guilherme
abraço
Gostei + 0
05/04/2005
Cabelo
Gostei + 0
05/04/2005
Cabelo
Gostei + 0
05/04/2005
Silviogs
você teria como mandar os fontes do delphi5 para mim, vou testar com o delphi7 ou 2005
Silvio Guedes
silvio.guedes@ig.com.br
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)