Página 1 de 1

Como encurtar um campo em um Tbrowse usando o left

Enviado: 28 Jan 2005 12:30
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

Enviado: 28 Jan 2005 12:48
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

    

Enviado: 31 Jan 2005 17:29
por rubens
Valeu Dudu, obrigado...

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

Obrigado