Página 1 de 1

Formatar Moeda no TBrowse()?

Enviado: 10 Abr 2008 21:49
por labaroazul
Boa noite, amigos! -:]

Como faço para formatar campo moeda no TBrowse? Eu queria que saísse mais ou menos como "93.437,03". Nos gets do programa eu faço isso:

@ 00,00 say "Digite: " get cSalario picture "@E 99,99999.99"

E no DBedit() eu fazia a mesma coisa. Mas, no TBrowse, como se faz isso? ´o)

Re: Formatar Moeda no TBrowse()?

Enviado: 10 Abr 2008 22:06
por sygecom
labaroazul escreveu:Boa noite, amigos! -:]

Como faço para formatar campo moeda no TBrowse? Eu queria que saísse mais ou menos como "93.437,03". Nos gets do programa eu faço isso:

@ 00,00 say "Digite: " get cSalario picture "@E 99,99999.99"

E no DBedit() eu fazia a mesma coisa. Mas, no TBrowse, como se faz isso? ´o)
Exemplo abaixo:

Código: Selecionar todos

************************************************
#define K_C                67   //   C
#define K_c                99   //   c
#define K_F                102  //   F
#define K_f                70   //   f
#define K_A                65   //   A
#define K_a                97   //   a
#define K_I                73   //   I
#define K_i                105  //   i
************************************************
#DEFINE DEF_CSEP " "+CHR(179)+" "             // define o caracter da coluna
#DEFINE FOOT_SEP CHR(196)+CHR(193)+CHR(196)   // define o caracter do horizontal
#DEFINE HEAD_SEP CHR(196)+CHR(194)+CHR(196)   // define o caracter do horizontal
************************************************

*************
FUNC PESQAGE
*************
FIELD NOME,TELEFONE1,CELULAR,TIPO,TELEFONE2,ENDERECO,BAIRRO,CIDADE,UF,CEP IN AGENDA
LOCAL nButton := 1
LOCAL nOpcao  := 0
LOCAL OTbr  :=TBrowseDB( 03, 01, 22, 80 )
LOCAL OTbc1 :=TbColumnNew("Descricao do Cadastrado",{ || NOME     } )
LOCAL OTbc2 :=TbColumnNew("N§ Telefone",            { || TELEFONE1} )
LOCAL OTbc3 :=TbColumnNew("N§ Celular",             { || CELULAR  } )
LOCAL OTbc4 :=TbColumnNew("TIPO",                   { || TIPO     } )
LOCAL OTbc5 :=TbColumnNew("N§ Telefone",            { || TELEFONE2} )
LOCAL OTbc6 :=TbColumnNew("Endere‡o Completo",      { || ENDERECO } )
LOCAL OTbc7 :=TbColumnNew("Bairro",                 { || BAIRRO   } )
LOCAL OTbc8 :=TbColumnNew("Cidade",                 { || CIDADE   } )
LOCAL OTbc9 :=TbColumnNew("UF",                     { || UF       } )
LOCAL OTbc10:=TbColumnNew("CEP",                    { || CEP      } )

LOCAL nKey
LOCAL lExitRequested
PARA TIPOCAD,LINHA
********************************************************************
*                  1      2       3       4      5       6     7      8     9      10       11      12      13
oTbr:colorspec :="N*/W , W+/BG , W+/B , R+*/W , W*/W+ , RJ/W , W/B , R/N , B+*/W , RW*/W , N+*/W, BG+*/W, RG+*/W"
oTbr:addColumn(oTbc1)
oTbr:addColumn(oTbc2)
oTbr:addColumn(oTbc3)
oTbr:addColumn(oTbc4)
oTbr:addColumn(oTbc5)
oTbr:addColumn(oTbc6)
oTbr:addColumn(oTbc7)
oTbr:addColumn(oTbc8)
oTbr:addColumn(oTbc9)
oTbr:addColumn(oTbc10)

************ Definicao de Cores ***********
oTbC1:COLORBLOCK :={| NOME | IIF ( TIPO ="CLIENTE",    { 9,2  } ,;
                             IIF ( TIPO ="FORNECEDOR", { 4,2  } ,;
                             IIF ( TIPO ="FUNCIONARIO",{ 10,2 } ,;
                             IIF ( TIPO ="COMPRADOR",  { 13,2 } ,;
                             IIF ( TIPO ="CREDOR",     { 12,2 } ,;
                             IIF ( TIPO ="DIVERSOS",   { 11,2  } , { 1,2} ) ) ) ) ) ) }

oTbC2:COLORBLOCK :={| NOME | IIF ( TIPO ="CLIENTE",    { 9,2  } ,;
                             IIF ( TIPO ="FORNECEDOR", { 4,2  } ,;
                             IIF ( TIPO ="FUNCIONARIO",{ 10,2 } ,;
                             IIF ( TIPO ="COMPRADOR",  { 13,2 } ,;
                             IIF ( TIPO ="CREDOR",     { 12,2 } ,;
                             IIF ( TIPO ="DIVERSOS",   { 11,2  } , { 1,2} ) ) ) ) ) ) }

oTbC3:COLORBLOCK :={| NOME | IIF ( TIPO ="CLIENTE",    { 9,2  } ,;
                             IIF ( TIPO ="FORNECEDOR", { 4,2  } ,;
                             IIF ( TIPO ="FUNCIONARIO",{ 10,2 } ,;
                             IIF ( TIPO ="COMPRADOR",  { 13,2 } ,;
                             IIF ( TIPO ="CREDOR",     { 12,2 } ,;
                             IIF ( TIPO ="DIVERSOS",   { 11,2  } , { 1,2} ) ) ) ) ) ) }

oTbC4:COLORBLOCK :={| NOME | IIF ( TIPO ="CLIENTE",    { 9,2  } ,;
                             IIF ( TIPO ="FORNECEDOR", { 4,2  } ,;
                             IIF ( TIPO ="FUNCIONARIO",{ 10,2 } ,;
                             IIF ( TIPO ="COMPRADOR",  { 13,2 } ,;
                             IIF ( TIPO ="CREDOR",     { 12,2 } ,;
                             IIF ( TIPO ="DIVERSOS",   { 11,2  } , { 1,2} ) ) ) ) ) ) }

************ largura das colunas ***********
oTbc1:width:=29
************ largura das colunas ***********

************ Marcara das colunas ***********
oTbc2:picture:="@R (99) 9999-9999"   // MASCARA
oTbc3:picture:="@R (99) 9999-9999"   // MASCARA
oTbc5:picture:="@R (99) 9999-9999"   // MASCARA
*******************************************

************ Linhas das colunas ************
oTbr:COLSEP :=DEF_CSEP  // desenha colunas Verticais
oTbr:HEADSEP:=HEAD_SEP  // desenha colunas Horizontais superior
oTbr:FOOTSEP:=FOOT_SEP  // desenha colunas Horizontais inferior
*********************

************ COLUNAS A CONGELAR ************
ColFix := 1              // atraves de variaval colfix
oTbr:freeze := ColFix

**********************************
SELE AGENDA
DBSETORDER(2)

Otbr:gotop()
IExitRequested := .F.
vCONTINUA=" "

DO WHILE !IExitRequested
   DO WHILE !oTbr:stabilize()
   ENDDO

   IF !vCONTINUA="S"
      nKey := inkey(0)
   ENDIF

   IF nKey == K_ENTER .OR. nKey == K_a .OR. nKey == K_A
      nCOLNUM:=OTBR:COLPOS

      DBSETORDER(2)
      OTBR:refreshall()
   ELSEIF nKey == K_C .OR. nKey == K_c
      SELE AGENDA
      DBSETORDER(2)
      AppRede()
      TRAVAREG("S")
      REPL TIPO    WITH "DIVERSOS"
      DBCOMMIT()
      LIBERAREG()

      OTBR:refreshall()
      Otbr:gotop()  // no arquivo indexado

      vCONTINUA="S"
      LOOP
   ELSEIF nKey == K_F .OR. nKey == K_f
      vVOLTAR=SPACE(1)
      IExitRequested := .T.
   ELSEIF nKey == K_DEL
      IF TIPO="DIVERSOS"
         IF !MsgYesNo("Deseja Realmente Excluir ?" ,"Aviso do Sistema")
            LOOP
         ENDIF

         TRAVAREG("S")
         dele
         LIBERAREG()
         OTBR:refreshall()
         Otbr:gotop()  // no arquivo indexado
      ELSE
         MsgINFO("Não é permitido a Alteração por esse processo, Favor entrar no cadastro de origem.","Aviso do Sistema" )
      ENDIF
   ELSEIF nKey == K_F1
      IF INDEXORD()==2
         DBSETORDER(7)
      ELSEIF INDEXORD()==7
         DBSETORDER(2)
      ENDIF
      oTbr:refreshall()
   ELSEIF nKey == K_F2
      aBusca := savenv( 01, 00, 23, 79 )
      chave:= Space(30)
      SETCOLOR( "N*/W,B/W" )
      aWin := Win( 10, 15, 13, 62, "Busca por Nome",WT_VERDE2BRANCO,WD_VERDE2BRANCO)
      __Keyboard()
      @  12, 18 say "Nome.:" get CHAVE pict"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" when DwnMsg( "Informe o Nome para uma pesquisar")
      READ
      RstEnv(aBusca)
      SETCOLOR( "N*/W,W+/B" )
      set softseek on
      seek chave
      set softseek off
      oTbr:refreshall()
   ELSEIF nKey == K_DOWN
      oTbr:down()
   ELSEIF nKey == K_UP
      oTbr:up()
   ELSEIF nKey == K_PGDN
      oTbr:pageDown()
   ELSEIF nKey == K_PGUP
      oTbr:pageUp()
   ELSEIF nKey == K_CTRL_PGUP
      oTbr:goTop()
   ELSEIF nKey == K_CTRL_PGDN
      oTbr:goBottom()
   ELSEIF nKey == K_RIGHT
      oTbr:right()
   ELSEIF nKey == K_LEFT
      oTbr:left()
   ELSEIF nKey == K_HOME
      oTbr:home()
   ELSEIF nKey == K_END
      oTbr:end()
   ELSEIF nKey == K_CTRL_LEFT
      oTbr:panLeft()
   ELSEIF nKey == K_CTRL_RIGHT
      oTbr:panRight()
   ELSEIF nKey == K_CTRL_HOME
      oTbr:panHome()
   ELSEIF nKey == K_CTRL_END
      oTbr:panEnd()
   ELSEIF nKey == K_ESC
      vVOLTAR="S"
      OTBR:refreshall()
      Otbr:gotop()  // no arquivo indexado
      IExitRequested := .T.
   ENDIF
ENDDO
RETURN NIL

Enviado: 10 Abr 2008 22:32
por rosalvo rosa
Muito bom exemplo, tche Leonardo. vou pegar uma carona e tambem procurar entender um pouco mais esta ferramenta que é o TBrowse.
Aliás, pelo tua boa vontade, aposto que tu és colorado também..

Enviado: 10 Abr 2008 23:10
por sygecom
Olá Rosalvo,
O TBROWSE() é muito bom mesmo, qualquer duvida só postar aqui ! Sou colorado...

Formatar Moeda no TBrowse()?

Enviado: 13 Jul 2014 15:34
por billy1943
Oi Sygecom !

Desculpe remexer em tópico meio antigo, mas é que, fuçando em busca de melhoria em meus Tbrowse, interessei-me pela rotina exposta acima.

Ocorre que algumas funções não estão nela e gostaria de saber onde conseguí-las.
Algumas, presumo, são facilmente identificáveis as suas finalidades, mas tem outras não tão presumíveis.

São elas:

APPREDE
TRAVAREG
LIBERAREG
MSGYESNO
MSGINFO
SAVENV
WIN
DWNMSG
RSTENV