Clarion - Manejo de archivos TXT

 
Vista:

Manejo de archivos TXT

Publicado por Gabriela (1 intervención) el 30/01/2008 13:19:22
Hola a todos!! Necesitaria saber si alguien tiene conocimientos, algun ejemplo, link o apuntes para manejar archivos txt en clarion 5 y pasarlos a tps.
Mil gracias de antemano.

Gabriela
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Manejo de archivos TXT

Publicado por Jose Luis (126 intervenciones) el 30/01/2008 15:47:09
Puedes declarar el archivo en el diccionario solo que en driver seria ASCII para archivos sin delimitadores o BASIC para separados por comas, en PATH pones la ruta y nombre del archivo o una variable y en el codigo lo tratas como cualquier archivo TPS solo hay q ver en la ayuda del DRIVER q utilices q funciones soporta y cuales no.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Manejo de archivos TXT

Publicado por Salvador Peralta Santoyo (1 intervención) el 08/02/2008 00:55:36
Hola amiga entra a la pagina de Evolution Consulting de Argentina ahi hay un ejemplo de importacion de archivo de texto genial que te serviria, a mi me sirvio mucho y esta muy entendible, de hecho te evita tener que dar de alta la tabla en el diccionario, saludos y espero te sirva te dejo mi correo si requieres alguna ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Manejo de archivos TXT

Publicado por joanvilatimo (69 intervenciones) el 07/10/2008 16:57:16
Este ejemplo de un proceso que lee un fichero de etiquetas txt de las que no interesa las 6 primeras lineas y si elegimos las lineas 7,8,9,10 que las salvamos a un Clientes.TPS
espero sirva de ejemplo de pasar de txt a tps.
Saludos Joan.


PROGRAM

MAP
CheckError(),LONG
END

SourceName STRING(260)
TargetName STRING(260)
Count ULONG

CALABRIA FILE,DRIVER('ASCII'),NAME(SourceName),PRE(IN)
RECORD RECORD
Line STRING(255)
END
END
Clientes FILE,DRIVER('TOPSPEED'),NAME(TargetName),CREATE,PRE(CLI)
PKClientes KEY(+CLI:ID_Cliente),OPT,NOCASE,PRIMARY
AKNombre KEY(+CLI:Nombre),DUP,OPT,NOCASE
AKCP KEY(+CLI:CP,+CLI:Nombre,+CLI:ID_Cliente),DUP,OPT,NOCASE
RECORD RECORD
ID_Cliente LONG
Nombre STRING(40)
Domicilio STRING(50)
CP STRING(40)
PROVINCIA STRING(40)
END
END
PROGRESS WINDOW('Converting File'),AT(,,107,33),FONT('MS Sans Serif',8),GRAY,CENTER,DOUBLE
STRING('Converting Record #:'),AT(4,13,,)
STRING(@n8),AT(74,12,24,12),USE(Count)
END

CODE
SourceName = 'CALABRIA.TXT'
TargetName = 'Clientes.tps'

OPEN(CALABRIA)
IF CheckError() THEN RETURN.
SET(CALABRIA)
CREATE(Clientes)
IF CheckError() THEN RETURN.
OPEN(Clientes)
IF CheckError() THEN RETURN.

STREAM(CALABRIA)
STREAM(Clientes)

OPEN(Progress)
NEXT(CALABRIA)
Count = 1

LOOP
NEXT(CALABRIA)
IF ErrorCode() = 33 THEN BREAK.
DO AssignRecord
APPEND(Clientes)
IF CheckError() THEN RETURN.
Count += 1
! if Count>200 Then BREAK.
DISPLAY(?Count)
END

FLUSH(CALABRIA)
FLUSH(Clientes)

BUILD(Clientes)
IF CheckError() THEN RETURN.
CLOSE(CALABRIA)
CLOSE(Clientes)

AssignRecord ROUTINE
CLEAR(CLI:Record)
NEXT(CALABRIA)
NEXT(CALABRIA)
NEXT(CALABRIA)
NEXT(CALABRIA)
NEXT(CALABRIA)
NEXT(CALABRIA)

CLI:ID_CLIENTE =Count

NEXT(CALABRIA)
CLI:NOMBRE = CLIP(LEFT(IN:LINE))
NEXT(CALABRIA)
CLI:DOMICILIO = CLIP(LEFT(IN:LINE))
NEXT(CALABRIA)
CLI:CP = CLIP(LEFT(IN:LINE))
NEXT(CALABRIA)
CLI:PROVINCIA = SUB(CLIP(LEFT(IN:LINE)),1,LEN(CLIP(LEFT(IN:LINE)))-4)


CheckError FUNCTION
CODE
IF ERRORCODE() THEN
IF ERRORCODE() = 90 THEN
IF MESSAGE('Error: '& FILEERROR()) THEN
RETURN ERRORCODE()
END
ELSE
IF MESSAGE('Error: '& ERROR()) THEN
RETURN ERRORCODE()
END
END
END
RETURN 0
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar