[Ajuda] Como deixar o DBLookupComboBox em Ordem Alfabética
Olá amigos,
Quero por os nomes de um DBLookupComboBox em Ordem Alfabética mais não sei como fazer.
Estou usando:
Delphi XE4
FireBird
IBTable e já esta selecionando porém não aparece em ordem alfabética.
Seria mais fácil editar o banco? Como ficaria?
Muito obrigado!
Quero por os nomes de um DBLookupComboBox em Ordem Alfabética mais não sei como fazer.
Estou usando:
Delphi XE4
FireBird
IBTable e já esta selecionando porém não aparece em ordem alfabética.
Seria mais fácil editar o banco? Como ficaria?
Muito obrigado!
Jore Maximus
Curtidas 0
Respostas
Adilson Júnior
25/10/2013
Seu DBLookup não está apontado para uma tabela, não está?
Basta você colocar um ORDER BY <nome_campo> !!!!
Basta você colocar um ORDER BY <nome_campo> !!!!
GOSTEI 0
Jore Maximus
25/10/2013
Olá Adilson Bragança Cápua Júnior,
Bom, não sei bem o que você quer dizer com apontando para uma tabela mas a conexão do DBLookComboBox esta assim veja:
Liguei ao DataSouce da Tabela Principal,
Liguei ao Campo FU_CODIGO que é um campo FK
Liguei ao DataSouce da Tabela Funcionário
Liguei ao Campo FU_NOME (Que é campo que desejo mostrar)
Novamente Liguei ao Campo FU_CODIGO que é um campo FK
Agora gostaria de mostrar os nomes em Ordem Alfabética.
Obrigado por me ajudar!
Bom, não sei bem o que você quer dizer com apontando para uma tabela mas a conexão do DBLookComboBox esta assim veja:
Liguei ao DataSouce da Tabela Principal,
Liguei ao Campo FU_CODIGO que é um campo FK
Liguei ao DataSouce da Tabela Funcionário
Liguei ao Campo FU_NOME (Que é campo que desejo mostrar)
Novamente Liguei ao Campo FU_CODIGO que é um campo FK
Agora gostaria de mostrar os nomes em Ordem Alfabética.
Obrigado por me ajudar!
GOSTEI 0
Jesus Neves
25/10/2013
Voce pode tambem criar um indice local usando a propriedade IndexFieldNames do IBTable fazendo asssim, MeuIBTable.IndexFieldNames := '<Nome do campo>'.
GOSTEI 0
Jore Maximus
25/10/2013
Olá JESUS APARECIDO DE SOUZA NEVES,
Desculpe mas não entendi bem como fazer... Onde eu coloco este comando que você passou?
Obrigado por me ajudar!
Desculpe mas não entendi bem como fazer... Onde eu coloco este comando que você passou?
Obrigado por me ajudar!
GOSTEI 0
Joel Rodrigues
25/10/2013
Para facilitar: de onde vêm os dados que são listados no DBLookupCombobox? De uma tabela (dataset, table, query, etc), correto? Nesta tabela, altere a instrução SQL, adicionando a cláusula ORDER BY.
GOSTEI 0
Jore Maximus
25/10/2013
Olá Joel Rodrigues,
Então, Meus dados estão em um Table e o amigo JESUS , me passou o seguinte código: IBTable1.IndexFieldNames := '<PA_NOME>'. Só não sei onde colocá-lo.
Na sua dica eu teria que alterar onde essa instrução SQL?
Obrigado por sua ajuda!
Então, Meus dados estão em um Table e o amigo JESUS , me passou o seguinte código: IBTable1.IndexFieldNames := '<PA_NOME>'. Só não sei onde colocá-lo.
Na sua dica eu teria que alterar onde essa instrução SQL?
Obrigado por sua ajuda!
GOSTEI 0
Joel Rodrigues
25/10/2013
Table não tem SQL, então use o IndexFieldsNames mesmo. Essa propriedade deve estar no Object Inspector. Caso não esteja, você pode definir isso em runtime, usando esse código que o amigo passou.
GOSTEI 0
Jore Maximus
25/10/2013
Então Joel Rodrigues,
O IBTable tem esta propriedade sim! Porém ao clicar s~´o aparece a opção para escolher o campo CÓDIGO.
E Este comando: IBTable1.IndexFieldNames := '<PA_NOME>'. Não sei onde colocá-lo.
Você pode me ajudar co isso?!
Já coloquei no OnCreate e no ONShow e não da certo dá erro!
Obrigado!
O IBTable tem esta propriedade sim! Porém ao clicar s~´o aparece a opção para escolher o campo CÓDIGO.
E Este comando: IBTable1.IndexFieldNames := '<PA_NOME>'. Não sei onde colocá-lo.
Você pode me ajudar co isso?!
Já coloquei no OnCreate e no ONShow e não da certo dá erro!
Obrigado!
GOSTEI 0
Jesus Neves
25/10/2013
Olá Jore Maximus, pelo que entendi em sua explicação você usou o campo FU_NOME para listar no seu DBLookupComboBox certo? então antes da OPEN no IBTable1 faz assim
IBTAble1.IndexFieldNames := 'FU_NOME'
IBTable1.OPEN
Espero ter ajudado.
IBTAble1.IndexFieldNames := 'FU_NOME'
IBTable1.OPEN
Espero ter ajudado.
GOSTEI 0
Jore Maximus
25/10/2013
Perfeito!
Só um detalhe para quem for iniciante como eu e quiser usar ponha o ; (Ponto e vírgula no final) 8-)
IBTAble1.IndexFieldNames := 'FU_NOME';
IBTable1.OPEN;
Muito obrigado à todos!
Só um detalhe para quem for iniciante como eu e quiser usar ponha o ; (Ponto e vírgula no final) 8-)
IBTAble1.IndexFieldNames := 'FU_NOME';
IBTable1.OPEN;
Muito obrigado à todos!
GOSTEI 0