Caros irmãos.
:xau
Peço desculpas se estou sendo chato amigos, mas eu preciso terminar a implantação desse tbrowse em meu projeto, ele é m+ importante para mim. E é aqui aonde sempre recorro qdo me vejo enrascado e sei que posso contar com voces.
quero lhe disse q estou a um passo de termina-ló. O que acontence.
o tbrowse iniciar normal, beleza. Agora qdo utilizo qualquer tecla de operaçao (minhas funcoes) ao voltar para o tbrowse os registros se repetem na tela dando faz seta para cima e para baixo.
Segue abaixo a minha rotina:
SELE PRPED1
DBSetorder(2)
DBSeek( Dtos(mData) )
bTela:= SaveTela(ls,cs,li,ci)
oCorp:= TBrowsenew(ls+1,cs+1,li-1,ci-1) /* Crio o Tbrowse */
/* filtro tbrowse com a funcao skipwhil() */
oCorp:skipblock := { |x| SkipWhil(x, {||PRPED1->emissao == mData}) }
oCorp:gotopblock := { || Skipwhil((Lastrec() * -1),{||PRPED1->emissao == mData}) }
oCorp:gobottomblock := { || Skipwhil((Lastrec() * 1),{||PRPED1->emissao == mData}) }
oCorp:colorspec := "w+/bg,n/w,n,n,w/b,r/bg,gr+/bg" /* Cores e Molduras do Tbrowse */
oCorp:colsep := chr(32) + chr(179) + chr(32)
oCorp:headsep := chr(196) + chr(194) + chr(196)
oCorp:footsep := chr(196) + chr(193) + chr(196)
*tbColumnNew('Cliente', {|| Clientes->(dbSeek(PrPed1->Cliente), Left(Razao,25)) })
/* Defino as colunas */
oCol1 := TBcolumnnew (" Pedido", { || TRANS(PRPED1->numero,"99999999") })
oCol2 := TBcolumnnew ("Descri‡Æo do Cl¡ente ", { || CLIENTES->(DBSeek(PRPED1->cliente),LEFT(CLIENTES->razao,25)) })
oCol3 := TBcolumnnew (" Saida " ,{ || PRPED1->saida })
oCol4 := TBcolumnnew ("Prz" ,{ || TRANS(PRPED1->prazo,"99") })
oCol5 := TBcolumnnew (" Compra " ,{ || TRANS(PRPED1->debito,"@E 999,999.99") })
oCol6 := TBcolumnnew ("Aut", { || IF(PRPED1->autoriza='S','Sim','Nao') })
/* Cor na coluna liberação */
oCol5:colorblock:= {|| IIF(PRPED1->debito=0, {1},{6,6})}
oCol6:colorblock:= {|| IIF(PRPED1->autoriza="S", {7,6},{1})}
/* Crio o browse com as colunas definidas.. */
oCorp:addcolumn(oCol1)
oCorp:addcolumn(oCol2)
oCorp:addcolumn(oCol3)
oCorp:addcolumn(oCol4)
oCorp:addcolumn(oCol5)
oCorp:addcolumn(oCol6)
oCorp:gotop()
WHIL (.t.)
setcursor (0)
whil ( !oCorp:stabilize () )
endd
if oCorp:stable
nTecla:= Inkey(0)
endi
DO Case
Case (nTecla == K_ESC)
Exit
Case (nTecla == K_DOWN)
oCorp:down()
Case (nTecla == K_UP)
oCorp:up()
Case (nTecla == K_LEFT)
oCorp:left()
Case (nTecla == K_RIGHT)
oCorp:right()
Case (nTecla == K_HOME)
oCorp:Home()
Case (nTecla == K_END)
oCorp:End()
Case (nTecla == K_PGUP)
oCorp:pageup()
Case (nTecla == K_PGDN)
oCorp:pagedown()
Case (nTecla == K_CTRL_PGUP)
oCorp:gotop()
Case (nTecla == K_CTRL_PGDN)
oCorp:gobottom()
Case (nTecla == K_CTRL_HOME)
oCorp:PanHome()
Case (nTecla == K_CTRL_END)
oCorp:PanEnd()
Case (nTecla == K_CTRL_LEFT)
oCorp:PanLeft()
Case (nTecla == K_CTRL_RIGHT)
oCorp:PanRight()
Case (nTecla == K_ENTER)
// aqui entrar a minha funcao para consulta dos produtos e pesos
// somente isso
campo1:= PRPED1->numero
------------------------------
Case (nTecla == K_F2)
ProwTela() // funcao para lancar os pedidos
Case (nTecla == K_F3)
campo1:= FrDados[nPoint,1]
IF CONFEXCL()
SELE PRPED1
DBSetOrder(1)
DBSeek (campo1)
RLOCK()
dbDELETE()
SELE PRPED2
DBSeek (campo1)
Whil !eof() .and. numero = campo1
RLOCK()
dbDELETE()
Skip
Endd
dbCOMMITALL()
dbUNLOCKALL()
NLen:= LEN(FrDados)
NPos:= ASCAN(FrDados, {|x| x[1] == campo1})
ADEL(FrDados,NPos)
ASIZE(FrDados,(NLen-1))
oCorp:RefreshAll()
ENDI
Case (nTecla == K_F4)
// menus de cadastro
ENDc
oCorp:RefreshAll()
ENDD
O que será q está errado? Falta alguma coisa?
Agradeço m+ por qualquer Ajuda.
Um abraço.
Machado_s
dilsonmachado@hotmail.com.br
ds_machado@ig.com.br
"Escrevo sem pensar, tudo o que o meu inconsciente grita. Penso depois: não só para corrigir, mas para justificar o que escrevi". (Mário de Andrade)
Clipper 5.2e Blinker 7 Med
FALTA POUCO (tbrowse)
Moderador: Moderadores
-
Dudu_XBase
- Membro Master

- Mensagens: 1071
- Registrado em: 25 Ago 2003 16:55
Boa Noite Machado_S!
Faça isso e verifique se continua duplicando.
Case (nTecla == K_F2)
ProwTela() // funcao para lancar os pedidos
SELE PRPED1
DBSetorder(2)
DBSeek( Dtos(mData) )
oCorpo:refreshall()
Faça isso e verifique se continua duplicando.
Case (nTecla == K_F2)
ProwTela() // funcao para lancar os pedidos
SELE PRPED1
DBSetorder(2)
DBSeek( Dtos(mData) )
oCorpo:refreshall()
________________________________________________________________________________________________________
(Aow Saudade) Clipper 5.2e, Blinker 7, RDD SIXNSX, DBFCDX /Xharbour 1.0, Rdd Mediator (Mysql) Free , RDD Sqlrdd (Sql Server) Comercial
(Hoje) C# Python Sql Server e Oracle
FUNCIONOOUUUU!! ACABEI!! VALEU DUDU.
)
Finalmente conseguir concluir a tela de pedidos utilizando tbrowse, ficou beleza.
E é importante disser, que isso só foi possível com a ajudar de vocês irmãos, de todos que me ajudaram nessa caminhada. Agradeço a todos, todos os irmãos que se dispuseram a gastar alguns minutos do seu precioso tempo em me ajudar, esclarecendo duvidas e me indicando qual o melhor caminho a seguir. Agradeço pelas mensagens (msm), pelas respostas que obtive aqui. E digo:
Esta é a verdadeira essência desse fórum; Da sua natureza; Da sua criação; Da sua luta em manter o "Clipper" vivo e dar respostas quando muitos há dizem que não tem, não existe. Isso o tornar tão grandioso quanto ele é, e por que não dizer, o grau de sua importância no desenvolvimento de nossos trabalhos e no aprendizado profissional.
O meu m+ obrigado. Deus abençoe a todos.
:xau
Machado_s
dilsonmachado@hotmail.com.br
ds_machado@ig.com.br
"A felicidade não está no fim da jornada, e sim em cada curva do caminho que percorremos para encontrá-la".
Clipper5.2e, Blinker 7, Med
Finalmente conseguir concluir a tela de pedidos utilizando tbrowse, ficou beleza.
E é importante disser, que isso só foi possível com a ajudar de vocês irmãos, de todos que me ajudaram nessa caminhada. Agradeço a todos, todos os irmãos que se dispuseram a gastar alguns minutos do seu precioso tempo em me ajudar, esclarecendo duvidas e me indicando qual o melhor caminho a seguir. Agradeço pelas mensagens (msm), pelas respostas que obtive aqui. E digo:
Esta é a verdadeira essência desse fórum; Da sua natureza; Da sua criação; Da sua luta em manter o "Clipper" vivo e dar respostas quando muitos há dizem que não tem, não existe. Isso o tornar tão grandioso quanto ele é, e por que não dizer, o grau de sua importância no desenvolvimento de nossos trabalhos e no aprendizado profissional.
O meu m+ obrigado. Deus abençoe a todos.
:xau
Machado_s
dilsonmachado@hotmail.com.br
ds_machado@ig.com.br
"A felicidade não está no fim da jornada, e sim em cada curva do caminho que percorremos para encontrá-la".
Clipper5.2e, Blinker 7, Med
-
Dudu_XBase
- Membro Master

- Mensagens: 1071
- Registrado em: 25 Ago 2003 16:55
QUE DEUS ABENÇOE A TODO NÓS AMÉM.
FICAMOS FELIZES POR SUA VITÓRIA.
FICAMOS FELIZES POR SUA VITÓRIA.
________________________________________________________________________________________________________
(Aow Saudade) Clipper 5.2e, Blinker 7, RDD SIXNSX, DBFCDX /Xharbour 1.0, Rdd Mediator (Mysql) Free , RDD Sqlrdd (Sql Server) Comercial
(Hoje) C# Python Sql Server e Oracle
