añadir un campo a fbl5n

9
Autor: Sebastián Arévalo M. 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

Upload: ag2020

Post on 26-Dec-2015

54 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: Añadir Un Campo a FBL5N

Autor: Sebastián Arévalo M.

Este manual aplica en caso de querer incorporar un campo nuevo a las transacciónFBL5N o similares (FBL1N y FBL3N). Los casos más frecuentes es añadir el campo delnombre 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 laampliación de una estructura de SAP. Es decir, que en caso de necesitar esta solución loideal 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 campoZZNAME1 (siempre los campos agragados a una estructura append deben serZZ*).

Para ello se debe ir a la transacción SE11 ingresar el nombre de la estructura RFPOSX y ala RFPOS y presionar

Page 2: Añadir Un Campo a FBL5N

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, esteproceso es lento y se demora bastante en activar la nueva estructura).

Page 3: Añadir Un Campo a FBL5N

Autor: Sebastián Arévalo M.

Page 4: Añadir Un Campo a FBL5N

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 quevamos 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.

Page 5: Añadir Un Campo a FBL5N

Autor: Sebastián Arévalo M.

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

Ejecutamos y nos muestra la siguiente ventana, damos clic en

Y nos muestra esta ventana informativa.

Page 6: Añadir Un Campo a FBL5N

Autor: Sebastián Arévalo M.

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

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

Finalmente lo guardamos en nuestra orden de transporteAhora vamos a modificar el código del módulo de funciones, en la misma SE37 le damosclic en

Page 7: Añadir Un Campo a FBL5N

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.

Page 8: Añadir Un Campo a FBL5N

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ódulode funciones z_sample_interface_00001650.

Page 9: Añadir Un Campo a FBL5N

Autor: Sebastián Arévalo M.

Finalmente guardamos en nuestra orden de transporte y transportamos al mandatecorrespondiente.