PDA

Ver la Versión Completa : Traspaso de textos desde función READ_TEXT


felix_cid
17/06/08, 22:02:03
Amigos:

Estoy rescatando un texto con la función READ_TEXT y la necesito llevar a 2 líneas de un reporte de largo 255 caracteres c/u. Probé pasando la tabla interna retornada por la función a la función FORMAT_TEXTLINES, con ancho definido de 127 caracteres, para concatenar las 2 primeras lineas en la primera columna del reporte y las 2 siguientes a la segunda columna del reporte. El problema es que me quedan muchos campos en blanco y debo tratar de optimizar el máximo los caracteres rescatados, ya que es una información relevante, ¿se les ocurre alguna solución a este problema con la cual me podrían ayudar por favor?...muchas gracias. :confused: :confused: :eek:

frankmerlos
17/06/08, 22:31:45
Entiendo que READ_TEXT te devuelve x cantidad de lineas y que todas esas lineas deben de lograr almacenarse solamente en 2 lineas para que puedan mostrarse todas en el reporte.

Es asi????

A cuales campos en blanco te refieres???

felix_cid
18/06/08, 13:32:40
Efectivamente me devuelve n lineas la función READ_TEXT, cada una de largo 132 caracteres. Mi problema es que tengo 2 lineas en el reporte de 255 caracteres cada una, y estoy con problemas en crear la lógica que me logre armar desde la tabla interna de la función las 2 líneas que necesito, considerando que no necesariamente van a venir siempre los 132 caracteres de las lineas ocupadas y esto lo debo controlar porque necesito optimizar al máximo la información acá mostrada. :confused: :confused: :confused:

frankmerlos
18/06/08, 21:08:01
BUENO.

SUPONGAMOS QUE LA TABLA "V_LIN" ES EL RESULTADO DE EJECUTAR LA FUNCION "READ_TEXT".

ENTONCES LO QUE TIENES QUE HACER ES:

DATA STRING TYPE STRING.
DATA STRING_TEMP(510).

DATA LINEA1(255).
DATA LINEA2(255).

STRING_TEMP = ''.
LOOP AT V_LIN.
CONCATENATE STRING_TEMP V_LIN-TDLINE INTO STRING_TEMP
SEPARATED BY SPACE.
ENDLOOP.

LINEA1 = STRING_TEMP+0(255).
LINEA2 = STRING_TEMP+255(255).

CONCATENAR TODAS LAS LINEAS EN UNA VARIABLE DE 510 CARACTERES(STRING_TEMP). LUEGO PARTIR ESA VARIABLE EN 2. LINEA1 Y LINEA2. LAS CUALES PUEDES COLOCAR EN TU REPORTE.

SALUDOS ESPERO TE SIRVA