Não consigo entender!!
Enviado: 17 Mai 2005 15:20
POR FAVOR, ALGUEM PODE ME AJUDAR! :f
Acabei de escrever esta rotina e simplesmente não está funcionando, até agora não consigo enxergar onde está o erro. Será q alguns dos irmãos poder me dá uma mão....?
Estou usando um dbf temporário para enxugar os dados para o meu tbrowse, só q qdo vou visualizar os dados só me exibe o ultimo registro. Não estou entendendo nada. :(Neg
Abaixo a minha rotina:
Agradeço pela ajuda, obrigado!!
s´[]
Machado_s
dilsonmachado@hotmail.com.br
ds_machado@ig.com.br
"O.sucesso resulta de cem pequenas coisas feitas de forma um pouco melhor. O insucesso, de cem pequenas coisas feitas de forma um pouco pior". (Henry Kissinger)
Acabei de escrever esta rotina e simplesmente não está funcionando, até agora não consigo enxergar onde está o erro. Será q alguns dos irmãos poder me dá uma mão....?
Estou usando um dbf temporário para enxugar os dados para o meu tbrowse, só q qdo vou visualizar os dados só me exibe o ultimo registro. Não estou entendendo nada. :(Neg
Abaixo a minha rotina:
Código: Selecionar todos
SELECT 0 // seleciona area
IF ABREREDE("EPSS",.f.,.t.,0)
Set index to (drvdbf)+"cmpemp"
ELSE
Close Data
RESTSCREEN(0,0,MAXROW(),79,tela_fundo)
Return
ENDI
IF ABREREDE("SOLICITO",.f.,,0)
Set index to (drvdbf)+"cmpsol1", (drvdbf)+"cmpsol2"
ELSE
Close Data
RESTSCREEN(0,0,MAXROW(),79,tela_fundo)
Return
ENDI
IF ABREREDE("TEMPSOL",.f.,,0)
COPY STRU TO I&usuario
USE I&usuario EXCLUSIVE ALIAS TMPS
ZAP
INDEX ON numero TO I&usuario
ELSE
Close Data
RESTSCREEN(0,0,MAXROW(),79,tela_fundo)
Return
ENDI
ls:=4; cs:=2; li:=22; ci:=78
SETCOLOR(drvcortel)
CAIXA(mold,ls,cs,li,ci) // monta caixa da tela
@ ls, cs+2 Say " " + MAIUSC("solita‡„o de compra") + " " COLOR(drvtittel)
@ ls+2, cs+2 Say "Data da Solicita‡Æo =[ / / ]"
SETCURSOR(1)
mData:= DATAC
SETCOLOR(drvcort1+","+drvcorget+",,,"+corcampo)
@ ls+2, cs+24 get mData Pict "@D"
Dre()
If LASTKEY() == K_ESC
Close Data
RESTSCREEN(0,0,MAXROW(),79,tela_fundo)
Return
Endi
DBOX("AGUARDE..",10,,,NAO_APAGA)
SELE SOLICITO // dbf principal
DBSetorder(2) // abre 2 indices
DBSeek( DTOS(mData) )
WHIL !Eof() .and. DATA = mData
If flag<>" " // se for diferente
SKIP // pula para o proximo registro
LOOP
Endi
SELE EPSS // dbf das empresas
DBSeek (SOLICITO->empress) // pesquisando empresa
SELE TMPS // dbf temporario
dbAPPEND()
TMPS->numero := SOLICITO->numero
TMPS->data := SOLICITO->data
TMPS->setor := SOLICITO->setor
TMPS->requis := SOLICITO->requis
TMPS->empress := SOLICITO->empress
TMPS->nomemp := EPSS->nome
TMPS->hora := SOLICITO->hora
TMPS->flag := SOLICITO->flag
dbCOMMIT()
SELE SOLICITO
SKIP
ENDD
// até aqui beleza
WHIL TRUE
SETCURSOR(0)
op_menu:=INCLUSAO
SELE TMPS
oBrow:= TBrowsenew(ls+1,cs+1,li-1,ci-1)
oBrow:colorspec := "w+/b,n/w,n,w/b,w/b,r/bg,gr+/bg"
oBrow:colsep := chr(32) + chr(179) + chr(32)
oBrow:headsep := chr(196) + chr(194) + chr(196)
oBrow:footsep := chr(196) + chr(193) + chr(196)
oCtr1 := TBcolumnnew ("N§ Solic.", { || TRANS(TMPS->numero,"99999") })
oCtr2 := TBcolumnnew (" Setor ", { || SETOR->(DBSeek(TMPS->setor),SETOR->nome) })
oCtr3 := TBcolumnnew ("Empresa ", { || TRANS(TMPS->nomemp,"@!") })
oCtr4 := TBcolumnnew ("Requisitante " ,{ || TRANS(TMPS->requis,"@!") })
oCtr5 := TBcolumnnew ("Hora ", { || TRANS(TMPS->hora,"@!") })
/* Crio o browse com as colunas definidas.. */
oBrow:AddColumn(oCtr1)
oBrow:AddColumn(oCtr2)
oBrow:AddColumn(oCtr3)
oBrow:AddColumn(oCtr4)
oBrow:AddColumn(oCtr5)
oBrow:GoTop()
WHIL (.t.)
setcursor (0)
whil ( !oBrow:Stabilize () ); endd
if oBrow:Stable
nTecla:= Inkey(0)
endi
DO Case
Case (nTecla == K_ESC);Exit
Case (nTecla == K_DOWN);oBrow:down()
Case (nTecla == K_UP);oBrow:up()
Case (nTecla == K_LEFT);oBrow:left()
Case (nTecla == K_RIGHT);oBrow:right()
Case (nTecla == K_HOME);oBrow:Home()
Case (nTecla == K_END);oBrow:End()
Case (nTecla == K_PGUP);oBrow:pageup()
Case (nTecla == K_PGDN);oBrow:pagedown()
Case (nTecla == K_CTRL_PGUP);oBrow:gotop()
Case (nTecla == K_CTRL_PGDN);oBrow:gobottom()
Case (nTecla == K_CTRL_HOME);oBrow:PanHome()
Case (nTecla == K_CTRL_END);oBrow:PanEnd()
Case (nTecla == K_CTRL_LEFT);oBrow:PanLeft()
Case (nTecla == K_CTRL_RIGHT);oBrow:PanRight()
*Case (nTecla == K_ENTER)
Case (nTecla == K_F2);Incluir_();oBrow:RefreshCurrent()
ENDc
oBrow:RefreshAll()
ENDD
Exit
ENDD
CLOSE ALL
RETURN[/color]
s´[]
Machado_s
dilsonmachado@hotmail.com.br
ds_machado@ig.com.br
"O.sucesso resulta de cem pequenas coisas feitas de forma um pouco melhor. O insucesso, de cem pequenas coisas feitas de forma um pouco pior". (Henry Kissinger)