try except não funciona (DATASET)

Delphi

13/05/2014

Boa noite pessoal, tenho o seguinte código

try
        vVerificador := 1;
        try
          ds.DataSet.Delete;
          HabilitaSpeedButtons;
          vVerificador := 0;
        except
          on E: Exception do
            Application.MessageBox(''Não foi possível deletar este registro, ''+ sLineBreak + ''verifique se exite vínculo no cadastro de OS!'', ''Atenção'', MB_ICONEXCLAMATION + MB_OK);
        end;
      finally
        ds.DataSet.Close;
        ds.DataSet.Open;
        if vVerificador = 1 then
          Application.MessageBox(''Não foi possível deletar este registro, ''+ sLineBreak + ''verifique se exite vínculo no cadastro de OS!'', ''Atenção'', MB_ICONEXCLAMATION + MB_OK);
      end;



Tenho a tabela cliente e uma outra que usa o cod_cliente como FK
Então quando tento deletar o cliente ele da erro acusando ter dados na tabela filha, correto pois eu não configurei como DELETE CASCADE e é assim que quero,
porém quando vou tratar com try except ou try finally, ao passar pela parte que esta comentada no código acima, ele da erro e não termina, assim desse modo não consigo mostrar para o usuário uma mensagem do que esta acontecendo, se alguém puder ajudar agradeço.

até tentei criar uma variável para receber um inteiro e fazer uma verificação por fora, mais como disse ele não termina a execução do try.
Sublixo

Sublixo

Curtidas 0
POSTAR