ajuda urgente - novato

Delphi

14/04/2010

Ola trabalho com delphi 5 e tabela paradox eu tenho uma tabela de pedidos onde eu quero excluir os produtos com o num pedido 'x' só que da maneira que montei o bloco ele exclui tudo... try
          While not FTabelas.PedidoProTbl.Eof do
          begin
          FTabelas.PedidoProTbl.FindKey ([DBEdit15.Text]);
          FTabelas.PedidoProTbl.IndexName := 'ByNumPedido';
          FTabelas.PedidoProTbl.Cancel;
          FTabelas.PedidoProTbl.Delete;
          end;
         except
             FTabelas.PedidoProTbl.Next; ( esta exceção deve ploquear se excluiu dos os pedidos que selesionou no index)
         end;     se alguem puder me ajudar ficarei muito grato..  
Alcindo

Alcindo

Curtidas 0

Respostas

Pjrm1470

Pjrm1470

14/04/2010

ADOCommand - propriedade CommandText:
DELETE
  FROM SUATABELA
 WHERE CAMPO = 'X'
Simples e direto.
try
  ADOCommand.Execute; //executa a query acima
except
  on E: Exception do
    ShowMessage(E.Message);
end;
  paradox "ainda" aceita a query dessa forma. Caso contrário...
Dataset.First;
While not DataSet.Eof do
begin
  if (DataSetCampo.AsString = 'X') then
    DataSet.Delete
  else DataSet.Next; //o else eh porque quando vc deleta cai no proximo registro então não eh necessariopular para o proximo
end;
O dataset eh sua query com a tabela aberta. Isso aé é um POG. Não grado, mas funciona.   Precisando... pergunte! pjrm1470.
GOSTEI 0
POSTAR