RE:[sap-acct] Change useful life of an asset during fiscal year
Posted by
Admin at
|
Share this post:
|
0 Comments
| | Posted by csabar (SAP Financial Systems Manager) on Apr 8 at 10:05 PM | |
Try using "smoothing"; this is a checkbox you can select in configuration.
---------------Original Message---------------
From: RAJAN PSD
Sent: Friday, July 09, 2004 2:40 PM
Subject: Change useful life of an asset during fiscal year
> You can try a variant of this.......
> INCLUDE ZXAFAU02
> *
>
> *
> *
>
> *THIS USER EXIT WILL COMPUTE DEPRECIATION ON THE
> REMAINING LIFE
> *FROM THE VALUE DATE. THIS IS EFFECTIVE FROM
> 07/01/2002. THE
> *DEPRECIATION PRIOR TO 07/01/2002 WILL NOT BE CHANGED.
> BUT
> * DEPRECIATION FROM 07/01/2002 WILL BE COMPUTED ON
> REMAINING
> *LIFE.
> *PROGRAM WRITTEN BY PSD RAJAN. email@removed
> *DATE : 08/31/2002
> tables: ANEP.
>
> DATA:
> BEGIN OF Z_DAT,
> JAH LIKE T009B-BDATJ,
> MON LIKE T009B-BUMON,
> TAG LIKE T009B-BUTAG,
> END OF Z_DAT.
>
> DATA:
> Z_TRANTYPE LIKE ANEP-BWASL,
> Z_TAG LIKE T009B-BUTAG,
> Z_PROZ TYPE P DECIMALS 10,
> Z_RPERBEG(4) TYPE P,
> Z_RESDAU(4) TYPE P,
> Z_PERAFAGWO(4) TYPE P,
> Z_PERAFAGW(4) TYPE P,
> Z_AFABTR TYPE F,
> Z_AFABTRO TYPE F,
> Z_CUTOFFPER(4) TYPE P,
> Z_BEZWRT TYPE F.
>
> *THE REFERENCE PERIOD FOR 07/01/2002 IS 48061.
> Z_CUTOFFPER = 48061.
> E_AKTIV = 'X'.
>
> E_AFABTR = 0.
>
> Z_AFABTR = 0.
> Z_AFABTRO = 0.
>
> * THIS IS ONLY FOR CUSTOMER EXIT 1.
>
> IF I_AFAP-AFAMET = 'X'.
> read table t_anep with key afabe = i_afabe.
> * ENSURE THAT SYSTEM CALCULATES THE DEPRECIATION FOR
> PERIOD
> *PRIOR TO CUT OFF DATE OF 7/1/2002 WITH BASE METHOD
> 007 AND AFTER
> *THE CUT OFF DATE, USING THIS PROGRAM BASED ON NBV ON
> THE
> *VALUE DATE. THIS AVOIDS RECALCULATION OF
> DEPRECIATION IN MID
> *YEAR.
> IF I_AFAP-RPERBEG LT Z_CUTOFFPER AND T_ANEP-BWASL NE
> '690'.
> *Find out the transaction type. QKI is balance
> forward.
> * read table t_anep with key afabe = i_afabe.
> If t_anep-bwasl = 'QKI'.
> READ TABLE T_ANLC WITH KEY AFABE = I_AFABE.
> Z_bezwrt = t_anlc-kansw.
> ELSE.
> Z_BEZWRT = I_BEZWRT.
> Endif.
>
> Z_PERAFAGWO = I_AFAP-RPEREND - I_AFAP-RPERBEG + 1.
> Z_PERAFAGW = 0.
> IF I_AFAP-RPEREND GE Z_CUTOFFPER.
> Z_PERAFAGWO = Z_CUTOFFPER - i_afap-rperbeg.
> Z_PERAFAGW = I_AFAP-RPEREND - Z_CUTOFFPER + 1.
> ENDIF.
> IF I_AFAP-GESDAU GT 0.
> Z_PROZ = I_AFAP-PERFY * I_AFAP-DEGFAK /
> I_AFAP-GESDAU.
> IF I_AFAP-GESDAU < I_AFAP-PERFY.
> Z_PROZ = Z_PROZ * I_AFAP-GESDAU /
> I_AFAP-PERFY.
> ENDIF.
> Z_AFABTRO = z_bezwrt * Z_PROZ *
> Z_PERAFAGWO / I_AFAP-PERFY.
> ENDIF.
> Z_RESDAU = I_AFAP-RAFEND - Z_CUTOFFPER + 1.
> * FUTURE DEPRECIATION TO BE BASED ON THE NBV AS ON CUT
> OFF DATE.
> I_BEZWRT = I_BEZWRT - Z_AFABTRO.
> *we don't want to divide zero
> IF Z_PERAFAGW GT 0.
> Z_PROZ = I_AFAP-PERFY * I_AFAP-DEGFAK /
> Z_RESDAU.
> Z_AFABTR = I_BEZWRT * Z_PROZ * Z_PERAFAGW /
> I_AFAP-PERFY.
> ENDIF.
> IF I_AFAP-GESDAU < I_AFAP-PERFY.
> Z_AFABTR = 0.
> *Z_AFABTRO HAS ALREADY TAKEN CARE OF THIS.
> ENDIF.
> *ADD PRIOR CUTOFF AND POST CUTOFF DEPRECIATION
> Z_AFABTR = Z_AFABTRO + Z_AFABTR.
> *THIS WILL BE USED ONLY FOR RECALCULATION AFTER THE
> CHANGE OF
> *DEPRECIATION METHOD.
> ELSE.
>
> read table t_anep with key afabe = i_afabe.
>
> Z_TRANTYPE = T_ANEP-BWASL.
> * FOR TANSACTION TYPE 690, CURRENT YEAR ACQUISITIONS,
> SYSTEM
> *TAKES THE RESIDUAL LIFE FROM THE START DATE OF
> DEPRECIATION
> *FOR THE ASSET AND NOT THE VALUE DATE FOR THE
> TRANSACTION.
> *THIS HAS BEEN FIXED WITH THIS CODE.
> IF Z_TRANTYPE = '690'.
> MOVE T_ANEP-BZDAT TO Z_DAT.
> Z_TAG = 0.
> IF Z_DAT-TAG LE 15.
> Z_TAG = -1.
> ENDIF.
> Z_RPERBEG = ( Z_DAT-JAH * 24 ) + ( Z_DAT-MON * 2
> ) + Z_TAG.
> ELSE.
> Z_RPERBEG = I_AFAP-RPERBEG.
> ENDIF.
> * Z_RESDAU = I_AFAP-RAFEND - I_AFAP-RPERBEG + 1.
> Z_RESDAU = I_AFAP-RAFEND - Z_RPERBEG + 1.
> * Z_PERAFAGW = I_AFAP-RPEREND - I_AFAP-RPERBEG +
> 1.
> Z_PERAFAGW = I_AFAP-RPEREND - Z_RPERBEG + 1.
> E_AKTIV = 'X'.
>
> E_AFABTR = 0.
>
> IF I_AFAP-GESDAU GT 0.
> Z_PROZ = I_AFAP-PERFY * I_AFAP-DEGFAK /
> Z_RESDAU.
> IF I_AFAP-GESDAU < I_AFAP-PERFY.
> Z_PROZ = Z_PROZ * I_AFAP-GESDAU /
> I_AFAP-PERFY.
> ENDIF.
> Z_AFABTR = I_BEZWRT * Z_PROZ * Z_PERAFAGW /
>
> I_AFAP-PERFY.
> ENDIF.
> ENDIF.
> ENDIF.
> E_AFABTR = Z_AFABTR.
__.____._ ---------------Original Message---------------
From: RAJAN PSD
Sent: Friday, July 09, 2004 2:40 PM
Subject: Change useful life of an asset during fiscal year
> You can try a variant of this.......
> INCLUDE ZXAFAU02
> *
>
> *
> *
>
> *THIS USER EXIT WILL COMPUTE DEPRECIATION ON THE
> REMAINING LIFE
> *FROM THE VALUE DATE. THIS IS EFFECTIVE FROM
> 07/01/2002. THE
> *DEPRECIATION PRIOR TO 07/01/2002 WILL NOT BE CHANGED.
> BUT
> * DEPRECIATION FROM 07/01/2002 WILL BE COMPUTED ON
> REMAINING
> *LIFE.
> *PROGRAM WRITTEN BY PSD RAJAN. email@removed
> *DATE : 08/31/2002
> tables: ANEP.
>
> DATA:
> BEGIN OF Z_DAT,
> JAH LIKE T009B-BDATJ,
> MON LIKE T009B-BUMON,
> TAG LIKE T009B-BUTAG,
> END OF Z_DAT.
>
> DATA:
> Z_TRANTYPE LIKE ANEP-BWASL,
> Z_TAG LIKE T009B-BUTAG,
> Z_PROZ TYPE P DECIMALS 10,
> Z_RPERBEG(4) TYPE P,
> Z_RESDAU(4) TYPE P,
> Z_PERAFAGWO(4) TYPE P,
> Z_PERAFAGW(4) TYPE P,
> Z_AFABTR TYPE F,
> Z_AFABTRO TYPE F,
> Z_CUTOFFPER(4) TYPE P,
> Z_BEZWRT TYPE F.
>
> *THE REFERENCE PERIOD FOR 07/01/2002 IS 48061.
> Z_CUTOFFPER = 48061.
> E_AKTIV = 'X'.
>
> E_AFABTR = 0.
>
> Z_AFABTR = 0.
> Z_AFABTRO = 0.
>
> * THIS IS ONLY FOR CUSTOMER EXIT 1.
>
> IF I_AFAP-AFAMET = 'X'.
> read table t_anep with key afabe = i_afabe.
> * ENSURE THAT SYSTEM CALCULATES THE DEPRECIATION FOR
> PERIOD
> *PRIOR TO CUT OFF DATE OF 7/1/2002 WITH BASE METHOD
> 007 AND AFTER
> *THE CUT OFF DATE, USING THIS PROGRAM BASED ON NBV ON
> THE
> *VALUE DATE. THIS AVOIDS RECALCULATION OF
> DEPRECIATION IN MID
> *YEAR.
> IF I_AFAP-RPERBEG LT Z_CUTOFFPER AND T_ANEP-BWASL NE
> '690'.
> *Find out the transaction type. QKI is balance
> forward.
> * read table t_anep with key afabe = i_afabe.
> If t_anep-bwasl = 'QKI'.
> READ TABLE T_ANLC WITH KEY AFABE = I_AFABE.
> Z_bezwrt = t_anlc-kansw.
> ELSE.
> Z_BEZWRT = I_BEZWRT.
> Endif.
>
> Z_PERAFAGWO = I_AFAP-RPEREND - I_AFAP-RPERBEG + 1.
> Z_PERAFAGW = 0.
> IF I_AFAP-RPEREND GE Z_CUTOFFPER.
> Z_PERAFAGWO = Z_CUTOFFPER - i_afap-rperbeg.
> Z_PERAFAGW = I_AFAP-RPEREND - Z_CUTOFFPER + 1.
> ENDIF.
> IF I_AFAP-GESDAU GT 0.
> Z_PROZ = I_AFAP-PERFY * I_AFAP-DEGFAK /
> I_AFAP-GESDAU.
> IF I_AFAP-GESDAU < I_AFAP-PERFY.
> Z_PROZ = Z_PROZ * I_AFAP-GESDAU /
> I_AFAP-PERFY.
> ENDIF.
> Z_AFABTRO = z_bezwrt * Z_PROZ *
> Z_PERAFAGWO / I_AFAP-PERFY.
> ENDIF.
> Z_RESDAU = I_AFAP-RAFEND - Z_CUTOFFPER + 1.
> * FUTURE DEPRECIATION TO BE BASED ON THE NBV AS ON CUT
> OFF DATE.
> I_BEZWRT = I_BEZWRT - Z_AFABTRO.
> *we don't want to divide zero
> IF Z_PERAFAGW GT 0.
> Z_PROZ = I_AFAP-PERFY * I_AFAP-DEGFAK /
> Z_RESDAU.
> Z_AFABTR = I_BEZWRT * Z_PROZ * Z_PERAFAGW /
> I_AFAP-PERFY.
> ENDIF.
> IF I_AFAP-GESDAU < I_AFAP-PERFY.
> Z_AFABTR = 0.
> *Z_AFABTRO HAS ALREADY TAKEN CARE OF THIS.
> ENDIF.
> *ADD PRIOR CUTOFF AND POST CUTOFF DEPRECIATION
> Z_AFABTR = Z_AFABTRO + Z_AFABTR.
> *THIS WILL BE USED ONLY FOR RECALCULATION AFTER THE
> CHANGE OF
> *DEPRECIATION METHOD.
> ELSE.
>
> read table t_anep with key afabe = i_afabe.
>
> Z_TRANTYPE = T_ANEP-BWASL.
> * FOR TANSACTION TYPE 690, CURRENT YEAR ACQUISITIONS,
> SYSTEM
> *TAKES THE RESIDUAL LIFE FROM THE START DATE OF
> DEPRECIATION
> *FOR THE ASSET AND NOT THE VALUE DATE FOR THE
> TRANSACTION.
> *THIS HAS BEEN FIXED WITH THIS CODE.
> IF Z_TRANTYPE = '690'.
> MOVE T_ANEP-BZDAT TO Z_DAT.
> Z_TAG = 0.
> IF Z_DAT-TAG LE 15.
> Z_TAG = -1.
> ENDIF.
> Z_RPERBEG = ( Z_DAT-JAH * 24 ) + ( Z_DAT-MON * 2
> ) + Z_TAG.
> ELSE.
> Z_RPERBEG = I_AFAP-RPERBEG.
> ENDIF.
> * Z_RESDAU = I_AFAP-RAFEND - I_AFAP-RPERBEG + 1.
> Z_RESDAU = I_AFAP-RAFEND - Z_RPERBEG + 1.
> * Z_PERAFAGW = I_AFAP-RPEREND - I_AFAP-RPERBEG +
> 1.
> Z_PERAFAGW = I_AFAP-RPEREND - Z_RPERBEG + 1.
> E_AKTIV = 'X'.
>
> E_AFABTR = 0.
>
> IF I_AFAP-GESDAU GT 0.
> Z_PROZ = I_AFAP-PERFY * I_AFAP-DEGFAK /
> Z_RESDAU.
> IF I_AFAP-GESDAU < I_AFAP-PERFY.
> Z_PROZ = Z_PROZ * I_AFAP-GESDAU /
> I_AFAP-PERFY.
> ENDIF.
> Z_AFABTR = I_BEZWRT * Z_PROZ * Z_PERAFAGW /
>
> I_AFAP-PERFY.
> ENDIF.
> ENDIF.
> ENDIF.
> E_AFABTR = Z_AFABTR.
Copyright © 2010 Toolbox.com and message author.
Toolbox.com 4343 N. Scottsdale Road Suite 280, Scottsdale, AZ 85251
Toolbox.com 4343 N. Scottsdale Road Suite 280, Scottsdale, AZ 85251
Related Content
In the Spotlight
White Papers
In the Spotlight
Did this response help you resolve your issue? Click the green 'Mark as helpful' arrow to vote on the entry.
View this thread online
Manage group e-mails
Create an FAQ on this topic
Tell us what you think
Unsubscribe from discussion
Manage group e-mails
Create an FAQ on this topic
Tell us what you think
Unsubscribe from discussion