A todos quero agradecer muitas coisas que aqui aprendi.
Vai mais uma dúvida
Tenho um dbedit que altero o fieldname(bbb) mas tenho um problema.
Quando carrego no enter e depois altero o campo e depois confirmo com enter o ponteiro volta para inicio.
Como faço para ficar onde estou e depois se carregar em seta para a direita ir para o campo a direita e não para o inicio do campo que esta no browse.
Agradecia a vossa ajuda.
Obrigado
Lapinhzzz
Código: Selecionar todos
/*
ÚÄ Program ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ Aplica‡„o: ³
³ Descri‡„o: ³
³ Nome: MV.PRG ³
³ Autor: Carlos Lapa ³
³ Vers„o: ³
³ Data cria‡„o: 03-07-10 Actualizado em : þ16-10-10 ³
³ Hora cria‡„o: 23:15:54 Hora actualiza‡„o: þ22:43:24 ³
³ Fich. Make: ³
³ Fich. Exec.: Doc.s por: Carlos Lapa ³
³ Copyright: (c) by Carlos Lapa, Inc. ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
*/
function mv_pess()
public pesq,rot
rot="PESS"
priv l
sele pess
set orde to "proc"
cor(2)
go top
do whil .t.
priv l, v1a[13],v2a[1],v3a[13],v4a
sele pess
set orde to "proc"
rot="PESS"
pesq=""
if indexord()=1
tit("Processo (por PROCESSO)")
v1a[1]="proc"
v1a[2]="utente"
v1a[3]="tipo"
v1a[4]="grupo"
v1a[5]="turma"
v1a[6]="ano"
v1a[7]="nsase"
v1a[8]="cescalao"
v1a[9]="codigocur"
v1a[10]="plafp"
v1a[11]="plafc"
v1a[12]="gastop"
v1a[13]="gastoc"
v3a[1]= "Proc"
v3a[2]= "Utente"
v3a[3]= "Tipo"
v3a[4]= "Grupo"
v3a[5]= "Turma"
v3a[6]= "Ano"
v3a[7]= "NSase"
v3a[8]= "Cescalao"
v3a[9]= "Codigocur"
v3a[10]="Plafp"
v3a[11]="Plafc"
v3a[12]="GastoP"
v3a[13]="GastoC"
pfs("[ENTER]Altera,F2ReordenaLista")
elseif indexord()=2
tit("Processo (por UTENTE)")
v3a[1]= "Proc"
v3a[2]= "Utente"
v3a[3]= "Tipo"
v3a[4]= "Grupo"
v3a[5]= "Turma"
v3a[6]= "Ano"
v3a[7]= "NSase"
v3a[8]= "Cescalao"
v3a[9]= "Codigocur"
v3a[10]="Plafp"
v3a[11]="Plafc"
v3a[12]="GastoP"
v3a[13]="GastoC"
pfs("[ENTER]Altera,F2ReordenaLista")
endi
v2a[1]="@"
v4a=""
cor(2)
keyb chr(26)
*dbedit(04,00,22,80,v1a,"fc",.t.,.t.,.t.)
dbedit(04,00,22,80,v1a,"fc",v2a,v3a,v4a)
l=lastkey()
do case
case l=27
exit
case l=-9
loop
EXIT
endc
endd
rele v1a,v2a,v3a,v4a
rot="MAIN"
FUNCTION FC(modo)
public rapaga,flag,bbb,aa
priv l,m,f,x,cp,y,z,ix,ordem
cp=fcount()
l=0
for x=1 to cp
f=fieldname(x)
if !empty(&f)
* l=1
* exit
endi
next
f=1
*f=l
l=lastkey()
x=1
bb="0001000000000000000000000013" && se o campo for diferente de zero edita
bbb=substr(bb,2*aa+1,2)
do case
case (l=4 .OR. l=19) .AND. rot="PESS"
IF l=4
IF aa<13
aa++
endi
elseif l=19
IF aa>1
aa--
endi
ENDIF
@ 1,1 say bbb
@ 2,1 say aa
x=1
case modo=2 .AND. rot="PESS"
append blank
case l=27
x=0
case l=13 .and. f=1
IF ifrot("rot,PESS") .AND. val(bbb)<>0
campo=fieldname(&bbb)
*if val(bbb)<>0
@ row(),col() get &campo picture "@!"
read
*ENDI
aa=1
x=1
else
aa=1
x=2
endif


