Como encurtar um campo em um Tbrowse usando o left

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

Avatar do usuário
rubens
Colaborador
Colaborador
Mensagens: 1520
Registrado em: 16 Ago 2003 09:05
Localização: Nova Xavantina - MT

Como encurtar um campo em um Tbrowse usando o left

Mensagem por rubens »

Olá pessoal a minha dúvida é a seguinte:
Tenho um campo no dbf que tem 30 caracteres, preciso jogar ele no tbrowse somente com 10 caracteres como faço isso?

minha linha de código:

aCampos := {;
"CODCLI_" ,;
"EQUIP_" ,;
"DATA_",;
"PREVISAO_"}

Aí que tá.. o campo em questao é o EQUIP_, se coloco assim mostra todo o campo, se coloco "LEFT(EQUIP_,10)", so mostra uma string vazia...
Como faço para mostrar só 10 caracteres do campo?

Obrigado
"Eu e minha casa servimos ao Senhor e você ???"
Dudu_XBase
Membro Master
Membro Master
Mensagens: 1071
Registrado em: 25 Ago 2003 16:55

Mensagem por Dudu_XBase »

Rubens Boa Tarde.
Fiz uma cópia de parte de um tbrowse e modifiquei com os campos que vc utiliza.
No Código Abaixo vc verá umas váriaveis estranhas tipo K_ESC , K_down são valores da "inkey.ch" basta vc colocar no inicio do seu prg #include "inkey.ch" e pronto.

Código: Selecionar todos

 
    Dbselectarea("seudbf")
    
   oConsulta := tbrowsedb (05,02,21,76)

    oConsulta:colorspec := "w+/b,n/w,n,n,w/b,gr+/b,BG+/W"
    oConsulta:colsep	:= chr (032) + chr (179) + chr (032)
    oConsulta:headsep	:= chr (196) + chr (194) + chr (196)
    oConsulta:footsep	:= chr (196) + chr (193) + chr (196)

   
    oCol1 :=  tbcolumnnew ("Codigo",   {|| CODCLI_})
    oCol2 :=  tbcolumnnew ("Equip",     {|| left(EQUIP_,10)})
    oCol3 :=  tbcolumnnew ("Data",      {|| dtoc(DATA_)})
    oCol4 :=  tbcolumnnew ("Previsao", {|| PREVISAO })

   
    oConsulta:addcolumn(oCol1)
    oConsulta:addcolumn(oCol2)
    oConsulta:addcolumn(oCol3)
    oConsulta:addcolumn(oCol4)

     // Congela a Primeira Coluna
     oConsulta:freeze:= oCol1

    while ( .t. )

	setcursor (0)

	while ( !oConsulta:stabilize () )
	enddo

	
	nTecla := inkey (0)

	do case

	    case ( nTecla == K_ESC )
		exit

	    case ( nTecla == K_DOWN )
		oConsulta:down ()

	    case ( nTecla == K_UP )
		oConsulta:up ()

	    case ( nTecla == K_LEFT )
		oConsulta:left ()

	    case ( nTecla == K_RIGHT )
		oConsulta:right ()

	    case ( nTecla == K_PGUP )
		oConsulta:pageup ()

	    case ( nTecla == K_PGDN )
		oConsulta:pagedown ()

	    case ( nTecla == K_CTRL_PGUP )
		oConsulta:gotop ()

	    case ( nTecla == K_CTRL_PGDN )
		oConsulta:gobottom ()


	endcase
	oConsulta:refreshall()
    enddo

    


________________________________________________________________________________________________________
(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




Avatar do usuário
rubens
Colaborador
Colaborador
Mensagens: 1520
Registrado em: 16 Ago 2003 09:05
Localização: Nova Xavantina - MT

Mensagem por rubens »

Valeu Dudu, obrigado...

Não usei exatamente do jeito que voce colocou mas pela sua dica consegui...

Obrigado
"Eu e minha casa servimos ao Senhor e você ???"
Responder