FoxPro/Visual FoxPro - PROBLEMA CON ENVIOS DE DBF A TXT.!!!!

 
Vista:

PROBLEMA CON ENVIOS DE DBF A TXT.!!!!

Publicado por ANDRES.. (1 intervención) el 25/05/2007 04:26:08
HOLA COMUNIDAD.. TENGO UN PROBLEMA Y ESPERO PUEDAN AYUDARME.. ESTE ES EL CASO:

TENGO EL SIGUIENTE CURSOR :

CREATE CURSOR CURPLAN(CUENTA C(20),NOMBRE C(70), IDECTA C(1), SALARIO C(12), COD_EMP C(6), DESCRIP C(18))

PROCESO LOS DATOS.. Y TODO BUENO.. LA HISTORIA ES Q CUANDO LOS PASO A DBF PARA CUMPLIR CON UN FORMATO SOLICITADO ESPECIFICO LO DEBO DE CONVERTIR A UN DBF Y SU FINAL FORMA DEBE SER ASI:

0300-036063-4;ESMERALDA MENDOZA SANCHEZ;3;272.01;00019;PQ
17116684;ARAUZ ESCALANTE DEYSI GUADALUPE CISNEROS;3;514.29;00041;PQ
17115446;SURIA ALVAREZ JACQUELINE LISSETTE;3;148.57;00042;PQ
170104818;ALAS RAMOS JOSE MAURICIO;3;457.14;00011;PQ

ESTA DELIMITADO POR ; Y NOLLEVA COMILLAS PARA CADA CAMPO DIGO ESTO PORQUE CUANDO LO INTENTO DE LA SIGUIENTE MANERA:

COPY TO C:\PLANILLA2.TXT DELIMITED WITH CHARACTER ';'

ME QUEDA ASI :

"0300-036063-4";"ESMERALDA MENDOZA SANCHEZ";3;272.01;"00019";"PQ"

Y CASI LLEGO ALFORMATO REQUERIDO.. EL UNICO PROBLEMA SON LAS COMIILLAS PUES AL FINAL DEBE QUEDAR ASI:

0300-036063-4;ESMERALDA MENDOZA SANCHEZ;3;272.01;00019;PQ

SE Q ESTO SE PUEDE SOLUCIONAR ABRIENDO DESPUES EL ARCHIVO EN NOTEPAD Y HACIENDO UN REEMPLAZO A TODO EL ARCHIVO DE COMILLAS " POR NADA.. Y DARLE REEMPLAZAR TODO. PERO NO LO QUIEREN ASI... AMIGOS ESPERO HABERME EXPLICADO Y PUEDAN AYUDARME..

DE ANTE MANO GRACIAS.!
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
sin imagen de perfil

RE:PROBLEMA CON ENVIOS DE DBF A TXT.!!!!

Publicado por jesus cordero (405 intervenciones) el 25/05/2007 12:19:31
Esta es la Rutina:

Convertir de DBF a TXT

Esta es una forma de convertir una tabla a un archivo TXT utilizando funciones de bajo nivel.

El separador para los campos esta definido en la variable Separa.

Local lnHandle

lnHandle = Fcreate("c:Archivo.txt")

cSepara = "-"
cCadCamp = ""

Use Tabla
Go Top

Scan
For i = 1 To Fcount()
cCadCamp = cCadCamp + Alltrim(Transform(Eval(Field(i)))) + cSepara
Endfor
cCadCamp = Left(cCadCamp, Len(cCadCamp)-1) + Chr(13)+Chr(10)
Endscan

=Fputs(lnHandle,cCadCamp)
=Fclose(lnHandle)
Use In Tabla
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