Technical Articles
Crear activo fijo asignando “AF comprado nuevo” (RA02S-XNEU_AM) o Comprado 2ª mano (RA02S-XGBR_AM) con BAPI_FIXEDASSET_OVRTAKE_CREATE. (ANLA-XAFABCH)
Tuve el reto de ajustar un programa para crear activos fijos asignándole el origen de la adquisición “nuevo” o “usado”, con la BAPI BAPI_FIXEDASSET_OVRTAKE_CREATE.
Al revisar la tabla ANLA, encontré el campo XAFABCH “Se ha adoptado el activo fijo usado” el cual tiene los posibles valores:
- X ► “Comprado 2ª mano”
- Y ► Indefinido
- <espacio> ► “AF comprado nuevo”
Al buscar en la pestaña Origen de la transacción AS01, AS02 y AS03 (programa SAPLAIST – dynpro 1181) se indica la estructura RA02S para estos 2 checks:
RA02S-XNEU_AM ► AF comprado nuevo RA02S-XGBR_AM ► Comprado 2ª mano
Los cuales se relacionan de la siguiente manera en el programa y dynpro arriba mencionado:
CASE anla-xafabch. WHEN 'X'. " Asset acquired used ra02s-xgbr_am = 'X'. ra02s-xneu_am = space. WHEN space. " Asset acquired new ra02s-xgbr_am = space. ra02s-xneu_am ='X'. WHEN 'Y'. " Undefined ra02s-xgbr_am = space. ra02s-xneu_am = space. ENDCASE.
Yendo a la BAPI BAPI_FIXEDASSET_OVRTAKE_CREATE, tiene el parámetro de entrada ORIGIN y ORIGINx, en cuya una estructura (BAPI1022_FEGLG009 y BAPI1022_FEGLG009X, respectivamente) tienen el campo PURCH_NEW “Indicador: El activo fijo ha sido comprado nuevo” el cual se debe llenar de la siguiente manera para marcar uno de los dos checks en la creación del activo fijo:
- AF comprado nuevo:
BAPI1022_FEGLG009-PURCH_NEW = 'X'. BAPI1022_FEGLG009X-PURCH_NEW = 'X'.
- Comprado 2ª mano:
BAPI1022_FEGLG009-PURCH_NEW = space. BAPI1022_FEGLG009X-PURCH_NEW = 'X'.
Si el campo PURCH_NEW no se marca con X en la estructura BAPI1022_FEGLG009X, el activo fijo se creará sin ninguno de los checks marcados:
BAPI1022_FEGLG009-PURCH_NEW = space. BAPI1022_FEGLG009X-PURCH_NEW = space.
A continuación el ejemplo de cada caso:
Ejemplos de origen de Activos Fijos
Referencias: