“You must set up periods for the fixed asset calendar Calendar.”

I created a General Journal for a fixed asset and while posting this journal I am getting following error

“You must set up periods for the fixed asset calendar Calendar.”

Can anyone please give me a pointer where I have to setup fixed asset calendar?

Hi Faisal,

Which version of AX are you using 2009 or 2012

Its AX 2012

Hi,

I’m using AX 2009, I suppose it’s quite the same in AX2012, you must have an opened period in Ledger/Setup/Period/Period, if not, just create one with correct dates

regards,

Thomas

Hi Faisal,

Under General Ledger >>> Setups >>> Fiscal Calender , just create fiscal periods and map the same in the fixed assets module. We can map fiscal calender in Value Models …

hope this will resolve ur issue…

… if you find the post helpful, please verify …

I resolved this issue, It was originating due to wrong value assigned to Depreciation field in Depreciation profiles. This should be same as setup for Calendar value for value model associated with fixed asset.

I just got this error and figured it out before checking the Internet.

This error occurs when both of the following conditions are met:

  1. A fixed asset’s service life is not an integer value

  2. An insufficient number of future years (basically, few than the asset’s service life) are setup in the fiscal calendar used for fixed assets

The error itself occurs in Classes\AssetTableInterval_Fiscal\assetDepreciationTime, when it is called with a value of 0 for its parameter _assetTransDate.

So the error only occurs when that method is called, and it is called with an invalid date (such as 0).

Error only occurs when that method is called
If a fixed asset’s service life is an integer, then a block of code in \Classes\AssetTableInterval_Fiscal\yearToPeriod does not need to be (and is not) executed. Therefore, assetDepreciationTime is not called from within that block. It doesn’t matter what value the date variable stores, because it is never passed to the other method.

On the other hand, if the service life is not an integer, then after processing the number of full years, AX still has to get the number of periods for the remaining fractional year. So the block of code does have to be (and is) executed, and the call to assetDepreciationTime is made. Now it matters what the data variable stores.

Error only occurs when the method is called with an invalid date (such as 0)
If there are a sufficient number of years setup in the fiscal calendar, then the last value of currentYearDate will be a valid date and the call to assetDepreciationTime works correctly.

If there is an sufficient number of years setup in the fiscal calendar (not enough for a loop to process every full year in the asset’s service life), then currentYearDate will be set to 0 during some iteration of the loop. Now it matters whether or not the other method is called using that 0-value date.

Anther reason of this problem is,

On dynamics AX 2012 R2, if the service life for an asset was 30 Year and you are using a specific calendar for the fixed assets module, this calendar should contain valid period for these 30 years