Avalados por :

Cómo realizar la publicación F-47 con BAPI y BTE en SAP

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 25 Vistas
0
Cargando...

Para la publicación F-47, solo se publica en 1 ítem de línea, mientras que BAPI "BAPI_ACC_DOCUMENT_POST" debe publicar en 2 líneas para equilibrar la cuenta. Aquí están los pasos para realizar la publicación F-47 (Solicitud de pago anticipado) a través de BAPI y BTE con 1 ítem de línea:

1) Cree un nuevo grupo de funciones utilizando el código de transacción SE80.

2) Copie el módulo de función estándar de BTE "SAMPLE_INTERFACE_RWBAPI01" a un módulo de función Z, por ejemplo, "ZSAMPLE_INTERFACE_RWBAPI01"

3) Vaya a la transacción FIBF para crear el BTE para el proceso "RWBAPI01".

Consulte el enlace en la sesión de configuración - Evento de Transacción Comercial - RWBAPI01 - Para la Interfaz de Documento Contable - Desarrollo ABAP - SCN W...

4) Antes de llamar al BAPI "BAPI_ACC_DOCUMENT_POST", prepare la tabla de extensión1 como se muestra a continuación:

DEFINE mac_assign_extension.

clear lv_string.

concatenate &1 &2

into lv_string.

concatenate &3 lv_string

into &3

separated by ';'.

END-OF-DEFINITION.

*-> preparar extensión

CONCATENATE '0001' ls_accountpayable-itemno_acc

INTO ls_extension1-field1. " 0001 => número de ejecución para un propósito diferente para activar BTE "RWBAPI01"

CONCATENATE 'BSTAT' 'S' INTO ls_extension1-field2.

mac_assign_extension 'BSCHL' '39' ls_extension1-field2.

mac_assign_extension 'UMSKZ' 'F' ls_extension1-field2.

mac_assign_extension 'ZUMSK' 'Z' ls_extension1-field2.

mac_assign_extension 'SHKZG' 'H' ls_extension1-field2.

APPEND ls_extension1 TO lt_extension1.

5) En el módulo de función "ZSAMPLE_INTERFACE_RWBAPI01" , lea la tabla de extensión1 y llene el campo en la tabla IT_ACCIT.

TIPOS : INICIO DE ty_extension,

campo TIPO char50,

FIN DE ty_extension.

TIPOS : tty_extension TIPO TABLA ESTÁNDAR DE ty_extension.

DATOS : ls_extension TIPO bapiacextc,

ws_extension TIPO ty_extension,

lt_extension TIPO tty_extension,

lv_tabix TIPO sytabix,

lv_len TIPO i.

DATOS : lv_bstat TIPO char01,

lv_bschl TIPO char01,

lv_umskz TIPO char01,

lv_zumsk TIPO char01,

lv_shkzg TIPO char01.

DEFINE mac_assign_value.

clear lv_len.

if &4 is initial.

find first occurrence of &1 in &2 match length lv_len.

if sy-subrc = 0.

&3 = &2+lv_len.

&4 = 'X'.

endif.

endif.

END-OF-DEFINITION.

LOOP AT extension INTO ls_extension.

CASE ls_extension-field1(4).

WHEN '0001'. "Para solicitud de pago anticipado

MOVE 'RFST' TO document_header-glvor.

READ TABLE it_accit WITH KEY posnr = ls_extension-field1+4(10).

IF sy-subrc = 0.

lv_tabix = sy-tabix.

SPLIT ls_extension-field2 AT ';'

INTO TABLE lt_extension

IN CHARACTER MODE.

LOOP AT lt_extension INTO ws_extension.

mac_assign_value 'BSTAT' ws_extension

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

Sin respuestas

No hay respuestas para mostrar No hay respuestas para mostrar Se el primero en responder

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?