#1
|
|||
|
|||
Estructura Append
Hola
Bueno resulta que necesito agregar una columna a una tabla estándar, tengo entendido que para esto es necesario : * Ingresar a la tabla estándar * Pulsar en boton "Estr.append" * Crear la estructura con el nuevo campo y activarla Pero al momento de ver la tabla en un programa, el nuevo campo no se visualiza, ¿No se si falta algún paso o estoy haciendo algo mal? _____________________________________________ La estructura es RN1WPV007_FIELDCAT, la transacción es la NWP1 (Puesto de Trabajo Clínico), este permite agregar columnas estándar que están en un POOL y necesito agregar una columna que no esta. Tengo entendido que se debe crear una badi y programar los metodos EXIT_DISPLAY y EXIT_FUNCTION, pero no se como seria el código. Muchas Gracias por su ayuda. Úlima edición por jjeffer fecha: 18/06/11 a las 17:19:07. |
#2
|
|||
|
|||
Hola
¿Sobre qué programa estás intentando visualizar el campo? Si es un programa estándar no te aparecerá ese campo. En el mejor de los casos podrás encontrar alguna user exit donde asociar tu campo a alguna pantalla. Espero que te ayude.
__________________
Óscar |
#3
|
|||
|
|||
Que tal Oscar.
Gracias por responder. La transacción es la NWP1 (Puesto de Trabajo Clínico), este permite agregar columnas estándar que están en un POOL y necesito agregar una columna que no esta. Tengo entendido que se debe crear una badi y programar los metodos EXIT_DISPLAY y EXIT_FUNCTION, pero no se como seria el codigo Muchas gracias. |
#4
|
|||
|
|||
hola jjeffer,
Tenes que implementar la BADI N1_WP_LSTAMB y como bien decis luego agregar el código en el método exit display. Para que tu campo z se vea en pantalla se lo vas a tener que pasa a la tabla new_t_lststelle_list. te paso un código de ejemplo(el campo que yo agrego es el ztriage): FIELD-SYMBOLS: <fs_list> LIKE LINE OF new_t_lststelle_list. * Asign data to new structure. new_t_lststelle_list[] = old_t_lststelle_list[]. * ¿Hay registros? CHECK NOT new_t_lststelle_list[] IS INITIAL. SELECT einri falnr patnr dokar doknr dokvr doktl FROM ndoc into table it_ndoc FOR ALL ENTRIES IN new_t_lststelle_list WHERE einri = new_t_lststelle_list-einri and falnr = new_t_lststelle_list-falnr and patnr = new_t_lststelle_list-patnr. IF sy-subrc EQ 0. select * FROM Y0000001 INTO table it_Y0000001 FOR ALL ENTRIES IN it_ndoc where dokar = it_ndoc-dokar and doknr = it_ndoc-doknr and dokvr = it_ndoc-dokvr and doktl = it_ndoc-doktl. ENDIF. loop at new_t_lststelle_list assigning <fs_list>. READ TABLE it_ndoc INTO wa_ndoc with key einri = <fs_list>-einri falnr = <fs_list>-falnr patnr = <fs_list>-patnr. IF sy-subrc = 0. READ TABLE it_Y0000001 INTO wa_Y0000001 with key dokar = wa_ndoc-dokar doknr = wa_ndoc-doknr dokvr = wa_ndoc-dokvr doktl = wa_ndoc-doktl. ENDIF. select single ddtext from dd07t into <fs_list>-ztriage where domname = 'ZN_ACUITY' and ddlanguage = sy-langu and domvalue_l = wa_Y0000001-ztrg_acu. clear: wa_Y0000001, wa_ndoc. endloop. también vas a tener que implementar el metodo EXIT_FUNCTION de la siguiente manera. method IF_EX_N1_WP_LSTAMB~EXIT_FUNCTION. * Para mantener funcionamiento de función sobrescribo * cambio de función con anterior. P_FCODE_CHANGED = P_FCODE. endmethod. Espero que te sirva. Saludos, |
#5
|
|||
|
|||
Gracias amigo, me salvaste la vida
|
Herramientas | Buscar en Tema |
Desplegado | |
|
|