Theotokos Posted September 9, 2016 Report Share Posted September 9, 2016 Bom Dia Pessoal!!! Estou precisando do seguinte: Tenho uma variavel (cDescricao) em um GET, ele já entra com um conteudo especifico; eu preciso forçar que o usuário modifique este conteudo, acrescentado mais alguma informação... como faço isto? Quote Link to comment Share on other sites More sharing options...
evertonlb Posted September 9, 2016 Report Share Posted September 9, 2016 Bom dia... o Valid xGet <> VariavelX acho que pode te ajudar... ou com um OnChange chamando uma função para verificar o conteúdo.. Quote Link to comment Share on other sites More sharing options...
Theotokos Posted September 9, 2016 Author Report Share Posted September 9, 2016 Bom dia... o Valid xGet <> VariavelX acho que pode te ajudar... ou com um OnChange chamando uma função para verificar o conteúdo.. Olá! então, eu não queria justamente isso, ter que utilizar uma outra variavel para depois comparar... pois tem uns outros processos... lembro que no "old clipper" tinha como fazer isso usando a variavel do Get (oGet:....) será que não tem no fivewin? senão me engano era algo assim : oGet:VarGet() <> oGet:Buffer Quote Link to comment Share on other sites More sharing options...
kapiaba Posted September 9, 2016 Report Share Posted September 9, 2016 oGet:bChange := { || SuaFuncao() } Quote Link to comment Share on other sites More sharing options...
kapiaba Posted September 9, 2016 Report Share Posted September 9, 2016 Quote Link to comment Share on other sites More sharing options...
Theotokos Posted September 9, 2016 Author Report Share Posted September 9, 2016 retornar o valor get oGet:VarGet() o que eu preciso é pegar este valor (oGet:VarGet()) e comparar com o antes, em clipper eu vazia ( oGet:VarGet() <> oGet:cBuffer ) cBuffer armazenava o conteudo antes de tecla enter Quote Link to comment Share on other sites More sharing options...
kapiaba Posted September 9, 2016 Report Share Posted September 9, 2016 Quote Link to comment Share on other sites More sharing options...
Theotokos Posted September 9, 2016 Author Report Share Posted September 9, 2016 Vlw Kapi! Agora consegui usar o cBuffer (forma correta), porem ele retorna o mesmo conteudo de VarGet(), então não serve... tem algum outra variavel do TGet que retorne o conteudo antes de ser alterado? olhei em tget.prg mas não achei nada... Quote Link to comment Share on other sites More sharing options...
Theotokos Posted September 9, 2016 Author Report Share Posted September 9, 2016 Descobri, é assim: RESOLVIDO :oGet:Buffer Conteudo Atualizado do Campo :cCaption Conteudo Antes da modificação Quote Link to comment Share on other sites More sharing options...
kapiaba Posted September 9, 2016 Report Share Posted September 9, 2016 http://fivetechsupport.com/forums/viewtopic.php?f=3&t=4031&start=0 Quote Link to comment Share on other sites More sharing options...
augustogomes Posted December 28, 2016 Report Share Posted December 28, 2016 Descobri, é assim: RESOLVIDO :oGet:Buffer Conteudo Atualizado do Campo :cCaption Conteudo Antes da modificação olá Theotokos, Eu não consegui fazer funcionar como você disse, tem como mostrar um trecho de como esta usando este dois dados? Quote Link to comment Share on other sites More sharing options...
Theotokos Posted December 28, 2016 Author Report Share Posted December 28, 2016 para saber se o campo foi alterado eu comparos os dois... mais ou menos assim... é que estou viajando então não tem como postar para vc a rotina,,, mas faço isto assim que possivel REDEFINE GET oGet VAR cNome PICT "@!X" Valid ( ValidNome(oGet)) Function ValidNome(oGet) cConteudoAtual := oGet:oGet:Buffer cConteudoAntes := oGet:cCaption If cConteudoAtual <> cConteudoAntes MsgInfo("Get Alterado","Alterado") EndIf Return(.t.) Quote Link to comment Share on other sites More sharing options...
augustogomes Posted December 29, 2016 Report Share Posted December 29, 2016 para saber se o campo foi alterado eu comparos os dois... mais ou menos assim... é que estou viajando então não tem como postar para vc a rotina,,, mas faço isto assim que possivel REDEFINE GET oGet VAR cNome PICT "@!X" Valid ( ValidNome(oGet)) Function ValidNome(oGet) cConteudoAtual := oGet:oGet:Buffer cConteudoAntes := oGet:cCaption If cConteudoAtual <> cConteudoAntes MsgInfo("Get Alterado","Alterado") EndIf Return(.t.) É desta forma que eu estava testando, mas no meus testes a oGet:cCaption sempre esta vazia. Eu faço assim defino as variaveis com valores vazios cNome:= spac(30) Defino os gets REDEFINE GET oGet VAR cNome PICT "@!X" Valid ( ValidNome(oGet)) carrego valor a variavel cNome:="EXEMPLO" oGet:refresh() Quando Digita o valor cNome e vai pro Valid a oGet:cCaption retorna vazio. Minha versão é o Five 1608. Quote Link to comment Share on other sites More sharing options...
Theotokos Posted December 29, 2016 Author Report Share Posted December 29, 2016 no meu caso eu carrego a variavel com o valores já, pois utilizo esta rotina em Alteração de Cliente por exemplo... qdo chamo a rotina de alteração : cNome := D_NOME // Recebe os dados do arquivo cEndereço := D_ENDERECO cBairro D_BAIRRO ..... Etc() DEFINE DIALOG .... .... REDEFINE GET oGet VAR cNome PICT "@!X" Valid ( ValidNome(oGet)) ... ACTION DIALOG .... ... Return(nil) Function ValidNome(oGet) cConteudoAtual := oGet:oGet:Buffer cConteudoAntes := oGet:cCaption If cConteudoAtual <> cConteudoAntes MsgInfo("Get Alterado","Alterado") EndIf Return(.t.) Quote Link to comment Share on other sites More sharing options...
CIACPD Posted December 29, 2016 Report Share Posted December 29, 2016 Augusto, Bom Dia. oGet1:ctext() -> valor alterado oGet1:Value()-> valor do objeto antes da alteração Daniel Segura Quote Link to comment Share on other sites More sharing options...
augustogomes Posted December 29, 2016 Report Share Posted December 29, 2016 Entendi Theotokos, da forma que faz ele funciona mesmo. Pelo jeito para o cCaption funcionar ele guarda os dados na definição dos gets, da forma que faço não deu certo, mas já entendi, obrigado pela resposta. CIACPD oGet1:ctext() -> valor alterado oGet1:Value()-> valor do objeto antes da alteração Ambos tem o mesmo valor no VALID. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.