Ir para conteúdo
Fórum Script Brasil
  • 0

Loop No Grid


Guest paulo herrique

Pergunta

Guest paulo herrique

é o seguinte to usando o grid aqui para listar os registros certo, so que ai depois que eu listo eu fiz um botao pagar, para pagar os campos que foram listados na grid, beleza eu sei ate pagar, e ate deu certo, so que nem sempre corre todos os campos da grid queria saber como eu faço esse loop para rodar todos os campos que apareceu

acho que to com problema em correr os campos da grid

tipo que eu usei assim

while not Query1.EOF do

begin

if form1.Table1.FindKey([form3.quer.Query1Codigo.value]) then

so que não passa desse if, se alguém souber como correr todos os campos da dbgrid por favor me ajude, to presisando muito, pode ser de qualquer maneira, so quero que passe resultdo por resultado...

por favor to precisando de mais...

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

se você não estiver utilizando nenhum relacionamento entre duas tabelas nesse query você pode utilizar este codigo:

Query1.First;

while not Query1.EOF do

begin

Query1.Delete;

end;

senão você tiver utilizando algum tipo de relacionamento nesta tabela esse codigo não vai funcionar e ai eu aconselho utilizar um outro query para deletar o registro via sql, tipo

Query1.First;

while not Query1.EOF do

begin

delete from nome_da_tabela where Codigo=DBGrid1.fields[index_do_codigo].asValue;

end;

esse dois geitos funcionam, espero ter ajudado.

Link para o comentário
Compartilhar em outros sites

  • 0

Além do que já foi sugerido, dá para comentar um pouco o pedaço de código que você postou:

Query1.DisableControls;  // evita que o grid seja movimentado
Query1.First;  // é sempre bom garantir que está no início da consulta
while not Query1.EOF do
begin
  if form1.Table1.FindKey([Query1Codigo.value]) then
    form1.Table1.Delete;

  Query1.Next;
end;
Query1.EnableControls;
// se for necessário atualizar o grid, terá que fechar e abria a query
Query1.Close;
Query1.Open;

Seu loop deveria ser algo mais ou menos assim. Observe que Table1, deve ter um índice pelo campo Codigo que você pretende utilizar para posicioná-la, e que este deve ser o índice em uso no momento.

O campo Codigo a ser passado como parâmetro deve ser proveniente da Query1 já que aparentemente é ela que está ligada ao seu DBGrid.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...