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

Semelhanças Entre Tclientdataset E Tquery Ii


hencker

Pergunta

Surgiram pra mim novas dificuldades quanto minha migração para o componente TQuery...

No TClientDataSet eu fazia o segunte procedimento para verificar se tinha sido possível realizar uma alteração no banco...

procedure TMasterCad.TBApagarClick(Sender: TObject);
var
  Codigo_Retornar: Integer;
begin
  inherited;
  if Confirma('Excluir ?')
     then begin
          with TabelaMaster do begin
               Codigo_Retornar := TabelaMaster.FieldByName(Chave).AsInteger;
               Delete;
               if ApplyUpdates (-1) <> 0
                  then begin
                       Aviso('Exclusão não efetuada!');
                       UndoLastChange(True);
                  end
                  else Devolver_Codigo(Tb_Banco, Chave, Codigo_Retornar);
          end;
          case Resetar_Tabela of
               stResetar : Reseta_Tabela;
          end;
     end;
end;

... funcionava perfeitamente.

Com o componente TQuery ele até reconhece a funcão ApplyUpdates porém dá a seguinte mensagem de erro:

[Error] UMasterCad.pas(98): Too many actual parameters

Acho q ele não está reconhecendo o (-1)... ( if ApplyUpdates (-1) <> 0)...

Outro problema que acontece é que, com o TClientDataSet, a função UndoLastChange(True); fazia com que a última ação no componente fosse desfeita (no caso a exclusão do registro do banco de dados), existe alguma função semelhante para o TQuery???

sad.gif

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

o tquery não possui o método undolast. é bem mais 'seco' que o tclientdataset.

e quanto ao erro retornado no applyupdates, verifique os campos assim como os parâmetros, se estes existirem.

SDS

Link para o comentário
Compartilhar em outros sites

  • 0

Mas não existe nenhuma outra função ou rotina que assuma o papel da UndoLastChange()???

Quanto ao ApplyUpdates os parâmetros estão todos certos... dry.gif

Não sei o porque do erro, se alguém souber de alguma rotina ou função q eu possa usar no lugar para poder assumir essa função eu agradeço muito!!!

biggrin.gif

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,1k
    • Posts
      651,8k
×
×
  • Criar Novo...