PDA

Ver la Versión Completa : Espacios en blanco en .TXT


HRU
06/02/07, 11:58:05
Hola, estoy bajando una tabla interna a un fichero .TXT, lo hago con la función HR_99S_DOWNLOAD, el problema es que el último campo (declarado como char de 28 carácteres) tiene que quedar en blanco en el .TXT, es decir se tienen que ver los 28 carácteres en blanco. Al ser la maquina sobre la que estoy trabajando una 4.6C la función no tiene el parametro P_TRUNC_BLANKS_EOL que si tiene en otras instalaciones posteriores por lo que los 28 espacios en blanco no hay maneras de hacerlos aparecer.
Alguien tiene una idea sobre como hacerlo???



Saludos

davidsap
06/02/07, 13:25:33
Prueba hacerlo con otra función como la WS_DOWNLOAD (recuerda que no funciona en job) o hadlo con un OPEN DATASET. Yo no he hecho la prueba, te lo digo de memoria

Espero que te sirva

HRU
07/02/07, 08:22:28
Hola, gracias por la respuesta davidsap, el problema es que en las 4.6C todas las funciones son obsoletas en cuanto a parámetros, y la que me comentaste tiene el mismo problema, he probado un par más y tampoco hay manera. El dataset lo probé pero no conseguí crear el fichero, yo hice un

Open dataset <ruta fichero>

Loop at <tabla interna>
TRANSFER <variable con todos los campos concadenados> TO <ruta fichero>

endloop.

CLOSE dataset <rutafichero>

No se si este código es correcto o tiene algún error???

davidsap
07/02/07, 08:28:13
Prueba con este código, yo lo tengo hecho así:

*** Escribe los archivos en el servidor
FIELD-SYMBOLS <fs_fichero> TYPE ANY.
OPEN DATASET LV_DESTINO FOR OUTPUT IN BINARY MODE.
LOOP AT IT_XML ASSIGNING <fs_fichero>.
TRANSFER <fs_fichero> TO LV_DESTINO.
ENDLOOP.
CLOSE DATASET LV_DESTINO.

Donde IT_XML es la tabla interna con los datos y LV_DESTINO es la variable que contiene la ruta final del fichero \\Servidor\Carpeta\Fichero.txt

Espero que te sirva

Un saludo

bisonye
07/02/07, 09:58:59
Hola,

Yo estuve peleando con el dataset y como dice davidsap no me funcinaba.

Solo podia pasar el fichero al servidor. Si pones la ruta /dir/ te crea el directorio a partir del raiz de tu servidor si eliminas la barra inicial a partir del directorio por defecto de sap pero a mi solo me funciona en el servidor.
No necesite usar field symbols con un loop a la tabla y el transfer funciono sin problemas

Saludos

mcartamil
27/03/07, 14:27:19
genera el txt con WS_DOWNLOAD te deja los espacios en blanco.al menos yo utilizo esta funcion y no me genera inconvenientes

DCErick
27/03/07, 16:07:36
Hola, estoy bajando una tabla interna a un fichero .TXT, lo hago con la función HR_99S_DOWNLOAD, el problema es que el último campo (declarado como char de 28 carácteres) tiene que quedar en blanco en el .TXT, es decir se tienen que ver los 28 carácteres en blanco. Al ser la maquina sobre la que estoy trabajando una 4.6C la función no tiene el parametro P_TRUNC_BLANKS_EOL que si tiene en otras instalaciones posteriores por lo que los 28 espacios en blanco no hay maneras de hacerlos aparecer.
Alguien tiene una idea sobre como hacerlo???



Saludos
El archivo en donde lo quieres bajar en la PC donde se corre el programa?
Correras el programa en job?

Si es en la pc donde se correo el programa trata con
GUI_DOWNLOAD.

Claudia Valdespino
28/03/07, 16:16:06
Si la función WS_DOWNLOAD te aparece como obsoleta, prueba usando la GUI_DOWNLOAD que si tiene el parámetro TRUNC_TRAILING_BLANKS o TRUNC_TRAILING_BLANKS_EOL (la que necesites usar). Espero te sirva. Suerte!!

HRU
10/04/07, 15:14:28
Hola gracias por los mensajes, era un tema que al final se solucionó, pero por lo que he visto la función GUI_DOWNLOAD tiene estos parametros para la 4.6c por lo que funciona.

Saludos

txape
11/04/07, 15:36:11
Hola,

Con la WS_DOWNLOAD también funciona, lo que pasa es que antes de ejecutarla tienes que llamar a un perform de su grupo de funciones que te activa y desactiva esta característica, el perform era SET_TRAIL_BLANKS, acuerdate que para invocarla desde otro report tienes que indicar que es el perform del grupo de funciones GRAP. Este perform lo que hace es cambiar el valor de una variable global del grupo de funciones.


Salu3

DCErick
11/04/07, 15:48:04
Se refiere a algo como esto.

PERFORM SET_TRAIL_BLANKS(SAPLGRAP) USING 'X'.

PERFORM SET_FIXLEN(SAPLGRAP) USING '0' '100'.

Glen Raul Ruiz Millan
17/05/07, 23:00:59
Yo tampoco puedo hacerlo, con la funcion GUI_DOWNLOAD ya que me trunca los espacios en blanco al esportarlo..
Pero estoy viendo que al asigan a la variable que concateno los espacios en blanco no me los toma.

Saludos