Sunday, August 13, 2017

D365 for Ops System Email Template Setup - HTML vs. XSLT

We were getting an error in a workflow (Root element is missing) that leverages the System email template found in System administration>>Workflow>>Workflow parameters>>Email message. Note the references to HTML in the 'Upload email template' form below.  This would lead one to believe that the template uploaded must be in HTML format.


However, what we found was that during setup of this email template, XSLT was defaulted into the Layout field below.  The problem is, the Layout field is not exposed in this form by default.  We had to personalize the form to add the field.


The cause of the error was the mismatch between the Layout type (XSLT) and the HTML template that had been uploaded.  Once we discovered the mismatch and changed the Layout value to HTML, the email error was resolved.

Wednesday, August 2, 2017

Dynamics 365 for Operations - Disable User Session Date (System date)

While there are cases where you want users to be able to change their session date which controls the default Posting date on transactions, there are times such as immediately after Go Live, where you might not want new users to have that level of control. 



To disable users updating the session date for all users or a group of users, update System date security settings in the Client essentials security privilege.



Users will be able to see the Calendar object but not update their session date.


Wednesday, July 26, 2017

D365 for Ops – Management Reporter ‘Generator’ Security Role

This MR security role is inherited via the assignment of ‘Accountant’, ‘CFO’ and ‘CEO’ security roles in D365.  The assigned D365 security Duty is ‘Generate financial reports’ and includes these privileges and menu items.



Not explicitly reflected in these security settings in D365 is that in MR, these settings allow the Generator user to update and save certain report parameters BUT those parameters are saved under a user-specific generation parameters for the report and do not alter parameters in the default report.  This is good in that the Generator user can edit parameters without affecting the default report but could be bad in that two users running the same report might get different results. 

The parameters that can be changed and saved by a Generator user are indicated in the red boxes.



However, the only Save option available to the Generator user is ‘Save My Report Overrides’ which saves User-specific generation parameters for the report.


The risk in assigning Generator rights to multiple users is the potential for different versions of the same report which reflect different financial results.  This risk might be outweighed by the need for certain users to generate their reports on demand.

Thursday, July 20, 2017

Beware the Penny Difference

If you're using Project Management & Accounting and Accounts Receivable in AX (D365 for Ops) and you have a Maximum penny difference and Maximum over/underpayment value set here in A/R Parameters>>Settlement -



Any Project invoice for an amount less than or equal to the Maximum over/under payment tolerance will transfer automatically to the general ledger account you have specified here -


When you post the Project invoice, it will post and offer this message -



And here are the journal vouchers created upon posting, indicating the write off from A/R account to the Rounding account.



Strange but true!

Friday, June 23, 2017

Posting Vendor invoices during Period close

Another filing in 'things learned along the way'.  In D365 for Operations, if the Purchasing module is On hold for the period and you try to post a vendor invoice with a date that falls in the On hold period, D365 gives you the option to post into the next open period.  I think that is a pretty cool feature.


Thursday, June 22, 2017

Importing Chart of Accounts with Exchange Rate Type field populated

I file this under 'things learned along the way'.  I just discovered this tonight when importing Main accounts into a GOLD environment with the 'Exchange rate type' field populated in the source file. There must exist at least one Exchange rate in the Exchange rate table for each Exchange rate type imported.


Without one Exchange rate setup, the DIXF job will throw this error for each record that has that Exchange rate type assigned to it.


Note that 'Foreign currency revaluation exchange rate type' = Exchange rate type in the Main account form.