thaita Novato
Registrado: Sábado, 26 de Novembro de 2022 Mensagens: 44
|
Enviada: Qua Set 27, 2023 2:31 pm Assunto: os registros procedimento ListarDados não aparecem no DBGrid |
|
|
Meus prezados,
Tenho um procedimento para Listar os dados da tabela no DBGrid. Estou usando interfaces. Os dados não aparecem Já revisei o código e não encontro o erro.
Alguém pode me ajudar? Segue o código abaixo.
procedure TPageCadastroPessoas.btnListarTodosClick(Sender: TObject);
var
Field: TField;
Column: TColumn;
lDataSource: TDataSource;
begin
lDataSource := TDataSource.Create(nil);
try
// Limpar o DBGrid1 antes de listar os dados
DBGrid1.Columns.Clear;
// Chamar o método para listar todos os registros
FController.Pessoa.Build.DataSource(lDataSource).ListarTodos;
// Verificar se há dados no DataSet
if lDataSource.DataSet.IsEmpty then
begin
ShowMessage('Não existem dados a serem visualizados');
Exit;
end;
// Defina o DataSource do DBGrid1 para o DataSet
DBGrid1.DataSource := lDataSource;
// Iterar pelos campos do DataSet e criar colunas correspondentes no DBGrid1
for Field in lDataSource.DataSet.Fields do
begin
Column := TColumn.Create(DBGrid1.Columns);
Column.FieldName := Field.FieldName;
Column.Title.Caption := Field.FieldName;
Column.Width := 100; // Defina a largura da coluna conforme necessário
DBGrid1.Columns.Add; // Adicione a coluna ao DBGrid1
end;
finally
lDataSource.Free;
end;
end;
Agradeço a ajuda. |
|