Tenho um sistema de Cartão de Crédito, uso a visual lib, quando comparo as variáveis abaixo o sistema retorna .F..
Creio que o motivo esteja na Lib, mas posso estar errado.
wvlrrecd = 252.50 - // Valor pago pelo cliente
wtotger = 252.50 - // Valor somado - dívida do cliente
If wvlrrecd = wtotger // pgto total
Já exibi os valores na tela e são exatamente iguais, inclusive na picture.
Gostaria de saber se alguém já viu este tipo de problema.
Desde ja agradeço.
Erro de comparação Clipper x Visual Lib 123 = 123 da .F. ??
Moderador: Moderadores
- rrfsistemas
- Usuário Nível 3

- Mensagens: 249
- Registrado em: 11 Jul 2004 18:16
- Localização: Uberlândia/MG
Erro de comparação Clipper x Visual Lib 123 = 123 da .F. ??
"Não é a ferramenta que faz o artesão e sim a sua criatividade...""
Renato Ribeiro Ferreira
Tecnologia em Analise de Sistemas de Informação
http://www.rrfsistemas.hd1.com.br
( VFP 9 + MySql e/ou Oracle 11 ) - ...Harbour/MiniGui...
Renato Ribeiro Ferreira
Tecnologia em Analise de Sistemas de Informação
http://www.rrfsistemas.hd1.com.br
( VFP 9 + MySql e/ou Oracle 11 ) - ...Harbour/MiniGui...
-
Dudu_XBase
- Membro Master

- Mensagens: 1071
- Registrado em: 25 Ago 2003 16:55
Boa Tarde Renato, ja tive esse problema.
Sabe o que eu fiz...eu converti para caracter...ae foi di boa...na época entrei em pânico..rs..uma pessoa q poderia nos explicar isso é o Maligno...
// Faça isso q resolverá seu problema
If strzero(wvlrrecd,10,2) = strzero(wtotger ,10,2)
Tamanho foi o susto q fiz uma função para realizar comparações entre váriaveis numéricas...rs...
(Y)
Sabe o que eu fiz...eu converti para caracter...ae foi di boa...na época entrei em pânico..rs..uma pessoa q poderia nos explicar isso é o Maligno...
// Faça isso q resolverá seu problema
If strzero(wvlrrecd,10,2) = strzero(wtotger ,10,2)
Tamanho foi o susto q fiz uma função para realizar comparações entre váriaveis numéricas...rs...
(Y)
________________________________________________________________________________________________________
(Aow Saudade) Clipper 5.2e, Blinker 7, RDD SIXNSX, DBFCDX /Xharbour 1.0, Rdd Mediator (Mysql) Free , RDD Sqlrdd (Sql Server) Comercial
(Hoje) C# Python Sql Server e Oracle
- rrfsistemas
- Usuário Nível 3

- Mensagens: 249
- Registrado em: 11 Jul 2004 18:16
- Localização: Uberlândia/MG
Caro Dudu
OBRIGADOOOO pela dica....
Consegui resolver parte do problema invertendo a comparação com sinais de <>,>=, <=
MAS a comparação (= a) terei que usar sua dica...
wvlrrecd = 252.50 - // Valor pago pelo cliente
wtotger = 252.50 - // Valor somado - dívida do cliente
If wvlrrecd = wtotger // pgto total
Será que o problema é da lib
OBRIGADOOOO pela dica....
Consegui resolver parte do problema invertendo a comparação com sinais de <>,>=, <=
MAS a comparação (= a) terei que usar sua dica...
wvlrrecd = 252.50 - // Valor pago pelo cliente
wtotger = 252.50 - // Valor somado - dívida do cliente
If wvlrrecd = wtotger // pgto total
Será que o problema é da lib
"Não é a ferramenta que faz o artesão e sim a sua criatividade...""
Renato Ribeiro Ferreira
Tecnologia em Analise de Sistemas de Informação
http://www.rrfsistemas.hd1.com.br
( VFP 9 + MySql e/ou Oracle 11 ) - ...Harbour/MiniGui...
Renato Ribeiro Ferreira
Tecnologia em Analise de Sistemas de Informação
http://www.rrfsistemas.hd1.com.br
( VFP 9 + MySql e/ou Oracle 11 ) - ...Harbour/MiniGui...
- rrfsistemas
- Usuário Nível 3

- Mensagens: 249
- Registrado em: 11 Jul 2004 18:16
- Localização: Uberlândia/MG
Caros colegas
como fazer para comparar se um valor é maior do que o outro ??
como fazer para comparar se um valor é maior do que o outro ??
"Não é a ferramenta que faz o artesão e sim a sua criatividade...""
Renato Ribeiro Ferreira
Tecnologia em Analise de Sistemas de Informação
http://www.rrfsistemas.hd1.com.br
( VFP 9 + MySql e/ou Oracle 11 ) - ...Harbour/MiniGui...
Renato Ribeiro Ferreira
Tecnologia em Analise de Sistemas de Informação
http://www.rrfsistemas.hd1.com.br
( VFP 9 + MySql e/ou Oracle 11 ) - ...Harbour/MiniGui...
Prezado colega
Você pode comparar normalmente usando os operadores > (maior que), < (menor que), >= (maior ou igual a) ou <= (menor ou igual a), independentemente do dado ser do tipo caractere ou numérico, os 2 retornarão (se não fosse o bug do Clipper) o mesmo resultado, porém para fazer comparação de valores numérico é recomendável fazer a comparação transformando para caractere, isso por causa do bug de comparação de valores núméricos (ponto flutuante).
Até logo.
Marcelo
Você pode comparar normalmente usando os operadores > (maior que), < (menor que), >= (maior ou igual a) ou <= (menor ou igual a), independentemente do dado ser do tipo caractere ou numérico, os 2 retornarão (se não fosse o bug do Clipper) o mesmo resultado, porém para fazer comparação de valores numérico é recomendável fazer a comparação transformando para caractere, isso por causa do bug de comparação de valores núméricos (ponto flutuante).
Até logo.
Marcelo
- rrfsistemas
- Usuário Nível 3

- Mensagens: 249
- Registrado em: 11 Jul 2004 18:16
- Localização: Uberlândia/MG
Bom dia amiguinhos
estou feliz porque consegui resolver o meu "BUG"
troquei os if por Do Case e acreditem... RESOLVEU
OBRIGADOOOOO A TODOS.
estou feliz porque consegui resolver o meu "BUG"
troquei os if por Do Case e acreditem... RESOLVEU
OBRIGADOOOOO A TODOS.
"Não é a ferramenta que faz o artesão e sim a sua criatividade...""
Renato Ribeiro Ferreira
Tecnologia em Analise de Sistemas de Informação
http://www.rrfsistemas.hd1.com.br
( VFP 9 + MySql e/ou Oracle 11 ) - ...Harbour/MiniGui...
Renato Ribeiro Ferreira
Tecnologia em Analise de Sistemas de Informação
http://www.rrfsistemas.hd1.com.br
( VFP 9 + MySql e/ou Oracle 11 ) - ...Harbour/MiniGui...
