Problema com o campo NULL

Firebird

01/10/2004

Estou fazendo assim mas ele entra e da erro. Ele nao consegue converter null para string. Esse campo em alguns casos fica em branco e por isso estou com dificuldade nesse caso. Estou usando fire 1.5

if Dataderma.ZQueryBalcao.FieldByName(´codemb5´).AsInteger null then
txtemb5.Text:=inttostr(Dataderma.ZQueryBalcao[´codemb5´]);
:?:


Rjcerri

Rjcerri

Curtidas 0

Respostas

Emerson Nascimento

Emerson Nascimento

01/10/2004

qdo vc utiliza um typecast para tratamento do valor do campo, sempre será retornado o menor valor possivel para o tipo.

campo string com valor null -> tabela[campo].asstring = ´´
campo integer com valor null -> tabela[campo].asinteger = 0
campo datetime com valor null -> tabela[campo].asdatetime = 0 (01/01/1900)

para saber se o campo é nulo, tente:

if not Dataderma.ZQueryBalcao.FieldByName(´codemb5´).IsNull then
    txtemb5.Text:=inttostr(Dataderma.ZQueryBalcao[´codemb5´]);


GOSTEI 0
Afarias

Afarias

01/10/2004

outra opção:

txtemb5.Text := Dataderma.ZQueryBalcao.FieldByName(´codemb5´).AsString;

(neste caso, o NULL será retornado como ´´, como citado pelo emerson.en)



T+


GOSTEI 0
POSTAR