Qual a diferença entre os dados da query que a variavel pego

28/05/2008

0

Tem alguma diferença entre estes dois if´s aqui?
[color=red:46966e8c81]//LPedidoR := TPedido_Reservar.Create(fr_FmGradePedido.qrySelecionado[´num_pedido´]);[/color:46966e8c81]
[color=blue:46966e8c81]LPedidoR := TPedido_Reservar.Create(fr_FmGradePedido.qrySelecionado.FieldByName(´num_pedido´).AsInteger);[/color:46966e8c81]

A que esta em vermelho me trava o sistema

A que esta em azul funciona.

Por isso gostaria de saber se existe diferença entre uma e outra, se o que ela me traz para variavel é os mesmos dados.


Adriano_servitec

Adriano_servitec

Responder

Posts

28/05/2008

Catunda

Na linha em vermelho, se ´num_pedido´ for nula ou vazia dará um erro de incompatibilidade.
Na linha em azul, ao utilizar o ´.AsInteger´ o valor será sempre convertido para um inteiro. Caso esteja nulo ou vazia vem como 0(zero).
Resumindo: a utilização das definições asinteger, asstring convertem um valor nulo ou vazio para o semelhante mais próximo.


Responder

28/05/2008

Adriano_servitec

Na linha em vermelho, se ´num_pedido´ for nula ou vazia dará um erro de incompatibilidade. Na linha em azul, ao utilizar o ´.AsInteger´ o valor será sempre convertido para um inteiro. Caso esteja nulo ou vazia vem como 0(zero). Resumindo: a utilização das definições asinteger, asstring convertem um valor nulo ou vazio para o semelhante mais próximo.
Obrigado pela resposta amigo, vi aqui quando debugo que a linha em vermelho esta travando o sistema, a que esta em azul esta me trazendo um valor diferente

agora assim

[color=green:665b09c725]LPedidoR := TPedido_Reservar.Create(fr_FmGradePedido.qrySelecionado.FieldByName(´num_pedido´).Value);[/color:665b09c725]

a variavel pega o valor certo, sabe me dizer o porque?


Responder

28/05/2008

Eniorm

o campo num_pedido na sua tabela foi definido como inteiro ?


Responder

28/05/2008

Adriano_servitec

[quote:ca286df466=´Enio Marconcini´]o campo num_pedido na sua tabela foi definido como inteiro ?[/quote:ca286df466]Não é um campo tipo numeric 12,0


Responder

28/05/2008

Paulo_amorim

Olá

Se eu ainda me lembro, pegar como Value é um tipo genérico, que consome mais recursos.
Vale a pena um F1 no Value pra ver no Help o seu comportamento.

Espero que ajude
Até+


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

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

Aceitar