Verificando numeros negativos(acredito ser simples)

Delphi

05/05/2003

Pessoal to com o seguinte problema:
Preciso fazer a seguinte pergunta ao meu sistema:
Estoque atual: 100
Saida do estoque:120(isso se o usuario digitar)
resto: -20

Preciso fazer o seguinte calculo: o que o usuario digitar - o estoque atual e ai verificar se o resto é negativo ou seja menor que 0.
Tudo isso eu faco tipo assim:

if (estatu-saida)<0 then
begin
form1.caption:=´Estoque negativo´;
end;

Mais nao funciona ele nao identifica como negativo, eu ja usei Double, Currency, real e nada me ajudem, please.


Isaac Cavalcanti

Isaac Cavalcanti

Curtidas 0

Respostas

4_olho

4_olho

05/05/2003

Você já tentou

if estat<saida then
form1.caption:=´Estoque negativo´;

Deve funcionar, SE AS VARIÁVEIS estiverem perfeitamente definidas.

O que me intriga é : Por quê a mensagem aparece na barra da Janela ? (form). Não me parece um local apropriado, pois exige que os olhos se desviem muito ...

ATENÇÃO : o código que escrevi é EXATEMENTE igual ao seu, mas mais ´enxuto´.


GOSTEI 0
Okama

Okama

05/05/2003

Cara eu testei o código e funcionou!

Talvez não esteja exibindo a mensagem no Caption do form ou o form está incorreto.

Substitui por Showmessage(´Estoque negativo´) e verifique se o teste funciona.


GOSTEI 0
Edich

Edich

05/05/2003

Tente o seguinte.


coloque em seu form um TEdit com o nome teste.

if (estatu-saida)<0 then
begin
form1.caption:=´Estoque negativo´;
end;
teste.text:= floattostr((estatu-saida));

assim voce sabera como o sistema esta calculando.

Valeu


GOSTEI 0
Isaac Cavalcanti

Isaac Cavalcanti

05/05/2003

Pessoal deixa eu explicar melhor, eu estou manipulando um banco de dados, a informação ela aparece por meio do MessageDlg, a questao é que eu faco uma verificacao antes do usuario gravar a informacao no envento
BeforePost, eu pergunto se o estoque ficara negativo com a retirada da quantidade que o usuario digitou so que ele passa direto por exemplo eu tenho
150,5 gramas no estoque ai o usuario digita na saida: 151 era para ficar negativo, o resultado fica negativo quando a operação é efetuada fica mais ou menos -0,5 so q o correto era aparecer a mensagem de erro, estoque negativo tente novamente, e somente liberar quando o estoque na fosse ficar negativo entendeu? o numero aparece negativo, mais o if na hora de verificar nao perceber isso.


GOSTEI 0
POSTAR