Hola,
En esta publicación de blog, le mostraré cómo cambiar las partidas en el documento de activos para el sistema de contabilidad de activos que le permite diferenciar las cuentas según el tipo de activo fijo y el centro de costos.
Se aplica a SAP S/4HANA versión 1909 y posteriores. Además, también funciona en S/4HANA Cloud.
Necesitamos completar los siguientes pasos;
Primero, la tabla ZTR_AA_REALLOC ha sido reemplazada por FIAATRV_REALLOC mesa.
La tabla FIAATRV_REALLOC es la tabla de mantenimiento. Puede usar la tabla FIAATRV_REALLOC para la tabla transparente.
Use la tabla FIAATRV_REALLOC para el sistema de contabilidad de activos que le permite diferenciar cuentas según el tipo de activo fijo y el centro de costos.
Luego implementamos FAA_DOCLINES_CUSTOMER aplicación BADI. Esta mejora ES_FAA_DOCLINES se encuentra debajo del punto de mejora.
Aplicamos el FAA_DOCLINES_CUSTOMER BAdI que necesitamos para transferir las cuentas a la cuenta de gastos a partir de 7.
Crear implementación BAdI
Implementamos el FAA_DOCLINES_CUSTOMER BAdI que necesitamos para AFAB.
Ingresando BAdI y nombres de clases luego elegimos nuestro BAdI.
Active la pantalla entrante y continúe con la siguiente pantalla.
Haga doble clic en BAdI y haga clic en Ajustar implementación de BAdI, luego presione el botón Implementar y aplique nuestro método.
Finalmente, escribimos nuestro código en el método de la siguiente manera y lo activamos.
Método: IF_EX_FAA_DOCLINES_CLIENTE~CAMBIO_DOCUMENTO
METHOD if_ex_faa_doclines_customer~change_document.
DATA: ls_accit TYPE accit,
lv_ktopl TYPE ktopl,
lv_konto TYPE saknr,
ls_t001 TYPE t001.
SELECT SINGLE * FROM t001
INTO @DATA(s_t001)
WHERE bukrs EQ @is_posting_data-bukrs.
IF sy-subrc IS INITIAL.
IF is_posting_data-kostl IS NOT INITIAL.
SELECT * FROM fiaatrc_realloc
INTO TABLE @DATA(t_realloc)
FOR ALL ENTRIES IN @ct_accit
WHERE ktopl EQ @s_t001-ktopl
AND kokrs EQ @ct_accit-kokrs
AND kostl1 EQ @is_posting_data-kostl
AND kostl2 EQ @is_posting_data-kostl
AND vbrkon EQ @ct_accit-hkont
AND konto NE @space.
IF sy-subrc IS INITIAL.
TYPES ty_shkzg TYPE RANGE OF shkzg.
DATA(r_shkzg) = VALUE ty_shkzg( sign = 'I' option = 'EQ'
( low = 'S' )
( low = 'H' )
).
LOOP AT ct_accit ASSIGNING FIELD-SYMBOL(<accit>)
WHERE shkzg IN r_shkzg.
READ TABLE t_realloc ASSIGNING FIELD-SYMBOL(<realloc>)
WITH KEY kokrs = <accit>-kokrs
vbrkon = <accit>-hkont.
IF sy-subrc IS INITIAL.
<accit>-hkont = <realloc>-konto.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
ENDIF.
ENDMETHOD.
Además, funciona FAA_DOCLINES_PAÍS BAdI en el país filtrado también.
También puede examinar la FAA_DOCLINES_PAÍS.
Esos son pasos para mejorar AFAB.
Espero que eso te ayude. Y si conoce alguna otra solución alternativa, no dude en comentar.
Gracias por leer.
Saludos cordiales.
Calle Eloy Gonzalo, 27
Madrid, Madrid.
Código Postal 28010
Paseo de la Reforma 26
Colonia Juárez, Cuauhtémoc
Ciudad de México 06600
Real Cariari
Autopista General Cañas,
San José, SJ 40104
Av. Jorge Basadre 349
San Isidro
Lima, LIM 15073