PDA

Ver la Versión Completa : AYUDA !!!!!!!!!!!!! mostrar datos tipo string


asclevius
21/06/12, 17:22:19
Hola amigos del foro, les escribo para pedirles ayuda, y tengo el siguiente problema

en un smarform tengo un string que es de una longitud superior a los 255 caracteres, cuando le digo al smarform que me imprima el valor de esa variable solo me imprime los primeros 255 caracteres. la pregunta es como hago para que me imprima el resto???????

esa variable me almacena el texto que viene de un text edit control (text area) yo puedo tener esa información en un string o en una tabla interna pero no se como ponerla a imprimir ya que por el string solo me imprime los 255 caracteres iniciales y no todo el string.

Por otra parte se puede recorrer el texto para que cada que encuentre un # haga un salto de linea, alguno de ustedes me puede ayudar con esto porfavor.!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

o que me de ideas de como hacerlo

de antemano gracias por la ayuda prestada-!!!!!!!!!!!!!!!!!!!!

crounly
22/06/12, 07:03:45
Si puedes tener la información en una tabla interna...por que no pintas la tabla en un nodo tabla??

asclevius
24/07/12, 13:49:01
gracias, que pena la demora en la respuesta, solo que diste ese comentario y lo hice asi como dices y me funcionó a la perfección


gracias

hersond
10/12/12, 22:48:28
Hola, entiendo que hay que usar un nodo tabla, pero me pueden decir el proceso o si tienen un ejemplo a la mano de como se realiza, les agradeceria mucho.

Saludos.

crounly
13/12/12, 08:18:35
Rompes el string en el programa de impresión o en un nodo código antes del nodo tabla, a tu elección:

DATA: BEGIN OF lines OCCURS 100,
tdline(255) TYPE c.
DATA: END OF lines.

DATA: string_binario TYPE string.

CALL FUNCTION 'CONVERT_STRING_TO_TABLE'
EXPORTING
i_string = string_binario
i_tabline_length = 255
TABLES
et_table = lines.

o también puedes romperlo asi:

TYPES: l_line(255) TYPE C.

DATA: TL_LINES TYPE STANDARD TABLE OF l_line,
WL_LINE TYPE l_line,
WL_STRING TYPE STRING,
l_file_length TYPE i,
l_flag TYPE c,
l_off TYPE i,
l_len TYPE i.


l_len = STRLEN( WL_STRING ).
l_file_length = l_len.

WHILE l_flag IS INITIAL.

IF l_len LE 255.
WL_LINE = WL_STRING+l_off(l_len).
l_flag = 'X'.
ELSE.
WL_LINE = WL_STRING+l_off(255).
l_off = l_off + 255.
l_len = l_len - 255.
ENDIF.

APPEND WL_LINE TO TL_LINES .

ENDWHILE.

Después pinta la tabla en el nodo tabla