Page 1 of 1

Un caso dificil con FWrite()

PostPosted: Wed Sep 27, 2017 3:32 pm
by Armando
Hola Amigos del foro:

Planteo un problema que me ha dado dolor de cabeza, necesito crear un archivo .XML,
que como sabemos es un archivo texto con cierto formato y estructura, lo estoy haciendo
con FWrite(), pues bien con la siguiente línea de código obtengo datos bizarros.

Code: Select all  Expand view

FWrite(nHandle,'<Ctas CodAgrup="' + oRsCts:Fields('CTSGPS'):Value + '" NumCta="' + cCta+ '" Desc="' + cDes + '" SubCtaDe="' + cCta + '" Nivel="' + STR(nNivel,1,0) + '" Natur="' + oRsCts:Fields('CTSNAT'):Value + '"/>' + CRLF)
 


El problema se presenta en la variable cCta la cual estoy formado con varias variables y me queda así
1-4-1680

Sin embargo al revisar el archivo XML el contenido que se grabó desde la variable cCta se ve así
1-456871552, es decir tiene un valor muy diferente, todo me hace pensar que al momento de grabar
esta haciendo las operaciones de resta pues si quito los guiones intermedios se graba bien, por ejemplo:
1 4 1680 queda bien grabado.

Alguna forma de indicarle a la función FWrite() que no haga las operaciones de resta?, o alguna otra
opción?

Saludos

Re: Un caso dificil con FWrite()

PostPosted: Wed Sep 27, 2017 3:42 pm
by hmpaquito
Hola,

Primero: quizá el problema está en el visualizador. ¿ Probaste con el bloc de notas a ver qué muestra ?
Segundo: Yo utilizo el comando TEXT - ENDTEXT definiendo campos "macro" para sustituirlos por sus valores, en vez de utilizar el FWrite(): la concatenación es cosa de locos.

Saludos

Re: Un caso dificil con FWrite()

PostPosted: Wed Sep 27, 2017 4:23 pm
by Armando
hmpaquito:

Gracias por tu respuesta, sí, sí abrí el archivo con Block de Notas y es ahí donde veo
los valores mencionados.

Podrías darme un pequeño ejemplo con TEXT ENDTEXT?

Olvidalo, ya busque en el foro y encontré ejemplos. (Eso debí hacer primero :oops: )

Saludos