Amigos:
Primeiro post, pois não encontrei algum ítem relacionado(a pesquisa que fiz no fórum foi muito rápida).
Alguém pode me ajudar indicando um link ou exemplo de programa que contenha gets aninhados (ou reads aninhados)?
Exemplo: dentro de um get, uma clausula de validação deste get deve conter outro get para receber nova informação.
Grato por qualquer ajuda
GETs aninhados
Moderador: Moderadores
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Seja bem vindo ao nosso fórum !
Com este termo "aninhar GETs", realmente não existe. Mas neste tópico onde menciona:
Com este termo "aninhar GETs", realmente não existe. Mas neste tópico onde menciona:
tem uma indicação minha falando da função GETINPUT da CT.LIB. é a forma menos trabalhosa de fazer um get aninhado, pois da forma convencional acho que deverias utilizar um CLEAR GETS para liberar o GET vigente.seria possivel dentro de minha função de pesquisa haver outro Get?
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.
- Toledo
- Administrador

- Mensagens: 3133
- Registrado em: 22 Jul 2003 18:39
- Localização: Araçatuba - SP
- Contato:
Romeuk, veja um exemplo:
Observe que coloquei no exemplo acima uma variável local chamada getlist, uma na rotina origem e outra na função outroget(), com isto posso aninhar quandos GETs forem necessários.
Abraços,
Código: Selecionar todos
LOCAL getlist:={}
cVar1:= SPAC(20)
cVar2:= SPAC(20)
@ 10,10 SAY "Campo 1..:" GET cVar1 Valid (outroget())
@ 12,10 SAY "Campo 2..:" GET cVar2
READ
Func outroget()
LOCAL getlist:={}, cVar3
cVar3:= SPAC(20)
@ 16,10 SAY "Campo 3..:" GET cVar3
READ
Retu (.T.)Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
GETs aninhados
Grato aos dois. Testei a solução da variável local Getlist e funcionou perfeito. Para aprender com os erros, aqui vai (resumido) o que eu estava fazendo:
Func Principal()
@ . . say . . get var1
@ . . say . . get var2 valid Checa()
@ . . say . . get var3
read
Func Checa()
local oGet, var4
oGet := Getactive()
if oGet:varGet() = "9"
@ 13,32 say "Especifique: " get var4
Read
endif
return .T.
Com isso, ao validar, o Getactive() passava a ser var1, no Read principal (e não na variável var4 da função Checa()).
PS: Estou migrando um zilhão de linhas de programação para o xHarbour depois de muito tempo sem mexer com Clipper.
Grato de novo
RomeuK
Func Principal()
@ . . say . . get var1
@ . . say . . get var2 valid Checa()
@ . . say . . get var3
read
Func Checa()
local oGet, var4
oGet := Getactive()
if oGet:varGet() = "9"
@ 13,32 say "Especifique: " get var4
Read
endif
return .T.
Com isso, ao validar, o Getactive() passava a ser var1, no Read principal (e não na variável var4 da função Checa()).
PS: Estou migrando um zilhão de linhas de programação para o xHarbour depois de muito tempo sem mexer com Clipper.
Grato de novo
RomeuK
