Tuesday, December 15, 2015

Address and Contact information logic on AR side


Address on the customer record can be of many types. Like Invoice, Delivery, Business etc. These types of addresses are called ‘Purpose’ in AX. There can be separate address for different purpose. Like an address setup for address purpose = Invoice, will be used by default by the system when the invoice is generated. However there can be more than one address types of the same purpose. Hence there can be 2 invoice types of address setup for the customer. How will the system know which one to use?? For this AX provides the option of the setting default. The default address setup against the purpose will be selected.


The delivery address can be changed as system gives the option to change the delivery address. However the system does not give the option to change the invoice address on sales order, as system picks it directly from the setup. The only way to change the address for a customer during invoicing is to go back to the customer record and change the default address for address type invoice. However the invoicing address can be changed on the project contract.




There is another concept of ‘primary’ which becomes the primary address for that customer record. There can be many address per purpose but out of all the addresses defined for that customer, only one can be termed as ‘Primary’ address. This will be available for selection wherever address is editable. Other than that there is no significance of this address.

On the project invoice / customer invoice, the contact information that appears is always the contact information defined on the Legal entity form, Contact fast tab and that too the contact records should be marked as primary or else they will not appear.

Similarly on the sales order invoice / project invoice, the contact id is the one which is selected on the sale order from the contact records set on the customer record.

Thanks
Sarang


Sunday, December 13, 2015

Fixed Asset creation and acquisition


Fixed asset creation (manual or automatic) and acquisition (manual or automatic) has a logic running in the background based on the selections made in the FA parameters and FA section on the PO record. These selections determines whether the FA creation and acquisition should be manual and automatic. This is simplified and presented in the manner which makes it more understandable and all the scenarios are presented at one go.



Thanks
Sarang

Monday, December 7, 2015

Period type, Periods, Worker Periods and Time sheet Periods


This topic has always confused me a hell lot. Hence trying to put down in writing my observations, so that i do not have to re-invent the wheel every time. The steps are as follows:

1. You create a Period type of 'Week' type. (Organisation administration > Common > Calendar > Period type)
2. After the period type is created, you generate the periods. While generating the periods, do not check the 'Update worker periods' and 'Update timesheet periods' checkbox, so that you can then understand the concept more correctly.
3. Now the periods are created for the period type. However there are no employees attached to the newly created period type.
4. Create a new employee and navigate to the 'Project management' tab in the ribbon. Click on the 'Project setup' icon. Project setup form would open up.
5. In this form, select the newly created 'Period type' from the 'Period code' drop down.
6. With the selection of 'Period code' in step 5 against the worker, you would assume that the periods that are created for the selected period code are assigned to the worker. However that is not the case.
7. To verify click on the 'Period status' icon and you would find out that the grid is empty. The reason for this is that though the period type is assigned to the worker, however the worker is not yet updated with the periods created for that period type.
8. To do this, there are two ways, either to do it by clicking the 'Update worker periods' button in the 'Period status' form (which would just update if for the said worker) OR to do it by clicking the 'Update worker periods' button from the 'Period type' form. If it is done from the 'Period type' form, then the worker periods are updated for all the employees associated with that period code.
9. This setup till now, still does not allow the user to submit the timesheet, as the timesheet periods are still not created for the newly created 'Period code'. Click on the 'Show timesheet periods' and verify it for yourself.
10. To do that, click the 'Update timesheet period' button and generate the timesheet periods.

Conclusion:

This means that creation of period type, generation of periods for the period type and association of that period type with an employee DOES NOT mean that the periods that are created for the period type are associated with the employee as worker periods. User will have to associate the created periods to the employee as worker periods by clicking update worker period button. Similarly the timesheet periods have to be updated for the created period type.

Thanks
Sarang

Thursday, November 5, 2015

Line Property and Project Posting Setup Concept


Line Property

Line Property can be used more efficiently if the setup around it is understood more deeply. Please have a look at the excel screenshot about how the 'Line Property' is resolved based on the following:


  1. Search priority on Project
  2. Search priority on Project group
  3. Default line property on Project
  4. Default line property on the Project group
  5. Default line property on Category
  6. Default line property on Category group


Project Posting Setup in relation to Search priority (Project / Category)

Similar to the Line property concept explained above, the selection of the appropriate ledger account for posting is determined by the Search priority. Please find the table below to understand how the search priority concept works.



Thanks
Sarang


Sunday, October 18, 2015

Project Field Depth


Project ID field is 20 characters long in AX 2012 R2 CU7.

AOT – Data Tables – Extended Data Types – ProjID.




The project ID length error sometimes occurs even when the previous project ID is of length of 17. 
This is because the moment the next project is created, the ‘Sub-project ID format’ field from the project is filled with the 'Default sub-project ID format' from the project parameters. 



System validates that assuming that the next project is created and shows the project length error. To get around this problem, go to project parameters remove the default sub-project ID format setup and then setup the sub-project. 

When the limit of the project id length reaches the Sub-project ID format field displays blank. Even if the user tries to enter # in it system errors.




Thanks
Sarang

Friday, October 9, 2015

Expense Ledger Postings


Expense Postings has been the most complex issue because of the number of different areas in which the postings can be setup. The difficult part is when we are asked to correlate what meaning does the posting setup has and what amount posts where based on scenario. On top of it, to add to the complexity, we do have Expense Journal, Expense Report from EP and because that was not enough we do have project and non-project expense. Whoa..!

To cut through the clutter and to present the settings in a much simpler fashion i came up with this grid which will be handy to find out where the postings are coming from, in any scenario and how the system is behaving. The grid is as follows:


Thanks
Sarang

Monday, September 7, 2015

PO, Receipt and Invoicing – Scenarios



Wish to retain these results for future reference:


  • If the PO is for Quantity 1 and value 100. If Receipt is for 0.6 (value = 60), the accrual transactions are posted for 60. Now if the invoice is for 0.4 (discrepancy approved), the accrual of 60 is completely reversed and invoice posting for 40 is posted. The difference of 20 is not accrued. However if you go to the PO, the deliver remainder is still 0.4, as 0.6 was received. If you now try to invoice, the quantity suggested is 0.2, as that is still to be invoiced (based on the option ‘Product receipt quantity’ selected on PSI). If this invoice is posted, then there is no accrual reversal transaction and the invoice posting is for 0.2. Deliver remainder after the second invoice is still 0.4 and the PO is open.
  • If the PO is for Quantity 1 and value 100. If Receipt is for 1 (value = 100), the accrual transactions are posted for 100. IF now the PO is increased to Quantity 2 (value=200) and confirmed, then even after the invoicing (Amount posted to creditors account = 100) of the receipt quantity, the PO is still open. If the user manually changes the ‘Deliver remainder’ quantity to 0, then the PO status changes to Invoiced.
  • If the PO is for Quantity 1 and value 100. If Receipt is for 1 (value = 100), the accrual transactions are posted for 100. IF now the PO is increased to Quantity 1 BUT unit price 200 (value = 200) and confirmed, then even after the invoicing (Amount posted to creditors account = 200) of the receipt quantity, the PO is closed (invoiced). In this case the ‘Deliver remainder’ quantity is 0.
  • If the PO is for Quantity 1 and value 100. If Receipt is for 1 (value = 100), the accrual transactions are posted for 100. IF now the PO is decreased to Quantity 0.8 (value=200) and confirmed, then system complains and gives the following error: ‘Quantity cannot be reduced because remaining update quantity changes sign’. However if you wish to change the receipted quantity instead of directly changing the quantity on PO, user can use the ‘Correct’ and ‘Cancel’ feature on the PO receipt. Correct would post / reverse the different between the new and old quantity. Cancel would simply cancel the old receipt transaction.
  • Correction / Cancellation to receipt can be done line by line (if the PO is multi-line).
  • Correction / Cancellation of receipt will be always posted to the original date. For e.g. Receipt date is 2nd of September 2015, however i realized on 10th of September 2015 that the receipt is wrong and i decided to cancel it. If i corrected / cancelled the receipt on 10th of September 2015, the reversal of the accrual posting will happen on 2nd of September.  
  • The reversal of the receipt ledger transactions on account of invoice will posted on the invoice date. 
  • If the PO date is 16th August and PO receipt date is 30th August. At month end August is closed. In September on 9th of September, if the PO receipt is corrected, then system gives the following warning message : The packing slip correction cannot be posted to the original accounting date when the fiscal period is closed. The accounting date has been moved to the first day in the next open fiscal period.
  • Duplicate Invoice number check on the Pending Supplier Invoice is in-built in AX. This check is based on the combination of the vendor and the invoice number. For e.g. for Vendor 001, if the invoice number Inv_900 is already used and if for the Pending supplier invoice for the same vendor i am using the same invoice number (Inv_900) again, then system will complain and display an error message that this is duplicate. However if the invoice number (Inv_900) is already used for Vendor 001 and now if the same invoice number (Inv_900) is to be used for different vendor, system will not complain.
  • Pending supplier invoice can be created for a vendor without a PO, for e.g. for utility bills, where PO is not required. Pending supplier invoice can be created for multiple PO's. (i.e. one invoice for multiple PO for the same vendor)
  • User cannot change the sign on the UNIT PRICE. If you wish to change the sign of the PO line, it has to be / must be always  changed on a QUANTITY. If the sign of the unit price is changed, system gives following error - ‘The sign on the quantity and net amount have to same’. 
      • (+ve) Quantity * Unit Price = (+ve) Line Net amount – For Invoice
      • (-ve)  Quantity * Unit Price = (-ve) Line Net amount – For Credit Note

Thanks
Sarang


Wednesday, September 2, 2015

Exchange Rate Issues in AX



I have always wanted to know how exchange rates behave in AX (as to when the auto posting to realized accounts happen and when it doesn't). I did some testing and this is what i thought i should record, before i forget.


11. Exchange Rate difference postings to realized exchange rate profit and loss accounts happen automatically when the sales invoice and the payment is in different currency than the company currency AND the payment is posted in the system on the date other than the invoice date.

Company Currency - GBP
Transaction Currency - USD
Exchange rate GBP / USD is different on the date of invoice and on the date of payment.

Based on the scenario mentioned above, if there are any exchange rate gain or loss, then it is AUTOMATICALLY posted.

22. If the sales invoice is in the company currency (GBP) and the payment is posted in transaction currency (USD), then the exchange rate posting will NOT be done automatically to the exchange rate gain or loss accounts. System will take the exchange rate defined in the system, calculate the value and post it in the system. However there are many different scenarios to it:

  •      If there arises the need to change the exchange rate, then it can be done by changing the Cross rate. If the cross rate is changed, then the auto postings take place in the exchange rate profit and loss accounts.
  •             If there arises the need to change the exchange rate, it can also be changed from the general tab by actually changing the exchange rate. However this will not change the amount in the journal and the journal will post. This will automatically not post to exchange rate profit and loss accounts. The only thing system will do in this case is, it will determine the value based on the exchange rate changed and then will either keep the invoice open or the payment open on the customer account.    

33. There is also one more scenario which is of credit note. If the invoice is raised in different currency than the company currency on certain date. After few days if the credit note is to be raised for the same, then what exchange rate the credit note should have, is the question. To manage this there is a setting in Sales Ledger parameters (Updates - Use exchange rate from source document) . If we do not turn the parameter on and go ahead the try to raise the credit note, then system complains and gives error, as the value does not match because of exchange rate fluctuations. The setting that I am talking about makes sure that the credit note also has the same exchange rate that of invoice. On the projects side though this thing can be managed, if the contract is a fixed rate contract.   

Just wanted to note this down so that I wont forget in the long run.

Kind Regards
Sarang