Olá amigos.
Pelo que entendí o nossa amigo está com problema de formatação do
resultado na tela.
Existem várias maneiras de exibir o valor de uma váriável numérica
na tela, tanto com SAY quanto com GET.
1) com máscara fixa:
a := 55.678
b := STR(MyFunc(a),10,05)
@ x,y SAY b
===>> saída: [ 32.44300] && só para exemplo.
2) com máscara fixa:
a := 55.678
@ x,y SAY STR(MyFunc(a),10,05)
===>> saída: [ 32.44300] && só para exemplo.
3) com máscara fixa e com zeros à esquerda:
a := 55.678
b := STRZERO(MyFunc(a),10,05)
@ x,y SAY b
===>> saída: [0032.44300]
4) com máscara fixa e com zeros à esquerda:
a := 55.678
@ x,y SAY STRZERO(MyFunc(a),10,05)
===>> saída: [0032.44300]
5) com máscara variável:
a := 55.678
b := "99999.99999"
@ x,y SAY TRANSFORM(MyFunc(a),b)
===>> saída: [ 32.44300]
6) com máscara varável usando GET (ver NOTA abaixo)
a := 55.678
b := "99999.99999"
@ x,y GET a PICT b VALID MyFunc(a) WHEN .f.
===>> saída: [ 32.44300]
NOTA: A cláusula WHEN falsa evita o acesso do cursor aquele campo, mas
o valor é impresso na tela. Como não testei esta forma, é possível que
a Função não seja acessada quando a cláusula WHEN seja falsa, como é o
presente caso. É neccessário testar para ver no que dá.
Um grande abraço.
Pular o get
Moderador: Moderadores
-
Hasse
- Usuário Nível 4

- Mensagens: 820
- Registrado em: 19 Out 2004 10:30
- Localização: Jaraguá do Sul - SC
Hasse
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
Para resolver:
**************************************
* TESTANDO SALDO DE GET
**************************************
LOCAL VN_TOTAL, VN_PAGO
PRIVATE VN_TROCO, VN_SALDO
CLS
VN_TOTAL := 0000000
VN_PAGO := 0000000
VN_TROCO := 0000000
VN_SALDO := 0000000
@ 10,10 SAY "TOTAL ...:" GET VN_TOTAL PICT "9999.99"
@ 12,10 SAY "PAGO ....:" GET VN_PAGO PICT "9999.99"
@ 14,10 SAY "TROCO ...:" GET VN_TROCO PICT "9999.99" WHEN(FUNCAO(VN_TOTAL,VN_PAGO))
@ 16,10 SAY "SALDO ...:" GET VN_SALDO PICT "9999.99" WHEN(SALDO(VN_TOTAL,VN_PAGO))
READ
FUNCTION FUNCAO(VN_TOTAL,VN_PAGO)
VN_TROCO := (VN_TOTAL-VN_PAGO)
RETURN(.F.)
FUNCTION SALDO(VN_TOTAL,VN_PAGO)
VN_SALDO := (VN_TOTAL-VN_PAGO)
RETURN(.T.)
Obs: Em caso de duvidas poste aqui.
:xau
**************************************
* TESTANDO SALDO DE GET
**************************************
LOCAL VN_TOTAL, VN_PAGO
PRIVATE VN_TROCO, VN_SALDO
CLS
VN_TOTAL := 0000000
VN_PAGO := 0000000
VN_TROCO := 0000000
VN_SALDO := 0000000
@ 10,10 SAY "TOTAL ...:" GET VN_TOTAL PICT "9999.99"
@ 12,10 SAY "PAGO ....:" GET VN_PAGO PICT "9999.99"
@ 14,10 SAY "TROCO ...:" GET VN_TROCO PICT "9999.99" WHEN(FUNCAO(VN_TOTAL,VN_PAGO))
@ 16,10 SAY "SALDO ...:" GET VN_SALDO PICT "9999.99" WHEN(SALDO(VN_TOTAL,VN_PAGO))
READ
FUNCTION FUNCAO(VN_TOTAL,VN_PAGO)
VN_TROCO := (VN_TOTAL-VN_PAGO)
RETURN(.F.)
FUNCTION SALDO(VN_TOTAL,VN_PAGO)
VN_SALDO := (VN_TOTAL-VN_PAGO)
RETURN(.T.)
Obs: Em caso de duvidas poste aqui.
:xau
Anderson
Clipper 52e/Clipper 53b/Blinker 7/Vlib/Fglib/DBFNTX
_______________________________________________
Migrando para [x]Harbour 0.99.60 (SimpLex) + MiniGUI 1.2 Exp. (Build 22)
_______________________________________________
Assine o manifesto dos artistas pela preservação da amazônia.
Clipper 52e/Clipper 53b/Blinker 7/Vlib/Fglib/DBFNTX
_______________________________________________
Migrando para [x]Harbour 0.99.60 (SimpLex) + MiniGUI 1.2 Exp. (Build 22)
_______________________________________________
Assine o manifesto dos artistas pela preservação da amazônia.
-
support sistemas
- Usuário Nível 2

- Mensagens: 73
- Registrado em: 22 Set 2005 23:43
- Localização: Londrina
-
Josmar dos Santos
- Usuário Nível 3

- Mensagens: 277
- Registrado em: 11 Jan 2006 18:36
- Localização: Botucatu-SP
Pular o get
Ola Support Sistemas.
E identico que vc falow. Veja bem, quando a função e declarada na rotina do saldo_rec, ele executa a subtração e jogo o valor no mesmo, so não quero que o cursor acione o saldo, ou seja, jogue somente o valor da função e ja cadastra o valor no saldo_rec. Falo isso porque não quero o usuário tenha acesso nesse saldo_rec para não mudar o valor, porque uso essa variavel como determinante do setfilter...entendeu ?...Mas as informações que os colegas passaro -me , ja são excelentes. Da para trabalhar legal, mas e claro se vier mais, melhor. O conhecimento e a unica coisa que ninguem podera tirar de nos, portando se vc tiver mais alguma coisa a nos declarar, sera muito bem vinda !
grato Josmar
E identico que vc falow. Veja bem, quando a função e declarada na rotina do saldo_rec, ele executa a subtração e jogo o valor no mesmo, so não quero que o cursor acione o saldo, ou seja, jogue somente o valor da função e ja cadastra o valor no saldo_rec. Falo isso porque não quero o usuário tenha acesso nesse saldo_rec para não mudar o valor, porque uso essa variavel como determinante do setfilter...entendeu ?...Mas as informações que os colegas passaro -me , ja são excelentes. Da para trabalhar legal, mas e claro se vier mais, melhor. O conhecimento e a unica coisa que ninguem podera tirar de nos, portando se vc tiver mais alguma coisa a nos declarar, sera muito bem vinda !
grato Josmar
- filizola
- Usuário Nível 3

- Mensagens: 421
- Registrado em: 19 Ago 2003 20:10
- Localização: Belo Horizonte/MG
OLHEM O POST QUE EU HAVIA COLOCADO ANTEIORMENTE !!!!!!
@ lin,col get valor_rec pict "@ez 99,999.99" valid(IFU03011(valor_rec,@saldo_rec))
function ifu03011(valor_rec_f, saldo_rec_f)
saldo_rec_f=saldo_rec_f-valor_rec_f
@ lin,col say saldo_rec_f pict "@ez 99,999.99"
return(.t.)
@ lin,col get valor_rec pict "@ez 99,999.99" valid(IFU03011(valor_rec,@saldo_rec))
function ifu03011(valor_rec_f, saldo_rec_f)
saldo_rec_f=saldo_rec_f-valor_rec_f
@ lin,col say saldo_rec_f pict "@ez 99,999.99"
return(.t.)
"Um passo a frente, e já não estará mais no mesmo lugar..."
-
Josmar dos Santos
- Usuário Nível 3

- Mensagens: 277
- Registrado em: 11 Jan 2006 18:36
- Localização: Botucatu-SP
Pular o get
Ola galera...testei todas as rotinas e praticamente todas funcionou, mas a que mais deu certo ao meu sistema foi do "and"....mas quero lembrar que todas as rotinas serao guardadas aqui comigo, porque todas sao super validas.....gostaria de agradecer a todos pela força e pela atenção e pra mim esse assunto esta encerrado, a menos, e claro que alguem queira proceguir com ele...valew mais uma vez galera......
Um abraço a todos...
josmar
Um abraço a todos...
josmar
-
support sistemas
- Usuário Nível 2

- Mensagens: 73
- Registrado em: 22 Set 2005 23:43
- Localização: Londrina
Josmar descupe a demora no retorno
e isso mesmo que eu uso no valid eu chamo a funcao no get anterior e no get do saldo eu trato o when ex: se valor for =0 ele para senao foi
entendeu
uso isso direto
qual coisa mande email roberto_support@hotmail.com
e isso mesmo que eu uso no valid eu chamo a funcao no get anterior e no get do saldo eu trato o when ex: se valor for =0 ele para senao foi
entendeu
uso isso direto
qual coisa mande email roberto_support@hotmail.com