Subscribe via RSS Feed Connect on LinkedIn

4-4-5 Accounting Dynamics NAV

14th March 2015 0 Comments

4-4-5 Accounting in Dynamics NAV is only possible with manual setup, most Accounting Systems are setup for the Julian or Western Calendar the standard 1st January to the 31st December with the additional Leap Year day 29th February every 4 years, this is adequate for most purposes, the standard periods in Dynamics NAV use the virtual date table with the Julian Calendar Structure, all versions of Dynamics NAV have a table to enable the setup of custom Accounting Periods.

4-4-5 Accounting

Some businesses will use 4-4-5 accounting or a variation 5-4-4 or 4-5-4, commonly in Retail, Manufacturing Shift work, I would think a service company that sold labour could also use 4-4-5 accounting periods to good effect, one of the key benefits is for period on period, quarter on quarter or year on year reporting and budgeting.

If I look at the Month of May 2015 there are five full trading weekends in May, in Retail the weekends are the highest trading days comparing May 2014 to May 2015 there is an additional weekend trading day and one less working day (Manufacturing and Service) which would distort year on year comparison and could affect the budgeting and planning of resources or stock, in manufacturing and the service industry the number of working days or hours in a period are the key to planning and reporting.

4-4-5 Accounting will give me four quarters of thirteen weeks (91 Days) made up of two four week periods and one five week period, two half year periods of exactly twenty six weeks and a year of exactly fifty two weeks (364 Days), if I compare period one 2014 to period one 2015 I will know that they both contain the same number of trading days and trading weekends, I could then create a fairly accurate budget based on last years sales for the same period.

In the GB version I can setup all custom accounting periods, I could start the week on a different day like a Thursday and then create custom entries for Week, Month, Quarter and Year.

The Calendar can be setup by manual entry, therefore there is no requirement to make any changes to the objects, these changes would just make it easy to create a new Fiscal Year, the example reports can be downloaded at the end of this post.

Accounting Periods GB

The GB Database has a different Account Period table (10560: “Accounting Period GB”), the standard database uses table 50 “Accounting Period” but the principle is the same, the 4-4-5 periods could easily be added manually to the Accounting Periods, I will use the MOD function to add the creation of 4-4-5 accounting periods to Report 93: Create Fiscal Year.

Report 93: Create Fiscal Year

I start by adding two C/AL Globals to the report, the Calendar (Date) variables is used to return the date name as some periods will span two different months, the FourFourFive boolean variable is added to the Report “Request Page”

Snap 2015-03-14 at 07.15.09


Add the Variable to the Request Page.

Snap 2015-03-14 at 07.20.30


Code OnPreReport (GB Version)

** The C/AL code structure is different in the Standard Report, both reports are in the Download **

Snap 2015-03-14 at 07.21.36

  • If the Boolean FourFourFive is selected.
  • Reset the Calendar (Date) Virtual Table.
  • Set a range filter for the Period Type Month from the Start date on the request page.
  • Find the first record in the dataset.
//4-4-5 Accounting >>
  Calendar.SETRANGE("Period Type",Calendar."Period Type"::Month);
  Calendar.SETRANGE("Period Start",FiscalYearStartDate, 31129999D);
//4-4-5 Accounting <<


Snap 2015-03-14 at 07.22.21

  • If the Boolean FourFourFive is selected.
  • Use the MOD Operator to see if there is a return for MOD 3.
  • If there is a return calculate four weeks.
  • If there is no return calculate five weeks.
//4-4-5 Accounting >>
  IF i MOD 3 <> 0 THEN
    MonthEndDate := CALCDATE('<4W>',MonthStartDate) - 1
    MonthEndDate := CALCDATE('<5W>',MonthStartDate) - 1;
//4-4-5 Accounting >>
//4-4-5 Accounting >>
  IF i MOD 3 <> 0 THEN
    FiscalYearStartDate := CALCDATE('<4W>',FiscalYearStartDate)
    FiscalYearStartDate := CALCDATE('<5W>',FiscalYearStartDate);
//4-4-5 Accounting >>

Snap 2015-03-14 at 07.23.04

  • If the Boolean FourFourFive is selected.
  • Set the Period Number.
  • Set the Period Name.
  • Move the Calendar Variable to the next record.
//4-4-5 Accounting >>
  AccountingPeriod."Period No." := i;
  AccountingPeriod."Period Name" := Calendar."Period Name";
//4-4-5 Accounting >>
//4-4-5 Accounting >>
  AccountingPeriod.Name := Calendar."Period Name";
//4-4-5 Accounting >>

Creating the Entries

Run Page 50 Accounting Periods and select Create Fiscal Year.

Snap 2015-03-14 at 07.25.29


Select the Four Four Five checkbox and run the report.

Snap 2015-03-14 at 07.46.42


Accounting Periods GB which has the additional “Period Type” and “Period End” fields.

Snap 2015-03-14 at 07.47.36


Accounting Periods Standard WW.

Snap 2015-03-14 at 07.43.13


If I run the “Trial Balance by Period” from the “Accounting Periods” page Ribbon  I can see the 4-4-5 Dates.

Snap 2015-03-14 at 07.48.46


Calendar Setup

In the Cronus UK (GB) database there is an additional setup, I run the Page 1505: Calendar Setup and un-check the “Use System for Month Period”.

Snap 2015-03-14 at 07.34.15


Sales Budgets

If I search for Sales Budgets open the page and set the Period to Month or Accounting Period, I can create a Budget based on the 4-4-5 Calendar.

Sales Budget Overview GB is different to the Standard with the Calendar Source, select View by: Month.

Snap 2015-03-14 at 07.50.48


Standard Sales Budget Overview, select View by: Accounting Period, here I can see the period dates are 4-4-5.

Snap 2015-03-14 at 07.54.44

Download “Report 93 Create Fiscal Year” – Downloaded 1005 times – 27 KB

Leave a Reply

You must be logged in to post a comment.