Fórum Validar quando o campo é nulo - URGENTE #37308

10/07/2003

0

Senhores !!!!

Criei uma uma trigger que dispara uma exceção assim

create trigger mensa_campo_vazio for fornecedor
active before insert position 0 as
begin
if (new.nom_for = ´´) then
exception mensa_campo_vazio ;
end
^
set term ; ^

A TRIGGER acima é para verificar se o campo nome do fornecedor é vazio

Acontece que no meu projeto quando for salvar sem preencher o campo do fornecedor ele não dá a mensagem da exceção... Ele aparece a mensagem do delphi dizendo que o campo não pode ser nulo, mas não tem jeito de aparecer a mensagem que eu coloquei na exceção.. Como poderia proceder ??


Rogério


Roger_prog

Roger_prog

Responder

Posts

10/07/2003

Afarias

|A TRIGGER acima é para verificar se o campo nome do fornecedor
|é vazio

pq quando um campo ´string´ é ´vazio´ é passado para o Interbase como NULO e não ´´

NULO é diferente de ´´

seu código deveria ser:

if (new.nom_for IS NULL) then
...


|Acontece que no meu projeto quando for salvar sem preencher o campo
|do fornecedor ele não dá a mensagem da exceção...

Bom, além do q foi dito acima, acho q seria melhor se vc simplesmente criasse seu campo como NOT NULL. E mais ainda, utilizase a propriedade REQUIRED do TField para checar nulos no ´Cliente´.


|Ele aparece a mensagem do delphi dizendo que o campo não pode ser
|nulo, mas não tem jeito de aparecer a mensagem que eu coloquei na
|exceção.. Como poderia proceder ??

Provavelmente então seu campo já está como NOT NULL, então, bastaria vc tratar a exceção padrão gerada pelo Delphi (em um Try..Except ou no evento OnException do Application) e então jogar SUA mensagem.


Abraço


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar