|
#1
|
||||
|
||||
Campo de String largo, para bastante texto.
Que tipo de dato utilizo para guardar un dato, cuya dimension es la propia de una narracion... o una descripcion??
Y existe en el Screen Painter algun campo de texto, q como sucedia en visual basic, visualizara mas de 1 linea. Gracias de antemano. Salu2 |
#2
|
|||
|
|||
Para almacenar mucho texto existe el tipo de dato: STRINGVAL (String variable largo) |
#3
|
||||
|
||||
Que longitud tiene ese tipo de dato?
A que clase de objeto lo asocio ese campo en el Screen Painter? He encontrado una funcion q me vale para esto, se llama "TERM_CONTROL_EDIT". Pero esta funcion saca un Popup, y almacena los datos en una tabla. Gracias Úlima edición por dmgman fecha: 12/06/06 a las 10:53:06. |
#4
|
|||
|
|||
Hola,
Lo que se suele hacer es utilizar un campo de texto finito y un objeto de texto determinado. El campo finito se utilizaría en caso de que la longitud no excediera de unos pocos carácteres mientras que el objeto de texto (mostrado, por ejemplo a partir de un botón) permitiría extenderse de forma infinita. Para crear un objeto de texto has de utilizar la tcode SE75. Tienes dos opciones: - Aprovechar algun objeto de texto ya existente y tan sólo crear un ID nuevo. - Crear objeto e ID nuevo para tu objeto de texto. Revisa los módulo de funciones EDIT_TEXT, SAVE_TEXT, READ_TEXT, INIT_TEXT, CREATE_TEXT para poder mantener tu texto. Espero te haya ayudado. Saludos. |
#5
|
||||
|
||||
ok
Hola gracias por tu contestacion.
Llevo poco tiempo con Abap y no conocia ni la transaccion ni la forma de proceder que me has planteado. Si sabes de algun sitio con un manual o algo q me explique un poco, te lo agradeceria. Salu2 |
#6
|
|||
|
|||
Hola puedes ocupar el custom-control del screen painter y tratarlo mediante una clase llamada data CL_GUI_TEXTEDIT:
se declara como data otxtarea_cabecera TYPE REF TO CL_GUI_TEXTEDIT. se instancia de la forma siguiente CREATE OBJECT custom_area_cabecera EXPORTING container_name = 'TXTAREA_CABECERA' EXCEPTIONS cntl_error = 1 cntl_system_error = 2 create_error = 3 lifetime_error = 4 lifetime_dynpro_dynpro_link = 5. CREATE OBJECT otxtArea_Cabecera EXPORTING parent = custom_area_cabecera. donde TXTAREA_CABECERA es el nombre que se le dio al custom control en la dynpro. Lo siguiente es que veas los metodos disponibles para la clase, aquí te agregó los que he ocupado. para eliminar texto existente: if not otxtarea_Cabecera is initial. call method otxtArea_Cabecera->DELETE_TEXT. endif. para leer el contenido: call method otxtArea_Cabecera->GET_TEXT_AS_STREAM importing TEXT = i_texttable exceptions ERROR_DP = 1 ERROR_CNTL_CALL_METHOD = 2. CALL FUNCTION 'CONVERT_STREAM_TO_ITF_TEXT' tables text_stream = i_texttable ITF_TEXT = t_txtcabecera. para pasarle al control el contenido de una tabla interna: call method otxtArea_cabecera->SET_TEXT_AS_STREAM exporting TEXT = i_texttable exceptions ERROR_DP = 1. donde i_texttable TYPES: BEGIN OF t_texttable, line(120) type c, END OF t_texttable. DATA i_texttable TYPE TABLE OF t_texttable. data: t_txtcabecera like tline occurs 0 with header line. esta otra función es la inversa de *stream_to_itf* call function 'CONVERT_ITF_TO_STREAM_TEXT' tables ITF_TEXT = t_line TEXT_STREAM = i_texttable. espero haberte dado luces. te adjunto como se ve el text edit. Saludos |
Herramientas | Buscar en Tema |
Desplegado | |
|
|