Skip to main content

Dynamics Ax 2009 Financials : Year-End process

Please find the Year-end closing process below:
Step 1: Create a new fiscal year
Path: Dynamics Ax > General Ledger > Setup > Periods > Periods
Click button 'Create new fiscal year'
Click 'OK'
12 monthly lines get created with open status.
Step 2: Control transactions in a closing period
Path: Dynamics Ax > General Ledger > Setup > Periods > Periods
A closed period cannot be reopened. Therefore, permission to close periods and years should be highly restricted.
Select 'Stop' from list and this prevents transactions posting in the system for that period, perfom same operation for 12 monthly periods.
Step 3: Change module status
Select the appropriate module and set the user group required access by selecting from list view in the above screen.
Step 4: Create Closing sheet
Path: Dynamics Ax > General Ledger > Periodic > Fiscal year close > Closing sheet
Set field 'Closing sheet' = 06/30/2011
Set field 'Name' = Closing Sheet as on 06/30/2011
Set value 'Posting layer' = Current
Set value 'Period code' = Closing
Note: Only 'Normal' and 'Closing' options can be used in closing sheet. 'Opening' option can be used for beginning balance transaction.
Click button 'Closing accounts'
Click button 'Load balances'
Notice the accounts and balances got updated in the screen.
Step 5: Make adjustments or transfers between accounts
Select an account line from the loaded balances and click button 'Transfer'
Note: For system reconciled accounts 'transfer' button would be disabled.
Set field 'Transaction text' = Closing transfer
Set field 'Amount' = -1500 (difference amount which needs to be transferred)
Select field 'Offset account' = 999999 (The offset account could be any relevant account, here I took example of 'Error account - 999999')
Click 'Save'
Close form 'Transfers'
Form 'Closing accounts' becomes active
After the necessary transfers or adjustments are complete, click the Post button from the Closing accounts form to post the closing sheet. The closing sheet only posts to the closing period.
At this time, also run reports and verify results before you close the period and transferring ending balances into the new year as opening balances.
Note: To post the closing sheet, you must open the closing period in the Periods form. After you post the closing sheet, ensure that you change the period back to Stopped.
Click button 'Close'
Step 6: Transfer Opening Balances & Setup Fiscal year close parameters
Enable GL Parameters:
Path: Dynamics Ax > General Ledger > Setup > Parameters > Ledger tab

Fiscal year close:
Delete close-of-year transactions during transfer : If this check box is selected, opening transactions and system-generated closing transactions that exist for the year to be closed are deleted when the transfer is processed again.
Create closing transactions during transfer : By enabling this option, have the system create closing transactions when running the opening transactions job.
Set period status to year closed : Select this check box to display a status of Year closed for all fiscal periods for the year that is being closed.
Voucher number must be filled in : If this check box is selected, a voucher number must be entered when opening transactions are created for a new fiscal year.
Note: If a period is closed, adjustments, which may be required by the auditor, are not possible.
Transfer opening balances procedure:
Path: Dynamics Ax > General Ledger > Periodic > Fiscal year close > Opening transactions
Click tab 'Dimension'
Dimension selection can be done here to transfer opening balances
Click button 'OK'
Please find the report of Closing transactions & Opening transactions
This completes the Year-End Closing process.

Popular posts from this blog

Mark All for Open Cust Trans and Open Vend Trans

We have situations where there are lots of open transactions that need to be settled against each other. This can be the case if auto settlement is turned off. One solution is to add a "Mark All" button to the custOpenTrans or vendOpenTrans forms. This button "checks" the mark checkbox on every line. The user can then uncheck several lines if needed and Update to settle the lines. The code below is an example of what we used on the open vendor transaction screen. The code is very similar on the AR side. One note: I used vendTable.AccountNum in the code below. That should be generalized to work with any buffer that is passed into the open trans form. void customMarkAll() { VendTransOpen localVendTransOpen; VendTrans localVendTrans; container conSum; int linesProcessed; ; //show wait cursor startLengthyOperation(); element.lock(); //remove all prior markings specOffsetVoucher.deleteSpe...

Print Report in Microsoft Dynamics AX 2009 through X++

I am trying to print sales confirmation report on a button click which I have added on Sales Order Detail form in Microsoft Dynamics AX 2009. On click event of that button, I have written following code: void clicked() {     Args                args;     ReportRun           reportRun;     SalesFormLetter     salesFormLetter;     PrintJobSettings    printJobSettings;     CustConfirmJour     custConfirmJour;     RecordSortedList    list                = new RecordSortedList(55);     SalesTable          salesTableUpdate;     ;     SELEC...

Creating Free Text Invoice through X++ code

Job: Calling class from job to run the class public void freeTextInvoicePostTestJob() { Dialog dialog; DialogField dlgCustAcc; DialogGroup dialogPeriodLengthGroup, dialogPeriodLengthGroup1; DialogField dlgLedgerAcc; ; dialog = new Dialog("Free-Text Invoice"); dialogPeriodLengthGroup1 = dialog.addGroup('Cust Table'); dlgCustAcc = dialog.addField(typeid(CustAccount)); dialogPeriodLengthGroup = dialog.addGroup('Ledger Table'); dlgLedgerAcc = dialog.addField(typeid(LedgerAccount)); if(dialog.run()) { if(dlgCustAcc.value() && dlgLedgerAcc.value() != '') FreeTxtInvoiceCreatePost::main(dlgCustAcc.value(), dlgLedgerAcc.value()); else throw error(strfmt("Either CustAccount or LedgerAccount info is missing.")); } } Class: Which creates the free text invoice class FreeTxtInvoiceCreatePost { } static void main(CustAccount _custAccount, LedgerAccount _ledgerAccount) { CustInvoiceTable custInvoiceTable; ...