Página 1 de 1

Delimited- arquivo de log

Enviado: 03 Out 2007 07:50
por evaldo
Ola pessoal, estou criando essa rotina de log.txt, mas preciso colocar um delimitador de campo, gostaria de saber qual caracter a usar, e no append from, qual a sintaxe correta?

Código: Selecionar todos

   LOCAL cLine := ""
   LOCAL aStruc:= DBSTRUCT()
   //
   WHILE nCont <= LEN(aGetProd)
      IF VALTYPE(aGetProd[nCont]) = "N"
         cLine += STR(aGetProd[nCont],aStruc[nCont,3],aStruc[nCont,4])
      ELSEIF VALTYPE(aGetProd[nCont]) = "D"
         cLine += STRTRAN(DTOC(aGetProd[nCont]),"/","") 
      ELSE 
         cLine += LEFT(aGetProd[nCont],aStruc[nCont,3])
      ENDIF  
      nCont++
   ENDDO
O arquivo esta fiscando assim, mas alguns campos ele fica fora de possicao, por isso preciso colocar o delimitador.

Código: Selecionar todos

 001219336PK1795      02102007     15.000     15.000     15.000 0.5500     20.613  45.00
001 6783TK 15103S/24302102007     31.870     31.870     34.142 0.8500     46.918  15.00
001 3873IN CSN2816   02102007     18.430     18.430     19.746 0.8500     27.135  15.00
001149027374GS       02102007      4.460      4.460      4.781 0.9000      6.571  20.00
001 1882333006810    02102007    141.430    141.430    151.502 0.9000    208.193  10.00
00121006C 1423.0     02102007     18.720     19.515     20.465 0.9000     28.123  10.00

criar arquivo TXT e importá-lo

Enviado: 03 Out 2007 08:34
por Pablo César
Na minha opinião Evaldo, a melhor forma de se fazer é utilizando o default do proprio Clipper. Pois com delimeters você não terá mais problemas algum sobre tamanho e é mais seguro, mais rápido e econômico (ao espaço, me refiro). Mas você não disse se você precisa exportar TODOS os registros ou não, isto é, se precisaria alguma condição nessa operação. Mas digamos que você precise do básico:

Código: Selecionar todos

USE DBF
COPY TO LOG.TXT DELI

USE LOG.DBF
APPEND FROM LOG.TXT DELI
O COPY TO LOG.TXT DELI, irá criar um arquivo texto separados com "," e irá tratar os campos que são caracter (entre aspas) e numéricos (sem aspas), datas em modo DTOS (sem aspas).

Para dar um melhor exemplo, você teria que descrever melhor sua situação e listar (estrutura, e nomes de arquivos, como também se existe alguma condição).

Inclusive se você precisar dar um retorno listando estrutura e parte do seu arquivo DBF, você poderá contar com:

viewtopic.php?t=6616

Neste exemplo também te permte apreciar a forma de exportar/importar dados com DELIMITERS.