TECHNICAL TOPICS: MICROSOFT DYNAMICS AX & DYNAMICS 365 FOR FINANCE AND OPERATIONS - ENTERPRISE EDITION
16 November 2017
15 November 2017
Dynamics 365 Unified Operations Platform Update 11 - failed in step 11
Dynamics 365 Unified Operations Platform Update 11 - failed on a sandbox environment in step 14 with the following error:
Start-Process C:\DynamicsTools\7za.exe -ArgumentList "x J:\DeployablePackages\432bcfed-4a5e-4b32-8e50-4aff2033e323\AOSService\Packages\files\dynamicsax-systemhealth-develop.7.0.4679.35176.zip -oJ:\AosService\PackagesLocalDirectory\SystemHealth -y -mmt" -RedirectStandardOutput C:\DynamicsAX\RunbookExecution-ExecuteParallelRunbook-432bcfed-4a5e-4b32-8e50-4aff2033e323_I0_R0\output\install-AXpackages_11152017093919-dynamicsax-systemhealth-develop.7.0.4679.35176-output.log -RedirectStandardError C:\DynamicsAX\RunbookExecution-ExecuteParallelRunbook-432bcfed-4a5e-4b32-8e50-4aff2033e323_I0_R0\output\install-AXpackages_11152017093919-dynamicsax-systemhealth-develop.7.0.4679.35176-error.log -Wait -WindowStyle Hidden -PassThru
7Zip failed to extract package Bin. At J:\AosService\PackagesLocalDirectory\InstallationRecords\dynamicsax-framework-bin.7.0.4679.35176\tools\installpackage.ps1:38 char:5
+ throw "$($_.Exception.Message)"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
7Zip failed to extract package Bin. At J:\AosService\PackagesLocalDirectory\InstallationRecords\dynamicsax-framework-bin.7.0.4679.35176\tools\dynamicspackagemanagement.psm1:104 char:9
+ throw "7Zip failed to extract package $packageName."
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To solve this issue I navigated to
J:\DeployablePackages\432bcfed-4a5e-4b32-8e50-4aff2033e323\AOSService\Packages\files\ and
J:\AosService\PackagesLocalDirectory\SystemHealth and changed properties of these folders. Removed the read only flag and clicked on apply. It will ask for admin rights and if you check again the read only flag is still partely there. A resume of the package deployment worked well.
Start-Process C:\DynamicsTools\7za.exe -ArgumentList "x J:\DeployablePackages\432bcfed-4a5e-4b32-8e50-4aff2033e323\AOSService\Packages\files\dynamicsax-systemhealth-develop.7.0.4679.35176.zip -oJ:\AosService\PackagesLocalDirectory\SystemHealth -y -mmt" -RedirectStandardOutput C:\DynamicsAX\RunbookExecution-ExecuteParallelRunbook-432bcfed-4a5e-4b32-8e50-4aff2033e323_I0_R0\output\install-AXpackages_11152017093919-dynamicsax-systemhealth-develop.7.0.4679.35176-output.log -RedirectStandardError C:\DynamicsAX\RunbookExecution-ExecuteParallelRunbook-432bcfed-4a5e-4b32-8e50-4aff2033e323_I0_R0\output\install-AXpackages_11152017093919-dynamicsax-systemhealth-develop.7.0.4679.35176-error.log -Wait -WindowStyle Hidden -PassThru
7Zip failed to extract package Bin. At J:\AosService\PackagesLocalDirectory\InstallationRecords\dynamicsax-framework-bin.7.0.4679.35176\tools\installpackage.ps1:38 char:5
+ throw "$($_.Exception.Message)"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
7Zip failed to extract package Bin. At J:\AosService\PackagesLocalDirectory\InstallationRecords\dynamicsax-framework-bin.7.0.4679.35176\tools\dynamicspackagemanagement.psm1:104 char:9
+ throw "7Zip failed to extract package $packageName."
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To solve this issue I navigated to
J:\DeployablePackages\432bcfed-4a5e-4b32-8e50-4aff2033e323\AOSService\Packages\files\ and
J:\AosService\PackagesLocalDirectory\SystemHealth and changed properties of these folders. Removed the read only flag and clicked on apply. It will ask for admin rights and if you check again the read only flag is still partely there. A resume of the package deployment worked well.
13 November 2017
D365fO | OData - An existing connection was forcibly closed by the remote host 10054
As soon as you connect to 2 Tier environments SAT or PROD environments you should keep in mind to connect using TLS 1.2. The easiest way to do this is compiling with .Net 4.6 or higher
If you are using the sample service scripts you can just add the following line of code into OAuthHelper.cs
public static string GetAuthenticationHeader()
{
string aadTenant = ClientConfiguration.Default.ActiveDirectoryTenant;
string aadClientAppId = ClientConfiguration.Default.ActiveDirectoryClientAppId;
string aadResource = ClientConfiguration.Default.ActiveDirectoryResource;
AuthenticationContext authenticationContext = new AuthenticationContext(aadTenant);
AuthenticationResult authenticationResult;
// TLS 1.2
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;
if (useWebAppAuthentication)
{
string aadClientAppSecret = ClientConfiguration.Default.ActiveDirectoryClientAppSecret;
var creadential = new ClientCredential(aadClientAppId, aadClientAppSecret);
authenticationResult = authenticationContext.AcquireTokenAsync(aadResource, creadential).Result;
}
else
{
// OAuth through username and password.
string username = ClientConfiguration.Default.UserName;
string password = ClientConfiguration.Default.Password;
// Get token object
var userCredential = new UserPasswordCredential(username, password);
authenticationResult = authenticationContext.AcquireTokenAsync(aadResource, aadClientAppId, userCredential).Result;
}
// Create and get JWT token
return authenticationResult.CreateAuthorizationHeader();
Error Messages:
InnerException {"An existing connection was forcibly closed by the remote host"}
ErrorCode 10054
Message "An existing connection was forcibly closed by the remote host"
Message "Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host."
09 October 2017
D365fO: Error - Enum type 'RetailChannelAttributeModifier' for the field 'Modifier' is not found.
Error Path: [dynamics://View/RetailSalesTableChannelAttributeView]: Enum type 'RetailChannelAttributeModifier' for the field 'Modifier' is not found. C:\AOSService\PackagesLocalDirectory\ApplicationSuite\Foundation\AxView\RetailSalesTableChannelAttributeView.xml
This error indocates that the model you're working with needs a reference to the model Retail.
This error indocates that the model you're working with needs a reference to the model Retail.
05 October 2017
D365fO Management Reporter reset data mart
If you need to reset the data mart of the managemnt reporter in D365fO the easiest way is to log onto the box that is running the management reporter service. For example BI Server for SAT environments.
Open a PowerShell as an administrator and run the following command:
J:
cd J:\MRProcessService\MRInstallDirectory\Server\MRDeploy
Import-Module .\MRDeploy.psd1
Reset-DatamartIntegration -Reason OTHER -ReasonDetail "TESTDBrestore"
valid values for -Reason are: SERVICING, BADDATA, OTHER.
-ReasonDetail parameter is free text
both are not important. They are just stored in the environment monitoring.
Open a PowerShell as an administrator and run the following command:
J:
cd J:\MRProcessService\MRInstallDirectory\Server\MRDeploy
Import-Module .\MRDeploy.psd1
Reset-DatamartIntegration -Reason OTHER -ReasonDetail "TESTDBrestore"
valid values for -Reason are: SERVICING, BADDATA, OTHER.
-ReasonDetail parameter is free text
both are not important. They are just stored in the environment monitoring.
10 August 2017
D365 | refresh server cache
If you need to flush the cache of your AX 7 alias D365 environment you can execute a runable class
https://YOURS.sandbox.ax.dynamics.com/?cmp=dat&mi=SysClassRunner&cls=SysFlushData
Beside that you could also use flush AOD:
https://YOURS.sandbox.ax.dynamics.com/?cmp=dat&mi=SysClassRunner&cls=SysFlushAOD
https://YOURS.sandbox.ax.dynamics.com/?cmp=dat&mi=SysClassRunner&cls=SysFlushData
Beside that you could also use flush AOD:
https://YOURS.sandbox.ax.dynamics.com/?cmp=dat&mi=SysClassRunner&cls=SysFlushAOD
28 July 2017
D365EE | This page can't be displayed
While importing code into my local environment I was facing a strange behavior. All models build without errors. But when trying to open AX in the browser I got the message "This page can't be displayed"
So I checked the IIS, the services,... did an iisreset, but nothing changed.
After some checks in VisualStudio I called "synchronize database" and found the root cause for this issue. The DB sync threw an error that told me that there is a form extension with the same name in two different models.
And indeed that was the issue. I renamed one of the extensions build the modules and could open AX again. Table sync was working as well,
What I've learned from this is that the compiler is not checking if form extensions with the same name exist in different models. So always check that manually!
And what I still don't understand is why a synchronize database is throwing an error in form extensions. Shouldn't it focus on tables and table extensions?
So I checked the IIS, the services,... did an iisreset, but nothing changed.
And indeed that was the issue. I renamed one of the extensions build the modules and could open AX again. Table sync was working as well,
What I've learned from this is that the compiler is not checking if form extensions with the same name exist in different models. So always check that manually!
And what I still don't understand is why a synchronize database is throwing an error in form extensions. Shouldn't it focus on tables and table extensions?
04 July 2017
Dynamics 365 Enterprise Edition - On Premise Informations
Here are all the important informations regarding the on premise installation of D 365
https://docs.microsoft.com/en-us/dynamics365/unified-operations/dev-itpro/deployment/on-premises-deployment-landing-page
The System requirements are very interresting :)
After you have all the servers and requirements in place go ahaed with this: Set up and deploy on-premises environments.
Just to find out which Features not implemented in on-premises deployments.
So it still looks like cloud first ;)
03 July 2017
Hey Microsoft why not calling it AX?
I just started a D365 july update and as promissed by Microsoft they changed the name again.
But honestly: Microsoft Dynamics 365 for Finance and Operations, Enterprise Edition is not as short as it could be.
Please rename it back to AX it was so easy and short :)
But honestly: Microsoft Dynamics 365 for Finance and Operations, Enterprise Edition is not as short as it could be.
Please rename it back to AX it was so easy and short :)
14 June 2017
D365EE | The menu item with name sysloadstartpage could not be opened
After a full build with no errors I was not able to log onto the build environment. It displayed the message:
The menu item with name sysloadstartpage could not be opened.
normally you can get rid of this message with a full database sync. In my case it required a build of the ApplicationSuite and a database syncronization. That is really strange because the build process should already have build the packages.
The menu item with name sysloadstartpage could not be opened.
normally you can get rid of this message with a full database sync. In my case it required a build of the ApplicationSuite and a database syncronization. That is really strange because the build process should already have build the packages.
07 April 2017
D365 | Instrall Platform Update 5 on local DEV VM
Lately I managed to install platform update 5 in my development machine. It was easier than platform update 4. Here are the steps to follow
You don't need to change the config files anymore :)
You don't need to change the config files anymore :)
- Download platform update 5 from LCS (for details see the PU4 post)
- Unblock the zip and extract it
- Open a command prompt and navigate to the folder
- AXUpdateInstaller.exe generate -runbookid="OneBoxDev" -topologyfile="DefaultTopologyData.xml" -servicemodelfile="DefaultServiceModelData.xml" -runbookfile="OneBoxDev-runbook.xml"
- AXUpdateInstaller.exe import -runbookfile=OneBoxDev-runbook.xml
- AXUpdateInstaller.exe execute -runbookid=OneBoxDev
- If the installations stops at step 5 - restart the server and continue
- AXUpdateInstaller.exe execute -runbookid=OneBoxDev -rerunstep=5
- rebuild your application
- update VS extensions (for details see the PU4 post)
- from 7.0.4.0 to 7.0.5.0
- Regenerate form adaptor models
- cd C:\AOSService\PackagesLocalDirectory\Bin • xppfagen.exe -metadata=C:\AosService\PackagesLocalDirectory -model="ApplicationPlatformFormAdaptor" -xmllog="c:\temp\log1.xml"
- xppfagen.exe -metadata=C:\AosService\PackagesLocalDirectory -model="ApplicationFoundationFormAdaptor" -xmllog="c:\temp\log2.xml"
- xppfagen.exe -metadata=C:\AosService\PackagesLocalDirectory -model="DirectoryFormAdaptor" -xmllog="c:\temp\log3.xml"
- IISRESET
03 April 2017
D365fO | change view edit mode of a form
To switch between view and edit mode of an AX form we used element.task() in AX 2012 (for details see: this post). In AX 7 alias D365 for Operations this is also possible, but the code looks different:
FormRun formRun = sender;
FormRunViewEditModeHelper viewEditModeHelper = formRun.viewEditModeHelper();
viewEditModeHelper.setViewEditModer(ViewEditMode::Edit);
FormRun formRun = sender;
FormRunViewEditModeHelper viewEditModeHelper = formRun.viewEditModeHelper();
viewEditModeHelper.setViewEditModer(ViewEditMode::Edit);
24 February 2017
D365 | Install Platform Update 4 on a local development VM
First of all there should be no overlayering of the application platform !!!
Prepare the installation
Update Visual Studio Extension
Regenerate form adaptor models
Install the new Data Management service
Open D365 and check the About Page it should show Platform Update 4 7.0.4425.16161 :)
- Application Platform
- Application Foundation
- Test Essentials
- Log onto your dev environemnt
- Go to your LCS project’s Asset library.
- On the Software deployable package and click Import
- Select Platform Update 4 and click Pick
- Click on the Name to start the download
Prepare the installation
- Unzip the file to a local directory
- navigate to: ...\AOSService\Scripts\PlatformUpdatePackages.Config
- change the MetaPackage value: to dynamicsax-meta-platform-development
(This is important if you are updating you dev vm) - If you are updating a local VM you can leave the Machine name in DefaultTopologyData.xml file as localhost, otherwise change it to the name of the pc
- Open a command prompt as admin and navigate to the folder update folder#
- AXUpdateInstaller.exe generate -runbookid="OneBoxDev" -topologyfile="DefaultTopologyData.xml" -servicemodelfile="DefaultServiceModelData.xml" -runbookfile="OneBoxDev-runbook.xml"
- AXUpdateInstaller.exe import -runbookfile=OneBoxDev-runbook.xml
- AXUpdateInstaller.exe execute -runbookid=OneBoxDev
- If you need to rerun a step use the following command:
AXUpdateInstaller.exe execute -runbookid=OneBoxDev -rerunstep=1 - rebuild your application
- Open Visual Studio and click Tools - Extensions
- Run the installer
- After that Version 7.0.4.0 should be installed
- Cd C:\AOSService\PackagesLocalDirectory\Bin
- xppfagen.exe -metadata=C:\AosService\PackagesLocalDirectory -model="ApplicationPlatformFormAdaptor" -xmllog="c:\temp\log1.xml"
- xppfagen.exe -metadata=C:\AosService\PackagesLocalDirectory -model="ApplicationFoundationFormAdaptor" -xmllog="c:\temp\log2.xml"
- xppfagen.exe -metadata=C:\AosService\PackagesLocalDirectory -model="DirectoryFormAdaptor" -xmllog="c:\temp\log3.xml"
- Cd into \DIXFService\Scripts
- msiExec.exe /uninstall {5C74B12A-8583-4B4F-B5F5-8E526507A3E0} /passive /qn /quiet
- msiexec /i "DIXF_Service_x64.msi" ISSQLSERVERVERSION="Bin\2012" SERVICEACCOUNT="NT AUTHORITY\NetworkService" /qb /lv DIXF_log.txt
04 February 2017
D365 | Recurring Integration - Application ID
When you create a recurring data job in Dynamics 365 (AX7) you will be asked for an application id in the "Setup authorization policy" tab.
If you don't have already created your application id within the azure active directory you need to follow these steps to get it done. This relates to the new azure portal: https://portal.azure.com
That should be it. Copy the application id and enter it in Dynamics 365. Now you can go on with the recurring integration.
If you don't have already created your application id within the azure active directory you need to follow these steps to get it done. This relates to the new azure portal: https://portal.azure.com
- Login to the azure portal and click on azure active directory
- Manage -> App registration and click ADD
- In the Create dialog enter a name, select Application type Native and provide a uri. For example the address of your onebox development environment: https://usnconeboxax1aos.cloud.onebox.dynamics.com
Click Create - and wait a second
- Navigate to the newly created app - now you should already see the application id that you're looking for
- Before you continue in D365 click on required permissions - Add
- Select: Microsoft Dynamics ERP (Microsoft.ERP) as the API and select permissions as needed and click select and done
- Now your required permissions should look like this
That should be it. Copy the application id and enter it in Dynamics 365. Now you can go on with the recurring integration.
10 January 2017
D365 | x++ project cannot be built. Another build is in progress
I just faced the following error while trying to built a sollution on my local Dynamics 365 VM:
x++ project cannot been built. another build is in progress.
After trying the usual things like restarting VS and killing tasks without luck, I solved it by rebooting my local VM.
If anyone knows a faster way please leave a comment.
x++ project cannot been built. another build is in progress.
After trying the usual things like restarting VS and killing tasks without luck, I solved it by rebooting my local VM.
If anyone knows a faster way please leave a comment.
Subscribe to:
Posts (Atom)