RE:Generar archivo de texto
Eduardo,
Cuando me referia a que uses Csting era con un archivo Basic delimitado por comas por que ascii no te permitie CSTRING
Hice una prueba. Este es el código que use:
! Grabo el archivo ArchTxt que es un BASIC y en Full Path Name: -->> ArchTxt.TXT
! tiene un solo campo ARC:Campo y es CSTIRNG
! al archivo este lo podes abrir con cualquier editor
! aca listo el archivo de pedido y el detalle correspondiente a cada uno
! Pedid001 tiene los datos de la cabecera
! Pedid002 tiene los datos del detalle
! el rango de fechas lo marca LOC:FechaDesde / LOC:FechaHasta
! Recorro los pedidos desde FechaDesde hasta FechaHasta
Clear (PE1:Record)
PE1:Fecha = LOC:FechaDesde
SET (PE1:KeyFecha,PE1:KeyFecha) ! Me posiciono
LOOP UNTIL Access:Pedid001.Next() or PE1:Fecha > LOC:FechaHasta ! leo hasta que encuentre una fecha superior a Fecha Hasta
! Leo los datos del cliente
CLI:CodCliente = PE1:CodCliente ! Leo los datos del cliente
IF Access:Clientes.Fetch(CLI:KeyCodCliente)
CLI:ApellidoNombre = 'Cliente Inexistente' ! Me manejo asi por que es solo un ejemplo
CLI:Direccion = 'Zona Urbana' !
END
! Armo el campo y grabo datos de la cabecera separado por ','
Clear(ARC:Record)
ARC:Campo = ('NOTA de PEDIDO FECHA: '& ',' & format (PE1:Fecha,@d6)& ',' & Clip(CLI:ApellidoNombre) & CHR(13) & CHR(10))
Access:ArchTxt.Insert()
! Recorro
Clear(PE2:Record)
PE2:VectorPedido = PE1:VectorPedido
SET (PE2:KeyVectorPedido,PE2:KeyVectorPedido) ! me posiciono
LOOP UNTIL Access:Pedid002.Next() or PE2:VectorPedido <> PE1:VectorPedido
ART:CodArticulo = PE2:CodArticulo ! Leo Articulos
IF Access:Articulos.Fetch(ART:KeyCodArticulo)
ART:Denominacion = 'Artículo Inexistente' ! Tener en cuenta que esto es solo un ejemplo. Si en una empresa
END ! Presentas un programa asi vas a durar poco
! Armo el campo y grabo datos del detalle del pedido
Clear(ARC:Record)
ARC:Campo = (Format(PE2:Cantidad,@N9.2) & ',' & ART:Denominacion & ',' & Format(PE2:ImporteUnitario,@N12.2) & ',' & Format(PE2:ImporteTotal,@N12.2) & CHR(13) & CHR(10))
Access:ArchTxt.Insert()
END ! Loop Pedid002
END ! Loop Pedid001
! lo que sigue es lo que levante con un editor de texto (notepad) del archivo txt
"NOTA de PEDIDO FECHA: ,31/03/2010,PEREZ MARIA LUISA
"
" 1.00,dulce de leche , 121.00, 121.00
"
Podes camiar las comas por espacios ; o cualquier otro caracter
Si no te soluciona puede que te sirva para ingeniarte otra cosa que sirva
Saludos