Página 1 de 1

Trabalhando com Vetor (Linha e Coluna)

Enviado: 25 Jul 2010 19:23
por asimoes
Senhores,

Procurei aqui no forúm uma solução para exibir informações neste formato conforme exemplo baixo, mas não encontrei.

00001 TESTE 00004 TESTE 00007 TESTE 00010 TESTE
00002 TESTE 00005 TESTE 00008 TESTE
00003 TESTE 00006 TESTE 00009 TESTE

Então criei este código :

Código: Selecionar todos

FUNCTION MAIN
LOCAL aVetorMens:={}, I, cObs:="", aVetor

FOR I:=1 TO 10
   AADD(aVetorMens,STRZERO(I,5)+ " TESTE")
NEXT

//aVetorMens  é uma matriz de que contém 10 elementos
//Avetor é uma matriz multidimensional com 10 linhas e 10 colunas
aVetor:=Array(LEN(aVetorMens),10)

//A exibição será feita em 3 linhas por 10 colunas
cObs:=MontaVetor(aVetorMens, aVetor, 3, 10)

? cObs
INKEY(0)

RETURN NIL

FUNCTION MontaVetor(aVetorFonte, aVetor, nLinhas, nColunas)
LOCAL cVar, I, J, nLin, nCol, aVetorAux, C, L 
FOR I:=1 TO LEN(aVetor)
   FOR J:=1 TO nColunas
      aVetor[I,J]:=""
   NEXT
NEXT
cVar:=""
nCol:=1
nLin:=1
FOR I:=1 TO LEN(aVetorFonte)
   aVetor[nLin,nCol]:=aVetorFonte[i]
   nLin++
   IF MOD(I,nLinhas) = 0
      nCol++
      nLin:=1      
   ENDIF
NEXT
FOR L:=1 TO LEN(aVetor)
   FOR C:=1 TO nColunas
      cVar+=IF(!EMPTY(aVetor[L,C]),aVetor[L,C]+" ","")
   NEXT 
   IF !EMPTY(aVetor[L,1])
      cVar+=chr(13)+chr(10)
   ENDIF 
NEXT
RETURN cVar
Alguém tem algo parecido mais simplificado com vetor?

[]´s

Trabalhando com Vetor (Linha e Coluna)

Enviado: 26 Mar 2011 10:13
por Pablo César
Passou-se muito tempo, desculpe acho que cheguei um pouco tarde... rsrs mas por vias das dúvidas, você já analisou a possibilidade de utilizar Tbrowse de Vetores ? Um dos exemplos neste tópico:

https://pctoledo.org/forum/viewto ... res#p25389