LOCAL lcTablaLibre AS String;
,lcFileOrigen AS String;
,lcFileStr AS String;
,lcFileDestino AS String
m.lcTablaLibre = 'TablaRep' && Nombre de la tabla libre que deseas crear
m.lcFileOrigen = "report.asc.txt" && Nombre del archivo de texto conteniendo la información
**
** Los Nombres y tipo de datos de las columnas son solamente de ejemplo.
CREATE TABLE (m.lcTablaLibre) FREE (Division V(5),Estilo V(10),UPC V(15);
,StyleName V(70),ColorCode V(10),ColorName V(30);
,ColorNRF V(5),Tamanho V(5),Grupo V(10))
USE IN (JUSTSTEM(m.lcTablaLibre))
USE (m.lcTablaLibre) IN 0 ALIAS 'TablaLibre' EXCLUSIVE
IF USED('TablaLibre')
SELECT 'TablaLibre'
m.lcFileStr = FILETOSTR(m.lcFileOrigen)
m.lcFileDestino = ADDBS(GETENV("TEMP")) + FORCEEXT(SYS(2015),'TXT')
IF STRTOFILE(STRTRAN(m.lcFileStr,'| ',CHR(13)+CHR(10)),m.lcFileDestino)<1
MESSAGEBOX('No se ha podido dar el formato adecuado al archivo origen',0+16,'Error')
ELSE
APPEND FROM (m.lcFileDestino) TYPE DELIMITED WITH CHARACTER "|"
** Esta parte es para eliminar el primer registro donde estaban los nombres de las columnas **
GO TOP IN 'TablaLibre'
DELETE IN 'TablaLibre'
PACK IN 'TablaLibre'
**
MESSAGEBOX('Se han añadido nuevos registros al archivo:' ;
+ CHR(13) +DBF('TablaLibre'),0+64,'Operación completada!')
BROWSE NOEDIT
ENDIF
USE IN 'TablaLibre'
ENDIF
RELEASE m.lcFileStr,m.lcFileOrigen,m.lcFileDestino