Inicio > ABAP/4 > BAPI_ACC_DOCUMENT_POST – Actualizar campo REBZG

BAPI_ACC_DOCUMENT_POST – Actualizar campo REBZG

Caso: Al querer modificar los campos REBZG, REBZZ, REBZJ, la BAPI_ACC_DOCUMENT_POST no tiene disponibles los campos.

Solución: Se debe revisar la nota SAP 487722, en la cual indica en la segunda opción (la que utilicé yo) la creación de una BTE por la FIBF.

Pasos:

1. Por lo pronto, se debe hacer la llamada a la BAPI BAPI BAPI_ACC_DOCUMENT_POST con la tabla EXTENSION1 (no agrego todo el código para no aburrir)

DATA:it_bapiacextc TYPE TABLE OF bapiacextc.

DATA lwa_bapiacextc TYPE bapiacextc.

CLEAR lwa_bapiacextc.

lwa_bapiacextc-field1 = lv_posnr.

lwa_bapiacextc-field2 = lwa_out-belnr. » Nro. documento factura

lwa_bapiacextc-field3 = lwa_out-gjahr. » Ejercicio doc.factura

lwa_bapiacextc-field4 = ‘001’. » Posición doc.factura (siempre 001)

APPEND lwa_bapiacextc TO it_bapiacextc.

CALL FUNCTION ‘BAPI_ACC_DOCUMENT_POST’

EXPORTING

documentheader = lwa_header

TABLES

accountgl = lit_accountgl

currencyamount = lit_curr

extension1 = it_bapiacextc » Se habilita esta tabla para enviar el doc.ref.fact

return = lit_return

extension2 = it_bapiparex.

2. Luego por la SE37, copiamos el módulo de función SAMPLE_INTERFACE_RWBAPI01 (en mi caso la copié al módulo ZACT_DOC_REF_FACT_RWBAPI01), en donde vamos a agregar el código para actualizar los campos. Se crea entonces el módulo de funciones: ZACT_DOC_REF_FACT_RWBAPI01.

3. Modificamos la función para modificar los campos

DATA: lw_bapiacextc TYPE bapiacextc.

LOOP AT extension.

MOVE extension TO lw_bapiacextc.

LOOP AT it_accit WHERE posnr = lw_bapiacextc-field1.

it_accit-rebzg = lw_bapiacextc-field2.

it_accit-rebzj = lw_bapiacextc-field3.

it_accit-rebzz = lw_bapiacextc-field4.

modify it_accit.

ENDLOOP.

ENDLOOP.

4. Luego ingresamos a la transacción FIBF para crear una BTE:

5. Finalmente al ejecutar la BAPI, vemos que se actualizan los campos requeridos

Anuncio publicitario
  1. Carlos M.C Perú
    27/05/2019 a las 19:12

    Buenas tardes una pregunta, si te piden actualizar un campo Z se usaría la misma lógica ??

  2. Martín Ramirez
    05/06/2019 a las 21:30

    lv_posnr a que dato corresponde

  3. 20/12/2019 a las 16:27

    Es mucho mas sencillo ocupar la extension2 de la BAPI con la Baddi BADI_ACC_DOCUMENT, la cuál además trae coding de ejemplo

  4. Missael Valencia
    28/05/2021 a las 13:13

    Requiero actualizar campos Z.
    con esta BAPI BAPI_ACC_DOCUMENT_POST se puede modificar un documento ya contabilizado?

  1. No trackbacks yet.

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

A %d blogueros les gusta esto: