Fórum DBGrid com TADOTable: formatação de colunas #255130
20/10/2004
0
DELPHI 6
No DataModule...
TADOTable -> frequencia
TableName: tab_Freq
MasterSource: DS_Func
MarterFields: id_func
IndexFieldNames: id_func
TDataSource: DS_freq
PROBLEMA -> na DBGrid:
a)ordenar os registros pelo campo/coluna: “data_freq”; e
b)formatar o campo/coluna “valor” para duas casas decimais.
BANCO DE DADOS: Access
Tab_Frequencia (estrutura)
Campo: vr_peso: Numérico/Duplo/3 casas decimais
como resolver?
obrigado
Ananias Duarte
Curtir tópico
+ 0Posts
20/10/2004
Bruno Belchior
Select * From TabEmpresas Order By DataContratacao
e para formatar vá até a Query que contém os campos abra o editor de fields (de um duplo clique no componente), clique com o botão direito do mouse na parte branca e clique no menu que aparecer em Add All (adicionar todos) vá até o campo que vc quer que apareca a formatação de duas casas decimais e selecione-o, então vá no object inspector e coloque sua propriedade currency (monetário) como true... espero ter ajudado
Gostei + 0
20/10/2004
Ananias Duarte
1) Não estou usando TADOQuery, isto é: estou usando a própria tabela e mais.. não quero usar query, nesse caso.
2) já fiz a segunda parte da sua resposta, porém não encontrei a propriedade currency.
e agora...
abraços
Gostei + 0
19/11/2004
José Henrique
Nos encontramos aqui. Também decidi portar um aplicativo Access para Delphi e com a ajuda deste fórum e de alguns livros (além da revista Clube Delphi) tô indo.
Quanto a sua solicitação de ordenar o grid, a dica abaixo ordena pela coluna clicada pelo usuário, coloque esta rotina no eveto OnTitleClick do DBGrid:
procedure TForm1.DBGrid1TitleClick(Column: TColumn); var strColuna : string; begin strColuna := Column.Field.FieldName; if DM.ADODataSet1.IndexFieldNames = strColuna then DM.ADODataSet1.IndexFieldNames := strColuna + ´ DESC´ else DM.ADODataSet1.IndexFieldNames := strColuna; end;
Caso o usuário clique novamente na mesma coluna ele inverte a ordenação.
Mas se você quiser que o grid já abra e permaneça com apenas uma de ordenação coloque no OnCreate do form:
DM.ADODataSet1.IndexFieldNames := ´data_freq´;
Henrique.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)