Ajuda no Tbrowse

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

Avatar do usuário
marbio
Usuário Nível 3
Usuário Nível 3
Mensagens: 206
Registrado em: 29 Jul 2004 16:26

Ajuda no Tbrowse

Mensagem por marbio »

Boa Tarde!!!


Calera, nao saco nada de Tbrowse, dei uma olha no forum e na Net, achei muita coisa legal, mas para o que eu quero esta difil sair do fluxo grama. nao consigo fazer nada com o Tbrowse,

Vamos la, eu preciso de uma consulta de tela de venda de balcao, que fique colorido os produtos (medicamentos) vou diferenciar genericos e simulares etc..

Ex: F2 e F3 para consulta do produto quando achar cair no get de venda. eu tenho isso no dbedit. Mas com essas mudancas esta muito dificil .


Agradeco desde ja a sua atencao.


:(
Sempre há uma solucao para os nossos problema clipper.....
Avatar do usuário
C Leonam
Usuário Nível 1
Usuário Nível 1
Mensagens: 32
Registrado em: 22 Nov 2005 17:40
Localização: Maceió

Mensagem por C Leonam »

Dê uma olhadela no diretório (ou pasta, como queira) \CLIPPER5\SOURCE\TBROW\GENERAL.

Tem muitos exemplos. Basta dar um RMAKE no GENERAL.RMK e ir rodando os exemplos (são criados vários EXEs). Achando um que lhe agrade/atenda vá ao respectivo fonte.

:xau
Avatar do usuário
marbio
Usuário Nível 3
Usuário Nível 3
Mensagens: 206
Registrado em: 29 Jul 2004 16:26

Mensagem por marbio »

Boa Noite


Dei uma olha no meu clipper nao tenho esse diretorio tbrow.


vc tem algum Exemplo.


t+

:(
Sempre há uma solucao para os nossos problema clipper.....
Avatar do usuário
Ale SB
Usuário Nível 3
Usuário Nível 3
Mensagens: 201
Registrado em: 20 Jul 2004 17:30
Localização: Campo Grande / MS

Mensagem por Ale SB »

Blz, Marbio, eu tenho esses arquivos, se vc quiser posso enviar por email p/ vc, eh só postar seu email ai, blz!

Outra coisa, entre em Perfil, no topo da pagina, e deixe sua assinatura, sabendo as versoes e programas q vc usa fica mais facil p/lhe ajudar, blz.

@braços Ale :xau
Imagemr]
Avatar do usuário
marbio
Usuário Nível 3
Usuário Nível 3
Mensagens: 206
Registrado em: 29 Jul 2004 16:26

Mensagem por marbio »

Boa Noite!!!!!!!!!


Fico esperando o seu e-mail.


marbio@netsulminas.com.br
Sempre há uma solucao para os nossos problema clipper.....
Avatar do usuário
C Leonam
Usuário Nível 1
Usuário Nível 1
Mensagens: 32
Registrado em: 22 Nov 2005 17:40
Localização: Maceió

Mensagem por C Leonam »

Seguiu para o seu email.

:xau
Avatar do usuário
marbio
Usuário Nível 3
Usuário Nível 3
Mensagens: 206
Registrado em: 29 Jul 2004 16:26

Mensagem por marbio »

Boa Noite!!!!!!!


Galera, agora confundil tudo mesmo, ja nao entendia nada agora piorou, o resto, se alguem tiver alguma funcao ja pronta eu agradeco porque essas e muito complexas, por nao conhecer o Tbrowse. como funciona.


Muito obrigado pela atencao de vcs!!! da mais um forcinha para mim, nesta parte.

como postado no topico

Desde ja agradeco tudo...
Sempre há uma solucao para os nossos problema clipper.....
Avatar do usuário
C Leonam
Usuário Nível 1
Usuário Nível 1
Mensagens: 32
Registrado em: 22 Nov 2005 17:40
Localização: Maceió

Mensagem por C Leonam »

Trabalhar com cores nos campos dentro de uma consulta, e ainda obdecendo a condições predeterminadas de cores: Só conheço o TBrowse.

Se ajudar tenho uns NGs do Clipper 5.O em portugues. Vamos lá, eu há muito tempo atrás precisei de coisas que o velho DBEDIT não resolvia. Depois de muitos malabarismos, arregacei as mangas e aprendi "na-unha" o, na época, complicado TBrowse.

Aconselho vc a fazer este esforço. Após conhecer o TBrowse, vc irá se perguntar (como eu fiz há tempos atrás): "Porque não aprendi isso antes."

Veja como é fácil:

Abra um DBF qualquer e no fonte coloque as linhas abaixo:

Código: Selecionar todos


   OBJB:=TBROWSEDB(01,01,20,75)
   OBJC:=TBCOLUMNNEW('Cabeçalho do CAMPO1',{||CAMPO1})
   OBJB:ADDCOLUMN(OBJC)
   OBJC:=TBCOLUMNNEW('Cabeçalho do CAMPO2',{||CAMPO2})
   OBJB:ADDCOLUMN(OBJC)
   OBJC:=TBCOLUMNNEW('Cabeçalho do CAMPO3',{||CAMPO3})
   OBJB:ADDCOLUMN(OBJC)
   OBJC:=TBCOLUMNNEW('Cabeçalho do CAMPO4',{||CAMPO4})
   OBJB:ADDCOLUMN(OBJC)
   OBJC:=TBCOLUMNNEW('Cabeçalho do CAMPO5',{||CAMPO5})
   OBJB:ADDCOLUMN(OBJC)

   WHILE .T.
      WHILE (!OBJB:STABILIZE())
      ENDD
      nTECLA := INKEY(0)
      DO CASE
         CASE (nTECLA == K_UP)
            OBJB:UP()
         CASE (nTECLA == K_DOWN)
            OBJB:DOWN()
         CASE (nTECLA == K_LEFT)
            OBJB:LEFT()
         CASE (nTECLA == K_RIGHT)
            OBJB:RIGHT()
         CASE (nTECLA == K_PGUP)
            OBJB:PAGEUP()
         CASE (nTECLA == K_PGDN)
            OBJB:PAGEDOWN()
         CASE (nTECLA == K_CTRL_PGUP)
            OBJB:GOTOP()
         CASE (nTECLA == K_CTRL_PGDN)
            OBJB:GOBOTTOM()
         CASE (nTECLA == K_ESC)
            ALERT('Foi pressionado ESC.;Vamos abandonar o TBROWSE')
            EXIT
         CASE (nTECLA == K_ENTER)
            ALERT('Foi pressionado ENTER.')
      ENDC
   ENDD

Pronto vc está no TBrowseDB. Viu como é simples. Agora os recursos extendidos só dando uma olhadela nos NGs.

Fui...

:xau
Avatar do usuário
marbio
Usuário Nível 3
Usuário Nível 3
Mensagens: 206
Registrado em: 29 Jul 2004 16:26

Mensagem por marbio »

Boa dia!!!!!!!

Mande para mim, todos as informacoes que vc tiver sobre o tbrowse, se algem tiver pode mandar tambem, bom que eu dou uma estudada, como disponivel para todos os usuario aqui no forum.

Ngs portugues e exeplos etc...


Vcs nao sabe quanto eu preciso disto.


e-mail: marbio@netsulminas.com.br



Desde ja agradeco sua atencao...


t+

:*
:xau
Sempre há uma solucao para os nossos problema clipper.....
evaldo
Usuário Nível 3
Usuário Nível 3
Mensagens: 113
Registrado em: 27 Out 2005 23:29

Mensagem por evaldo »

Código: Selecionar todos

   LOCAL oConta, oCol, cBloco, i
   LOCAL aCol1[4],aCol2[4],aCol3[4]
   //
   oConta := TBrowseDB(3,1,22,78)
   oConta :  colorSpec     := "N/BG,N/W,W/B,GR+/BG,R/BG,G+/B,G+/BG,"
   oConta :  headSep       := "ÂÄ"
   oConta :  colsep        := "³"
   oConta :  footsep       := "ÁÄ"
   oConta :  autoLite      := .F.
   //
   aCol1[01] := "grau"
   aCol2[01] := "9"
   aCol3[01] := "Grau"
   //   
   aCol1[02] := "conta"
   aCol2[02] := "@!"
   aCol3[02] := "Conta"
   //
   aCol1[03] := "descricao"
   aCol2[03] := "@!"
   aCol3[03] := "Descri‡Æo"
   //
   aCol1[04] := "contared"
   aCol2[04] := "99999-9"
   aCol3[04] := "Reduzida"
   //   
   FOR i=1 TO 4
      //
      oCol     := TBColumnNew(aCol1[i], FIELDBLOCK(aCol1[i]))
      cBloco   :="{ || TRANSFORM("+aCol1[i]+","+CHR(34)+aCol2[i]+CHR(34)+") }"
      oCol     : block    := &cBloco.
      oCol     : heading  := aCol3[i]
      oCol     : defColor := {1,2}
      oCol     :  colorBlock := { || DefCorTBP() }  // o segredo esta aqui para colorir as linha	
      oConta: addColumn(oCol)
      //
   NEXT
   //
   WHILE .T.
      //
      SELECT Plano
      SET ORDER TO 2      
      //
      MostraBar(NovaBar(04,0,22,0,1))
      //
      WHILE !oConta:Stabilize()
         IF NextKey() != 0
            EXIT
         END
      END
      //
      oConta : deHilite()
      oConta : colorRect({oConta:rowPos,oConta:leftVisible,oConta:rowPos,oConta:rightVisible},{6,1})
      oConta : refreshCurrent()
      //
      nTecla  := NavegaObj(oConta)
      //
      IF nTecla == K_ESC
         EXIT
      ELSEIF nTecla == K_INS
      ELSEIF nTecla == K_ENTER
      ELSEIF nTecla == K_DEL
      END
      //
   ENDDO   
*************************************************************
FUNCTION DefCorTBP()
********************
   //
   IF     Plano->grau == 1
      RETURN({7,1})
   ELSEIF Plano->grau == 2
      RETURN({7,1})
   ELSEIF Plano->grau == 3
      RETURN({4,1})
   ELSE
      RETURN({1,2})
   END
   //
   RETURN NIL
*************************************************************
FUNCTION NavegaObj(o,f,PROG)
****************************
   //
   LOCAL nTecla := Key(o,f,PROG)
   //
   IF (nTecla == K_DOWN)
      o:down()
   ELSEIF (nTecla == K_UP)   
      o:up()
   ELSEIF (nTecla == K_PGDN)   
      o:pageDown()
   ELSEIF (nTecla == K_PGUP)   
      o:pageUp()
   ELSEIF (nTecla == K_CTRL_PGUP)   
      o:goTop()
   ELSEIF (nTecla == K_CTRL_PGDN)   
      o:gobottom()
   ELSEIF (nTecla == K_RIGHT)   
      o:right()
   ELSEIF (nTecla == K_LEFT)   
      o:left()   
   ELSEIF (nTecla == K_CTRL_RIGHT)   
      o:panright()
   ELSEIF (nTecla == K_CTRL_LEFT)   
      o:panleft()
   ELSEIF (nTecla == K_HOME)
      o:panhome()
   ELSEIF (nTecla == K_END)
      o:panend()
   END
   //
RETURN(nTecla)
*******************************************************************************
Responder