#1
|
|||
|
|||
Actualizar datos de una select-options..... ???
Hola a todos compañeros, estoy actualmente con un programilla que me esta volviendo loco..........
Tengo definida la pantalla de selección de la siguiente forma: ****************************** Pantalla Selección ************************************* * Añadimos un campo aparte de los campos que hay por usar la base de datos lógica * *************************************************************************************** selection-screen begin of block blk2 with frame title text-001. select-options: so_istat for hrp1001-istat no intervals. parameters: pa_plvar like PCHDY-PLVAR, pa_otype like PCHDY-OTYPE default 'E'. select-options: so_objid for PCHDY-objid no intervals. selection-screen end of block blk2. Bien lo que quiere es generar una ayuda de búsqueda para la select-options "so_objid", que va a consistir que cuando le dan al botoncito de la ayuda para ese campo aparece una pantalla que llamo de una función que es una pantalla con un árbol que seleccionarán una o varias líneas, bien mi problema es que cuando ya vuelvo de esa pantalla y tengo los datos, no sé como hacer para que se actualicen los datos de la dynpro.... He probabo con ************************************** AYUDA PARA TIPO EVENTO *************************** * Ayúda para el tipo de Evento at selection-screen on value-request for so_objid-low. ******* Llamo a la función y me devuelve en una tabla los valores que han seleccionado ******** Luego he probado de dos maneras diferentes una metiendo los valores directamente en la variable. loop at g_sel_objects. move: g_sel_objects-objid to so_objid-low, 'I' to so_objid-sign, 'EQ' to so_objid-option. append so_objid. endloop. Y otra intentando usar la función... 'DYNP_VALUES_UPDATE' clear dynfields. refresh dynfields. loop at g_sel_objects. at first. dynfields-fieldname = 'SO_OBJID'. endat. dynfields-fieldvalue = g_sel_objects-objid. append dynfields. endloop. call function 'DYNP_VALUES_UPDATE' exporting dyname = sy-cprog dynumb = sy-dynnr tables dynpfields = dynfields exceptions invalid_abapworkarea = 1 invalid_dynprofield = 2 invalid_dynproname = 3 invalid_dynpronummer = 4 invalid_request = 5 no_fielddescription = 6 undefind_error = 7 others = 8. Pero nada no hay manera, de la única forma que he logrado algo es de la primera forma, pero lo que me hace es que si tengo 3 valores ej: 1 2 3 me deja el valor 3 como el valor que se puede ver y luego va si le vuelvo a dar al icono de la extensión "aparte que no ha cambiado al color verde que tiene datos" me lo pone así: 3 2 3 Alguna ayuda por favor....... Ya estoy loco con esto............ Muchas gracias por leer este mensaje.......... Saludos... |
#2
|
|||
|
|||
Intenta acceder directamente a la variable
field-symbols: <so> type any table. data: lv_nombre type char30 value 'SO_OBJID'. assign (lv_nombre) to <so>. <so>[] = tabla con datos select option[]. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|