PDA

Ver la Versión Completa : Problemas en la carga de archivo plano


felix_cid
10/12/08, 11:40:27
Hola a todos, estoy creando un programa que necesita cargar un campo de texto, cuyo largo fácilmente supera los 500 caracteres. Este archivo se está generando en Excel y guardando separado con tabuladores, mi consulta es ¿como puedo subir este campo tan largo a mi tabla interna?, le propuse al usuario separarlo en 2 campos de 255 caracteres cada uno, pero para él es complicado hacer el conteo de caracteres cuando lo que ingresa es un texto largo, ¿alguien me podría dar una idea o una mano de como puedo hacer esto?, muchas gracias a todos.:confused: :confused:

azua14
10/12/08, 12:08:38
Mira...yo creo que la solucion mas simple no pasa por SAP...la verdad lo más rápido sería hacer una macro en el archivo excel que te lea los datos de la hoja donde estan los datos, te separe el texto en 2 ó 3 campos y los guarde en otra hoja...un programita como ese no te tomaria mas de 45 min hacerlo.

negrogho
10/12/08, 16:11:15
Hola felix_cid

Puedes declarar un campo de texto que contenga mas de 500 posiciones no necesariamente tiene que ser de 255


Saludos

DavidXD_XD
10/12/08, 16:14:39
Hola ... una solucion es pasarlo a .txt y luego subirla con GUI_UPLOAD, con excel es medio engorroso porque las funciones creo que solo aceptan hasta 50 caracteres

felix_cid
10/12/08, 17:26:36
He tratado de declarar una variable de largo 500 tipo caracter, pero al debugear SOLO me sube cómo máximo 255 caracteres. ¿Alguna otra idea?.

Saludos.

negrogho
10/12/08, 18:00:59
¿Con que estas cargando el archivo?

por que la funcion GUI_UPLOAD te permite cargar un archivo de texto de cualquier longitud o si el proceso lo estas ejecutando como JOB de fondo se carga con el comando "open dataset <ruta_filename> for input in text mode encoding non-unicode", y despues hacer un "read dataset <ruta_filename> into <wa_data>" con un DO para ir leyendo los registros del archivo de texto.

saludos

DavidXD_XD
10/12/08, 18:25:33
Algo a tener en cuenta, en el debugg no puedes visualizar toda la cadena completa, prueba haciendole un WRITE de esa variable en la pantalla para que te asegures que solo esta subiendo 255 caracteres, eso me paso en una ocasion

Edd_401
10/12/08, 21:41:38
Es Correcto, En El Debugg No Se Visualizan Todos Los Caracteres..

Puedes Declararla Con El Elemnto Char512.

Tambien Pudes Declarar Con 'char2048' Que Es Un Campo De Texto.

negrogho
10/12/08, 22:07:20
Tambien hay otra forma

En el modo de debugin, si tienen activada la funcion debuggin nueva, se puede visualizar la linea de texto en la seccion de vista detallada, hay una opcion Vista esta se debe cambiar a "VAR_TABULAR_ASCII_HEX En forma de tabla" y con esto podran ver el contenido completo del campo de texto