Friday, March 8, 2019

Visual Studio Solution compilation issue - Dynamics 365 for Finance & Operations

Greetings,

below I will share a strange behavior that could help others with the same issue.

Issue

Starting with the 8.1.3 installation, was not enough anymore to compile the VS Solution, but was necessary to compile the entire Model in order to test our modifications.

Resolution

When we installed 8.1.3 version, we had run the AXUpdateInstaller.exe and that's it!
But was not enough because by default the DefaultTopologyData.xml contain only the AOSService component and not the other ones.

So, we had run "AXUpdateInstaller.exe list" in order to have a list of the components that are installed on the computer like ALMService, DIXFService and DevToolsService.
The last one, dev tools were not updated causing a version difference!

By the way, we have update the DefaultTopologyData.xml file adding all Components installed on the VM and regenerate and rerun the runbook.

More details at https://docs.microsoft.com/en-us/dynamics365/unified-operations/dev-itpro/deployment/install-deployable-package

That's it
Enjoy!

Wednesday, February 27, 2019

DevOps Build Issue - Giving up. Received a null descriptor for the form

Hi,

During an Azure DevOps Build, I raised the error "Giving up. Received a null descriptor for the form FORMNAME" for different Custom Forms.

Running the Build from Visual Studio in the same Machine, any issues!

Really Strange!!
Let's start the game!!!

Thanks to MS Yammer and to Joris de Gruyter, I figure out the origin of the issue but no the real cause.

However, it seems that the compiler itself is not the issue, but a process after compilation called form compiler. It’s an optimization step for the runtime that seems will be remove in the upcoming release.

Workaround: 

I decide to modify the Build in order to avoid any Stop if an errors occur during the Form Compiler step.

In order to do that, we need:
  1. walk through to the folder "C:\DynamicsSDK\Metadata"
  2. make a copy of the "Microsoft.Dynamics.AX.Application.Build.targets" file
  3. edit the "Microsoft.Dynamics.AX.Application.Build.targets" file
  4. find the Section "Execute Pgc executable"
  5. modify the "ContinueOnError" parameter from "ErrorAndStop" to "WarnAndContinue"
  6. save the file
  7. rerun the Build

Cheers!

Saturday, February 16, 2019

Unable to Handle the OAuth authorization request without getting user Input - Dynamics 365 for Finance & Operations LBD

Hi,

Also in a Microsoft Dynamics 365 for Finance & Operations On Premise Implementation we can use Microsoft Office add-ins in order to editing ERP Data.

Error: Unable to Handle the OAuth authorization request without getting user Input

Resolution: 

  1. go through AD FS Management Console
  2. Edit the "Microsoft Dynamics 365 for Operations - Web API" entry
  3. Identifiers Section
  4. On the "Relyng party identifiers" section add two entries:
    1. https://envname.xxx.com/namespaces/AXSF
    2. https://envname.xxx.com


That's it!!



Friday, February 1, 2019

8.1.3 Platform Update 23 Installation Issue - Dynamics 365 for Finance & Operations LBD

Hi all,

in the last days I tried to install the 8.1.3 Platform Update 23 version on my F&O LBD Environment but I raised some error.

Really thank you to Mohamed Zaki and Renaud Paquay for helping me to address the resolution.

AOS Application Error:

Application: AXBootstrapper.exe
Framework Version: v4.0.30319
Description: The application requested process termination through System.Environment.FailFast(string message).
Message: RunAsync failed due to an unhandled exception causing the host process to crash: System.Management.Automation.RuntimeException: Exception calling "GetTypes" with "0" argument(s): "Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information." ---> System.Management.Automation.MethodInvocationException: Exception calling "GetTypes" with "0" argument(s): "Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information." ---> System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)

Reason:

AxBootStrapper is trying to load the netstandard.dll assembly from the GAC.

Resolution:

You need to install the netstandard.dll to your GAC on all AOSs.
For each AOS, go through C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1\  or ..\NETFX 4.5.1 Tools\ and run the following CMD command:

gacutil.exe -i "DLL Path\netstandard.dll"

You can find the DLL to the Agent path \\....WP\EnvName\StandaloneSetup-xxxxxxx\Apps\AOS\AXServiceApp\AXSF\Code\bin\

something like:
gacutil -i ..\agent\wp\XXX\StandaloneSetup-207104\Apps\AOS\AXServiceApp\AXSF\Code\bin\netstandard.dll

I guess the hotfix coming soon!

Till soon!

Thursday, January 24, 2019

Certificates Rotation on a Dynamics 365 for Finance & Operations On-premise Environment

Hi Guys.

Today I noticed that also on a LBD Environment is possible to handle the Certificates rotation!

Comparing with the Cloud, in a LBD implementation is a manual task, but now is possible to do it without modify the Configtemplate file, delete the Environment, etc.

Simply go through LCS Environment Full Details, Maintain, Update Settings


















Enjoy!

Tuesday, January 22, 2019

App Fabric Certificates Details - Dynamics 365 for Finance & Operations LBD

Hi,
as per my experiences, the Microsoft documentation is quite lack about the details useful in order to create the App Fabric Certificates.
In my implementations, about the LBD environments I use Certificates generated from the Internal Customer CA (ADCS).

Only about the AOS URL is recommended to purchase a Certificated from a certificate authority (CA) such as GoDaddy, DigiCert, etc. in order to avoid certificates warning during the navigation.

At the link below you can find an Excel file with all Certificates details.

Hope it help you!
Till soon!

Thursday, December 27, 2018

Trace Parser doesn't work - Dynamics 365 for Finance & Operations

Hi All and Happy Christmas!!

Below, I'll share an issue that wasted my time during an Performance investigation.
I have to say also thanks to Microsoft Technical support for helping me.

Some ETL files opened with Trace Parser on a onebox VM, didn't show up any methods and any queries. Something like that:













Cause: The ETW Providers  “Microsoft-AX-XPPExecutionTraces” and “Microsoft-Dynamics-AX-ExecutionTraces” aren't installed in the VM!

Microsoft-Dynamics-AX-XppExecutionTraces : Used to capture X++ methods events.
Microsoft-Dynamics-AX-ExecutionTraces : Used to capture SQL events.


















Resolution : In that case you can install the missing providers with the following steps:

Find the location of the manifest files. If you are using a onebox VM they are in C:\AOSService\webroot\Monitoring

Open a Powershell as Administrator and run the following commands to install the 2 missing event providers:

$resourcefiledir = "C:\AOSService\webroot"
$inputmanfile = "C:\AOSService\webroot\Monitoring\DynamicsAXExecutionTraces.man"
$outputmanfile = "C:\AOSService\webroot\Monitoring\DynamicsAXExecutionTraces_copy.man"
$temp = Get-Content $inputmanfile
$temp = $temp -replace "%APPROOT%",$resourcefiledir
$temp | out-file $outputmanfile
wevtutil im $outputmanfile
$inputmanfile = "C:\AOSService\webroot\Monitoring\DynamicsAXXppExecutionTraces.man"
$outputmanfile = "C:\AOSService\webroot\Monitoring\DynamicsAXXppExecutionTraces_copy.man"
$temp = Get-Content $inputmanfile
$temp = $temp -replace "%APPROOT%",$resourcefiledir
$temp | out-file $outputmanfile
wevtutil im $outputmanfile

Close and open Trace Parser again and verify the providers are visible in the list.

Another way is to:

Copy c:\Monitoring folder from a 7.2 working VM

Run MonitoringInstall.cmd from Command Prompt running as Administrator in this folder

I guess with the new VM version this issue is gone!

Enjoy!