#1
|
|||
|
|||
AYUDA URGENTE on value-request.
Tengo un porblema con un campo en mi dynpro.
tenog hecho un modulo on value-reques a mi campo equnr que es el numero de equipo. Lo que hago es que cuando cambie el numero de equipo me muestre su despcripcion y un par de datos mas. Eso me fucniona perfectamente. El problema que tengo esuqe cuando doy al enter el numero de equipo se borra de la pantalla aunqeu en la tabla donde esta aparece. Mi programa funciona de este modo: abro la pantalla con los campos del equipo, elijo el equipo y me muestra una serie de valores. depues puedo añadir estos registros a mi tabla. pues cuando cambio el equipo me pone los datos pero me borra el campo del equipo. pero cuando grabo este registro en mi tabla si aparece el numero de equipo, es en la pantalla donde no se muestra He intentado poner en el PBO una variable qeu me guarde el valor del equipo para mostrarlo pero aun asi no me lo muestra. Alguien me puede echar una mano? |
#2
|
|||
|
|||
perdon me referia a on chain-request no on value-request.
|
#3
|
|||
|
|||
Hola,
Yo tuve que hacer algo parecido y lo hice poniendo el código en at selection-screen on value-request for 'en tu caso será el campo equipo'. En mi caso cada vez que se cambia la clase de documento cambia su descriptivo. clasedoc = ayuda. * Cogemos el descriptivo de la Clase de Documento select single ltext into texto from t003t where blart = clasedoc and spras = 'S'. * Necesitamos que actualice el campo Texto cada vez que se cambie la * Clase de Documento en la pantalla * Declaramos las siguientes variables para poder utilizar la función data: t_dynpfields type dynpread occurs 0 with header line. data: d_prog like d020s-prog, d_numb like d020s-dnum. d_prog = sy-repid. d_numb = sy-dynnr. t_dynpfields-fieldname = 'TEXTO'. t_dynpfields-fieldvalue = texto. append t_dynpfields. call function 'DYNP_VALUES_UPDATE' exporting dyname = d_prog dynumb = d_numb tables dynpfields = t_dynpfields exceptions invalid_abapworkarea = 1 invalid_dynprofield = 2 invalid_dynproname = 3 invalid_dynpronummer = 4 invalid_request = 5 no_fielddescription = 6 undefind_error = 7 others = 8. . Espero que esto te ayude. Un saludo! |
#4
|
||||
|
||||
Puedes poner la parte del codigo en la que realizas esto, facil q el codigo puede tener un error de consistencia ...
__________________
David Carballido Córdova |
#5
|
|||
|
|||
¿A que te refieres con error de consistencia?
Yo lo hice así: at selection-screen on value-request for clasedoc. * La siguiente función es para sacar el Matchcode del campo Clase de * Documento. Recoje el valor que se ha elegido en el Matchocode * Declaramos las siguientes variables para poder utilizar la función data: t_dynpselect type dselc occurs 0 with header line, t_dynpvaluetab type dval occurs 0 with header line. data: t_help like help_info, ayuda like help_info-fldvalue. t_help-call = 'V'. t_help-tabname = 'BSIK'. t_help-fieldname = 'BLART'. call function 'HELP_START' exporting help_infos = t_help * PROPERTY_BAG = importing * SELECTION = select_value = ayuda * RSMDY_RET = tables dynpselect = t_dynpselect dynpvaluetab = t_dynpvaluetab . clasedoc = ayuda. * Cogemos el descriptivo de la Clase de Documento select single ltext into texto from t003t where blart = clasedoc and spras = 'S'. * Necesitamos que actualice el campo Texto cada vez que se cambie la * Clase de Documento en la pantalla * Declaramos las siguientes variables para poder utilizar la función data: t_dynpfields type dynpread occurs 0 with header line. data: d_prog like d020s-prog, d_numb like d020s-dnum. d_prog = sy-repid. d_numb = sy-dynnr. t_dynpfields-fieldname = 'TEXTO'. t_dynpfields-fieldvalue = texto. append t_dynpfields. call function 'DYNP_VALUES_UPDATE' exporting dyname = d_prog dynumb = d_numb tables dynpfields = t_dynpfields exceptions invalid_abapworkarea = 1 invalid_dynprofield = 2 invalid_dynproname = 3 invalid_dynpronummer = 4 invalid_request = 5 no_fielddescription = 6 undefind_error = 7 others = 8. . if sy-subrc <> 0. * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. endif. |
#6
|
||||
|
||||
No, no me deje entender, en un codigo hay, creo yo, 2 tipos de errores
1. Error de Sintaxis 2. Error de COnsistencia La primera es muy facil de entender, la segunda es cuando tu programa corre perfecto pero no te muestra lo que quieres, le decia a Miguel que seria bueno que coloque su codigo porq facil tiene un error de consistencia, ya que se le borra los campos al momento de ejecutar una accion Supongo que el caso se trata de un programa en dialogo por la sentencia ON CHAIN-REQUEST
__________________
David Carballido Córdova |
Herramientas | Buscar en Tema |
Desplegado | |
|
|