AMPLIACIÓN CAMPO TEXTO PROVEEDOR-CLIENTE .
Pasos para la Ampliación de listados estándar FBL1N-FBL5N:
1. Creación del elemento de datos ZNAME (tipo CHAR 35).
2. Creación estructura ZFI_RFPOS que contendrá un único campo (ZFI_RFPOS -CAMPO) de estructura ZNAME.
3. Ampliar las tablas RFPOS, RFPOSX con la nueva estructura ZFI_RFPOS creada. Para ello añadir entradas a la tabla DD03L.
4. Para que se actualicen los listados se han de ejecutar los programas: RFPOSXEXTEND y BALVBUFDEL.
5. Una vez se ha incluido el campo en la salida de datos hay que completar el proceso para encontrar los valores de salida. Para ello se usa la BTE 1650 y un módulo de función:
a. Copiamos el módulo de función de ejemplo SAMPLE_INTERFACE_00001650, al que le hemos llamado ZSAMPLE_INTERFACE_00001650. En ella ponemos el código necesario.
b. Ir a la transacción FIBF e ir:Menú de Opciones -> Productos -> … de un cliente
c. Así creamos una nueva entrada con el nombre (ZFBL1N) y descripción (Ampliación columnas FBL1N) que queramos pero siempre activando el flag de ‘Producto Activo’.
d. Una vez creada vamos a Opciones -> Módulos P/S -> … de un cliente y añadimos una nueva entrada con:
Evento = 00001650.Producto = al creado en el punto anterior (ZFBL1N).Módulo de función creado (ZSAMPLE_INTERFACE_00001650).
ZSAMPLE_INTERFACE_00001650
FUNCTION ZSAMPLE_INTERFACE_00001650.*"----------------------------------------------------------------------*"*"Interfase local
*" IMPORTING*" VALUE(I_POSTAB) LIKE RFPOS STRUCTURE RFPOS*" EXPORTING*" VALUE(E_POSTAB) LIKE RFPOS STRUCTURE RFPOS*"----------------------------------------------------------------------
*-------------- Initialize Output by using the following line ----------
DATA: lv_num(10)." type lifnr.
E_POSTAB = I_POSTAB.
CASE sy-tcode. WHEN 'FBL1N'.
SELECT SINGLE lifnr FROM bseg INTO lv_num WHERE bukrs = i_postab-bukrs AND belnr = i_postab-belnr AND gjahr = i_postab-gjahr AND buzei = i_postab-buzei.
SELECT SINGLE name1 FROM lfa1 INTO e_postab-campo WHERE lifnr = lv_num.
WHEN 'FBL5N'. SELECT SINGLE kunnr FROM bseg INTO lv_num WHERE bukrs = i_postab-bukrs AND belnr = i_postab-belnr AND gjahr = i_postab-gjahr AND buzei = i_postab-buzei.
SELECT SINGLE name1 FROM kna1 INTO e_postab-campo WHERE kunnr = lv_num.
ENDCASE.
ENDFUNCTION.
Recommended