[off-topic] ´NULL´ em trigger no IB
pessoal...
Uso: Delphi 7, Cds, SqlQry, SqlConnection, Ib 6.0
to fazendo uma trigger e cheguei um prob.
aqui eu tento pegar o numero do caixa... se for o funcionario for um caixa... mas se o funcionario non for enton ele retorna vazio... (ateh aqui funca certinho)
Aqui... se lah em cima vier Null enton eu faco esse select p achar se o caixa Financeiro esta aberto e dae eu jogo nele sem importar qual eh o funcionario
[b:7a34da6c95]Problema[/b:7a34da6c95]: Eh o seguinte [b:7a34da6c95]if (:V_CODCAIXA=´NULL´) then[/b:7a34da6c95] non esta funcando.... eu estou debugando a trigger a variavel eh Null mas ele non vai p o then simplesmente sai... como eu faco essa comparacao de NULL?
Uso: Delphi 7, Cds, SqlQry, SqlConnection, Ib 6.0
to fazendo uma trigger e cheguei um prob.
/*PEGA O CODIGO DO CAIXA*/ select cod_caixa from funccaixa where cod_emp=NEW.cod_emp and codsen=new.codsen INTO :V_CODCAIXA;
aqui eu tento pegar o numero do caixa... se for o funcionario for um caixa... mas se o funcionario non for enton ele retorna vazio... (ateh aqui funca certinho)
/*se non encontrou um caixa enton quem abriu non eh um caixa... enton jogar no caixa financieiro*/ if (:V_CODCAIXA=´NULL´) then select c.vendabert from tabcaixa c, funccaixa f, cadsen e where c.cod_emp=new.cod_emp and c.datahoraf is null and c.vendabert=f.cod_caixa and c.cod_emp=f.cod_emp and f.codsen=e.codsen and e.tipo_sen<>1 INTO :V_CODCAIXA;
Aqui... se lah em cima vier Null enton eu faco esse select p achar se o caixa Financeiro esta aberto e dae eu jogo nele sem importar qual eh o funcionario
[b:7a34da6c95]Problema[/b:7a34da6c95]: Eh o seguinte [b:7a34da6c95]if (:V_CODCAIXA=´NULL´) then[/b:7a34da6c95] non esta funcando.... eu estou debugando a trigger a variavel eh Null mas ele non vai p o then simplesmente sai... como eu faco essa comparacao de NULL?
Osocram
Curtidas 0
Respostas
Gandalf.nho
18/10/2004
Você está passando o NULL como se fosse uma string. Use assim:
if (V_CODCAIXA IS NULL) then
if (V_CODCAIXA IS NULL) then
GOSTEI 0
Vinicius2k
18/10/2004
Colega,
Duas coisas :
1. NULL não é uma String.
2. Os [color=red:58762a96a5][b:58762a96a5]:[/b:58762a96a5][/color:58762a96a5] (dois pontos) só são usados dentro de instruções SQL.
T+
Duas coisas :
1. NULL não é uma String.
2. Os [color=red:58762a96a5][b:58762a96a5]:[/b:58762a96a5][/color:58762a96a5] (dois pontos) só são usados dentro de instruções SQL.
if (V_CODCAIXA is null) then ...
T+
GOSTEI 0
Osocram
18/10/2004
Colega,
Duas coisas :
1. NULL não é uma String.
2. Os [color=red:07da41ae3a][b:07da41ae3a]:[/b:07da41ae3a][/color:07da41ae3a] (dois pontos) só são usados dentro de instruções SQL.
T+
if (V_CODCAIXA is null) then ...
na verdade isso eh uma trigger enton tenho q colocar (dois pontos) p dizer q eh uma variavel....
tem lugares q se eu non coloco ele dah erro...
eu tinha tentando V_CodCaixa = null, V_codCaixa.isNull
hauhauhah nenhum dava certo....
vou tentar esse ae q vcs passaram, jah digo se deu certo
GOSTEI 0
Osocram
18/10/2004
Galera deu certo
:D
Vlw
:D
Vlw
GOSTEI 0