Como pegar o nome da variavel do get ativo?
Moderador: Moderadores
-
romulobonnadio
- Usuário Nível 1

- Mensagens: 48
- Registrado em: 08 Dez 2009 23:48
- Localização: Belo Horizonte
Como pegar o nome da variavel do get ativo?
Como pegar o nome da variavel do get ativo?
Tentei por ReadVar() => Ele pega o nome da variavel lida atualmente mas nao pega o get ativo.
Tentei por GetFldVar()=> Mas ele me retorna vazio quando uso o Blinker7, no exospace ele me retorna legal e ai galera oque faco agora?
Tentei por ReadVar() => Ele pega o nome da variavel lida atualmente mas nao pega o get ativo.
Tentei por GetFldVar()=> Mas ele me retorna vazio quando uso o Blinker7, no exospace ele me retorna legal e ai galera oque faco agora?
Como pegar o nome da variavel do get ativo?
Acredito que deseje o conteudo da variavel em edição no objeto get:
Código: Selecionar todos
Alert( Transform( &( readvar(), NIL ) )Código: Selecionar todos
Alert( Transform( GetActive():varGet(), NIL ) )Código: Selecionar todos
Alert( Transform( GetActive():name, NIL ) )
Editado pela última vez por Imatech em 05 Out 2012 15:54, em um total de 3 vezes.
M., Ronaldo
by: IMATECH
IMATION TECNOLOGIA
by: IMATECH
IMATION TECNOLOGIA
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Como pegar o nome da variavel do get ativo?
Veja exemplo:Como pegar o nome da variavel do get ativo?
Código: Selecionar todos
cNome:=Space(38)
cTel:=Space(12)
cls
@ 12,00 Get cNome When NomVar()
@ 13,00 Get cTel When NomVar()
Read
Function NomVar()
@ 24,00 Say "Nome da atual variavel: "+PadR(readvar(),54)
Return .t.Como assim ? Pode explicar melhor o que você precisa ?Ele pega o nome da variavel lida atualmente mas nao pega o get ativo.
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
romulobonnadio
- Usuário Nível 1

- Mensagens: 48
- Registrado em: 08 Dez 2009 23:48
- Localização: Belo Horizonte
Como pegar o nome da variavel do get ativo?
Ex.:
@ ... get var1
CarregVar()
@ ... get var2
CarregVar()
@ ... get var3
CarregVar()
read
Function carregVar()
&GetFldVar() := "teste" // Anteriormente usando exospace ele pegava a variavel Var1 e preenchia o valor teste
// Atualmente usando blinker o GetFldVar nao retorna o nome da variavel, pois ela ainda nao esta ativa no get neste momento.
Return .t.
Esse seria o meu problema atual, pois terei que alterar todo meu sistema para colocar esta funcao dentro do Where, mesmo assim essa funcao deveria ser executada antes do where e nao dentro do where, pois utilizo ela para escrever em tela as descricoes dos campos codificados ex.:
Cliente: 000007 Romulo Bonnadio
Acima eu uso o Say para o Label Cliente
Uso o get para visualizar o codigo
e o nome do cliente geralmente eh visualizado em tela atraves de uma funcao que busca no banco, localiza a linha e coluna do get anteriormente adicionado em tela e imprime o nome.
Sera que fui claro?
@ ... get var1
CarregVar()
@ ... get var2
CarregVar()
@ ... get var3
CarregVar()
read
Function carregVar()
&GetFldVar() := "teste" // Anteriormente usando exospace ele pegava a variavel Var1 e preenchia o valor teste
// Atualmente usando blinker o GetFldVar nao retorna o nome da variavel, pois ela ainda nao esta ativa no get neste momento.
Return .t.
Esse seria o meu problema atual, pois terei que alterar todo meu sistema para colocar esta funcao dentro do Where, mesmo assim essa funcao deveria ser executada antes do where e nao dentro do where, pois utilizo ela para escrever em tela as descricoes dos campos codificados ex.:
Cliente: 000007 Romulo Bonnadio
Acima eu uso o Say para o Label Cliente
Uso o get para visualizar o codigo
e o nome do cliente geralmente eh visualizado em tela atraves de uma funcao que busca no banco, localiza a linha e coluna do get anteriormente adicionado em tela e imprime o nome.
Sera que fui claro?
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Como pegar o nome da variavel do get ativo?
Eu estou tentando ajudar-lhe e esse não é um tom amistoso. Senão for claro ou eu não entender, desculpe: mas precisará de mais paciência !Sera que fui claro?
Desculpe, mas na minha opinião essa sequência de código:
Não está correta. A função CarregVar() como você a disponibilizou, não terá efeito algum, nem está vinculada com GET algum... apenas chama a função nas diferentes linhas, mas isso não quer dizer que tem vínculo algum.Ex.:
@ ... get var1
CarregVar()
@ ... get var2
CarregVar()
@ ... get var3
CarregVar()
read
Outra coisa, você fala da função GetFldVar() e esta função precisa de parâmetro, que seria o número de sequência dos GETs.
Posso eu estar errado, mas na minha modesta opinião, isso que você está afirmando: não procede. Pois não é o linker que irá fazer a conexão do CarregVar com o Get ativo. Precisa mostrar o código ou parte dele para entendermos melhor a situação.Anteriormente usando exospace ele pegava a variavel Var1 e preenchia o valor teste
// Atualmente usando blinker o GetFldVar nao retorna o nome da variavel, pois ela ainda nao esta ativa no get neste momento
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
romulobonnadio
- Usuário Nível 1

- Mensagens: 48
- Registrado em: 08 Dez 2009 23:48
- Localização: Belo Horizonte
Como pegar o nome da variavel do get ativo?
Amigo qdo escrevi acima "Sera que fui claro", desculpe mas nao foi falta de paciencia nem mesmo com intuito de lhe responder mau nao, foi simplesmente uma pergunta se eu consegui explicar meu problema a vc. Em hipotese alguma eu teria o porque de lhe tratar mau, ate mesmo porque sua intencao tem sido a melhor.Eu estou tentando ajudar-lhe e esse não é um tom amistoso. Senão for claro ou eu não entender, desculpe: mas precisará de mais paciência !
Desculpe!
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Como pegar o nome da variavel do get ativo?
Amigo, desculpas aceitas !romulobonnadio escreveu:Amigo qdo escrevi acima "Sera que fui claro", desculpe mas nao foi falta de paciencia nem mesmo com intuito de lhe responder mau nao, foi simplesmente uma pergunta se eu consegui explicar meu problema a vc. Em hipotese alguma eu teria o porque de lhe tratar mau, ate mesmo porque sua intencao tem sido a melhor.Eu estou tentando ajudar-lhe e esse não é um tom amistoso. Senão for claro ou eu não entender, desculpe: mas precisará de mais paciência !
Desculpe!
Voltando ao assunto do tópico, para que o seu código fique de forma funcional, você teria que apenas adicionar o when em cada get, só isso. Desta forma:
Código: Selecionar todos
cls
Store Space(10) to var1,var2,var3
@ 01,01 get var1 when CarregVar()
@ 02,01 get var2 when CarregVar()
@ 03,01 get var3 when CarregVar()
Read
Function CarregVar()
@ 24,00 Say PadC(GETFLDVAR(),80) Color "N/W"
Return .t.Espero ter ajudado.
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
romulobonnadio
- Usuário Nível 1

- Mensagens: 48
- Registrado em: 08 Dez 2009 23:48
- Localização: Belo Horizonte
Como pegar o nome da variavel do get ativo?
Agora ira me entender claramente:
O retorno da GetFldVar() esta vazio, porque sera?
Muito obrigado.
Código: Selecionar todos
Clear
Private GetList := {}
m1 := "ADFAFASDF1"
m2 := "ADFAFASDF2"
m3 := "ADFAFASDF3"
@ 10,10 say "ADF1" get m1 When fGetFldVar()
@ 11,10 say "ADF2" get m2 When fGetFldVar()
@ 12,10 say "ADF3" get m3 When fGetFldVar()
read
Function fGetFldVar()
@ row(),col()+20 say GetFldVar()
Return .T.Muito obrigado.
Editado pela última vez por Pablo César em 05 Out 2012 16:52, em um total de 1 vez.
Razão: Mensagem editada para colocar a tag [ code ]<br>Veja como utilizar esta tag: http://www.pctoledo.com.br/forum/faq.php?mode=bbcode#f2r1
Razão: Mensagem editada para colocar a tag [ code ]<br>Veja como utilizar esta tag: http://www.pctoledo.com.br/forum/faq.php?mode=bbcode#f2r1
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Como pegar o nome da variavel do get ativo?
Não, não está vazio o retorno do GetFldVar(), pois está retornando o nome da variável ativa.romulobonnadio escreveu:Agora ira me entender claramente:
O retorno da GetFldVar() esta vazio, porque sera?Código: Selecionar todos
Clear Private GetList := {} m1 := "ADFAFASDF1" m2 := "ADFAFASDF2" m3 := "ADFAFASDF3" @ 10,10 say "ADF1" get m1 When fGetFldVar() @ 11,10 say "ADF2" get m2 When fGetFldVar() @ 12,10 say "ADF3" get m3 When fGetFldVar() read Function fGetFldVar() @ row(),col()+20 say GetFldVar() Return .T.
Olha a tela aqui:
Não era essa a sua necessidade ?romulobonnadio escreveu:Como pegar o nome da variavel do get ativo?
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
romulobonnadio
- Usuário Nível 1

- Mensagens: 48
- Registrado em: 08 Dez 2009 23:48
- Localização: Belo Horizonte
Como pegar o nome da variavel do get ativo?
Encontrei o erro nas libs, estava como LIB CT,ptool52
Tirei a ptool52 e a funcao GetFldVar() voltou a retornar o nome do campo corretamente.
Amigo muito obrigado pela dica.
Tirei a ptool52 e a funcao GetFldVar() voltou a retornar o nome do campo corretamente.
Amigo muito obrigado pela dica.
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Como pegar o nome da variavel do get ativo?
Ahhh conflito de funções entre ambas libs... Acho que o que ajudou eu ter mencionado que era da CT.lib. Bom que bom que resolveu e a culpa não é do BLINKER rsEncontrei o erro nas libs, estava como LIB CT,ptool52
Tirei a ptool52 e a funcao GetFldVar() voltou a retornar o nome do campo corretamente.
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
romulobonnadio
- Usuário Nível 1

- Mensagens: 48
- Registrado em: 08 Dez 2009 23:48
- Localização: Belo Horizonte
Como pegar o nome da variavel do get ativo?
O engracado q o lnk tanto do exospace qto do blinker eh o mesmo rssr, so muda algumas coisas mas utilizam as mesmas libs etc
E no exospace funcionava blz rsrsr
D qq forma muit obrigado ai parceiro, tenha 1 bom fds e fica c Deus.
E no exospace funcionava blz rsrsr
D qq forma muit obrigado ai parceiro, tenha 1 bom fds e fica c Deus.
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Como pegar o nome da variavel do get ativo?
Olá!
Só para enriquecer o conteúdo, segue um exemplo de manipulação de gets, sem usar biblioteca de terceiros. Creio que atende à necessidade do OP.
Só para enriquecer o conteúdo, segue um exemplo de manipulação de gets, sem usar biblioteca de terceiros. Creio que atende à necessidade do OP.
Código: Selecionar todos
Function Main()
LOCAL cNome:=Space(38)
LOCAL cTel:=Space(12)
LOCAL GetList := {}
cls
SetBlink( .F. )
@ 12,05 Say "Nome :" ;
Color "GR+/N" ;
Get cNome ;
Color "N/W, N/W*" ;
Pict "@K" ;
When { || SetPos( GetActive():row + 10, 5 ), DispOut( GetActive():name ), .T. } ;
Valid { || SetPos( GetActive():row + 10, 5 ), DispOut( Space( 10 ) ), .T. }
@ 13,05 Say "Telefone :" ;
Color "GR+/N" ;
Get cTel ;
Color "N/W, N/W*" ;
Pict "@K" ;
When { || SetPos( GetActive():row + 10, 5 ), DispOut( GetActive():name ), .T. } ;
Valid { || SetPos( GetActive():row + 10, 5 ), DispOut( Space( 10 ) ), .T. }
// faz o read sem destruir o GetList
ReadModal( GetList )
// Percorre o GetList alterando o conteúdo das variáveis
AEval( GetList, { |e,p| e:setFocus(), ;
e:varPut( PadR( "Get " + Ltrim( Str( p ) ), Len( e:original) ) ), ;
e:killFocus() } )
// Novo read
ReadModal( GetList ); GetList := {}
@ 17, 05 Say "Nome : " + cNome
@ 18, 05 Say "Fone : " + cTel
SetPos( 20,05 )
WAIT "FIM - Tecle algo..."
RETURN NIL
//--------------------------------------------------------------------------------------------------[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Como pegar o nome da variavel do get ativo?
Olá!
Sim. Foi respondido assim em 2 tópicos do post: (Imatech » 05 Out 2012 14:42 e alxsts » 05 Out 2012 20:52), não tão objetivamente.
Sim. Foi respondido assim em 2 tópicos do post: (Imatech » 05 Out 2012 14:42 e alxsts » 05 Out 2012 20:52), não tão objetivamente.
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
