Está en la página 1de 9

Este manual aplica en caso de querer incorporar un campo nuevo a las transacción

FBL5N o similares (FBL1N y FBL3N). Los casos más frecuentes es añadir el campo del
nombre del cliente, su dirección, el comisionista o el cobrador.
La solución está encarada a través de la implementación de una user-exit y la
ampliación de una estructura de SAP. Es decir, que en caso de necesitar esta solución lo
ideal es que la implemente un programador ABAP/4.
En caso de necesitar un mayor detalle consultar la nota 569939.

Pasos para añadir un campo:

1. Es necesario realizar append en estructura RFPOSX y a la RFPOS con el campo


ZZNAME1 (siempre los campos agragados a una estructura append deben ser
ZZ*).
Para ello se debe ir a la transacción SE11 ingresar el nombre de la estructura RFPOSX y a
la RFPOS y presionar

Autor: Sebastián Arévalo M.


En la barra de herramientas superiores presionar y crear una nueva
estructura appen presionando , se le crea el nombre y una descripción (ojo, este
proceso es lento y se demora bastante en activar la nueva estructura).

Autor: Sebastián Arévalo M.


Autor: Sebastián Arévalo M.
Le damos un nombre, en este caso “ZZNAME1”

Pero en la columna Tp. Componente debemos ponerle el elemento de datos de la tabla que
vamos a sacar. En este caso es el elemento de datos del campo KNA1-NAME1

“NAME1_GP”
Lo agregamos y damos enter
Guardamos en una orden de transporte

Finalmente presionamos para activar el append.

Autor: Sebastián Arévalo M.


2. Ejecutar el repport en la transacción SE38 RFPOSXEXTEND de tal manera que se
genere la estructura RFPOSTEXT.

Ejecutamos y nos muestra la siguiente ventana, damos clic en

Y nos muestra esta ventana informativa.

Autor: Sebastián Arévalo M.


3. Crear una éxit BTE. Para ello el primer paso es copiar el módulo de funciones
sample_interface_00001650 en el módulo de funciones
Z_SAMPLE_INTERFACE_00001650. Más abajo se facilita un ejemplo de cómo realizar
la user-exit para añadir el nombre del cliente.
Para ello vamos a la transacción SE37 y copiamos el modulo de funciones indicado
presionando el botón

Nos aparece la siguiente ventana, le damos el nombre indicado.

Finalmente lo guardamos en nuestra orden de transporte


Ahora vamos a modificar el código del módulo de funciones, en la misma SE37 le damos
clic en

Autor: Sebastián Arévalo M.


Nos despliega esta ventana, y dentro de la FUNCTION Z_SAMPLE_INTERFACE_00001650.

Pegamos el siguiente código:


*"--------------------------------------------------------------------
*"*"Interfase local
*" IMPORTING
*" VALUE(I_POSTAB) LIKE RFPOS STRUCTURE RFPOS
*" EXPORTING
*" VALUE(E_POSTAB) LIKE RFPOS STRUCTURE RFPOS
*"--------------------------------------------------------------------
DATA: zzname LIKE kna1-name1.

*-------------- Initialize Output by using the following line ----------


e_postab = i_postab.

* Añadir nombre de cliente o proveedor a la visualización de partidas.

IF e_postab-koart = 'D'.
SELECT SINGLE name1 FROM kna1 INTO zname
WHERE kunnr = e_postab-konto.
ELSEIF e_postab-koart = 'K'.
SELECT SINGLE name1 FROM lfa1 INTO zzname
WHERE lifnr = e_postab-konto.
ENDIF.

IF sy-subrc = 0.
e_postab-ZZNAME1 = zzname.
ENDIF.

Autor: Sebastián Arévalo M.


Activamos y guardamos

4. Una vez creada el módulo de funciones hay que ir a la transacción FIBF. Opciones _
Módulos P/S _ de una aplicación SAP.

Crearemos la entrada con en el evento 00001650 y añadiremos el módulo


de funciones z_sample_interface_00001650.

Autor: Sebastián Arévalo M.


Finalmente guardamos en nuestra orden de transporte y transportamos al mandate
correspondiente.

Autor: Sebastián Arévalo M.

También podría gustarte