details: https://code.openbravo.com/erp/devel/pi/rev/7d048ad0b76f
changeset: 17983:7d048ad0b76f
user: Javier Etxarri <javier.echarri <at> openbravo.com>
date: Wed Sep 19 17:38:29 2012 +0200
summary: issue 21656: The reamortization of an asset cannot be calculated
diffstat:
src-db/database/model/functions/A_ASSET_POST.xml | 13 +++++++------
1 files changed, 7 insertions(+), 6 deletions(-)
diffs (51 lines):
diff -r 9626592579b5 -r 7d048ad0b76f
src-db/database/model/functions/A_ASSET_POST.xml
--- a/src-db/database/model/functions/A_ASSET_POST.xml Tue Sep 18 17:41:08
2012 +0200
+++ b/src-db/database/model/functions/A_ASSET_POST.xml Wed Sep 19 17:38:29
2012 +0200
@@ -190,7 +190,8 @@
v_LAST_DAY_DATE:=TO_DATE('31-12-' ||
TO_CHAR(v_AMORTIZATIONSTARTDATE, 'YYYY'), 'DD-MM-YYYY') ;
if v_Count>1 then
v_BEGINING_DATE:=TO_DATE('31-12-' ||
to_char(TO_number(to_char(v_BEGINING_DATE, 'yyyy')) +v_Count-1), 'DD-MM-YYYY') ;
- v_USELIFEYEARS:=v_USELIFEYEARS+1;
+ v_USELIFEYEARS:=v_USELIFEYEARS+ (1- (to_number(TO_DATE('31-12-'
|| TO_CHAR(v_AMORTIZATIONSTARTDATE, 'YYYY'), 'DD-MM-YYYY') -
v_AMORTIZATIONSTARTDATE) /
+ to_number(TO_DATE('31-12-' || TO_CHAR(v_AMORTIZATIONSTARTDATE,
'YYYY'), 'DD-MM-YYYY') - TO_DATE('01-01-' || TO_CHAR(v_AMORTIZATIONSTARTDATE,
'YYYY'), 'DD-MM-YYYY'))));
end if;
if v_AMORTIZATIONCALCTYPE='PE' then
v_PercentageGeneral:=v_AMORTIZATIONPERCENTAGE;
@@ -198,7 +199,6 @@
else
-- v_PercentageGeneral := 100 / v_USELIFEYEARS;
v_PercentageGeneral:=((v_AMORTIZATIONVALUEAMT-v_DEPRECIATEDPREVIOUSAMT-v_depreciatedPlan)
*100/v_AMORTIZATIONVALUEAMT) /(v_USELIFEYEARS-v_DepreciatedLines) ;
- UPDATE A_ASSET SET percentagegeneral = v_PercentageGeneral WHERE
A_ASSET_ID=v_Record_ID;
SELECT to_number(TO_DATE(ADD_MONTHS(v_AMORTIZATIONSTARTDATE,
12*v_USELIFEYEARS)) - v_AMORTIZATIONSTARTDATE)
INTO v_TOTAL_DAYS
FROM DUAL;
@@ -309,8 +309,9 @@
v_FIRST_DAY_DATE:=TO_DATE('01-'|| TO_CHAR(v_AMORTIZATIONSTARTDATE,
'MM') || '-' || TO_CHAR(v_AMORTIZATIONSTARTDATE, 'YYYY'), 'DD-MM-YYYY') ;
v_LAST_DAY_DATE:=TO_DATE('31-12-'||
TO_CHAR(v_AMORTIZATIONSTARTDATE, 'YYYY'), 'DD-MM-YYYY') ;
if v_Count>1 then
- v_BEGINING_DATE:=TO_DATE(ADD_MONTHS(LAST_DAY(TO_DATE('01-' ||
TO_CHAR(v_BEGINING_DATE, 'MM') || '-' || TO_CHAR(v_BEGINING_DATE, 'yyyy'),
'DD-MM-YYYY')), v_DepreciatedLines)) ;
- v_USELIFEMonths:=v_USELIFEMonths+1;
+ v_BEGINING_DATE:=TO_DATE(ADD_MONTHS(LAST_DAY(TO_DATE('01-' ||
TO_CHAR(v_BEGINING_DATE, 'MM') || '-' || TO_CHAR(v_BEGINING_DATE, 'yyyy'),
'DD-MM-YYYY')), v_DepreciatedLines)) ;
+ v_USELIFEMonths:=v_USELIFEMonths + (1-
(to_number(last_day(v_AMORTIZATIONSTARTDATE) - v_AMORTIZATIONSTARTDATE) /
+ to_number(last_day(v_AMORTIZATIONSTARTDATE) - TO_DATE('01-' ||
TO_CHAR(v_AMORTIZATIONSTARTDATE, 'MM-YYYY'), 'DD-MM-YYYY'))));
end if;
if v_AMORTIZATIONCALCTYPE='PE' then
@@ -336,7 +337,7 @@
loop
IF(v_COUNT=1 AND to_number(v_BEGINING_DATE-v_FIRST_DAY_DATE)<>0)
THEN
v_Percentage:=(to_number(to_number(last_day(v_BEGINING_DATE)
-v_BEGINING_DATE)) + 1) / (trunc((last_day(v_BEGINING_DATE)
-(TO_DATE('01-'||to_char(TO_DATE(v_BEGINING_DATE), 'MM-YYYY'), 'DD-MM-YYYY'))))
+1) * v_PercentageGeneral;
- v_USELIFEMONTHS:=v_USELIFEMONTHS+1;
+ v_USELIFEMONTHS:=v_USELIFEMONTHS+1;
ELSE
v_Percentage:=v_PercentageGeneral;
END IF;
@@ -423,7 +424,7 @@
END IF;
IF ((v_AMORTIZATIONCALCTYPE='TI' AND v_ASSETSCHEDULE='YE' AND v_Inserted
+ v_DepreciatedLines <> v_ORIGUSELIFEYEARS)
OR (v_AMORTIZATIONCALCTYPE='TI' AND v_ASSETSCHEDULE='MO' AND v_Inserted
+ v_DepreciatedLines <> v_ORIGUSELIFEMONTHS)) THEN
- RAISE_APPLICATION_ERROR(-20000, '@TooLowValueToAmortize@');
+ RAISE_APPLICATION_ERROR(-20000, '@TooLowValueToAmortize@');
END IF;
IF(FINISH_PROCESS) THEN
UPDATE A_ASSET SET PROCESSED='Y', PROCESSING='N' WHERE
A_ASSET_ID=v_Record_ID;
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits