Installing Microsoft Dynamics GP clients using System Center Configuration Manager (SCCM)
This article has its beginnings in a support case for Microsoft Dynamics GP 2013 Word Templates.
The problem reported by the customer was that whenever they tried to import a word template back into Dynamics, they would receive the following error:
The template you selected cannot be added.
The word template document itself did not even need to be modified, exporting the default template and then trying to import it again would give the same error.
We checked permissions of all the folders involved, captured Process Monitor logs looking for possible causes. However we were unable to find any cause of the issue.
This system was running in a hosted terminal server environment and we believed that the cause of the issue was due to the hosting partner locking down the system permissions.
Then we had a break through...
The hosting partner explained that the installation of Microsoft Dynamics GP 2013 in their systems was handled by an automated install using System Center Configuration Manager.
They had done some research and found that their silent installation was not including all the pre-requisites usually installed by the bootstrap program which runs before the main install.
The pre-requisites include:
- Visual C++ 2010 Runtime Libraries
- Dexterity Shared Components
- Microsoft Application Error Reporting
- Microsoft Lync 2010 SDK Runtime
- Microsoft SQL Server Native Client
- Open XMLSDK 2.0 for Microsoft Office
- Visual Basic for Applications Core
The Microsoft Dynamics GP 2013 installation instructions discuss the creation of an installation package which can be used to deploy Microsoft Dynamics GP, but they suggest manual installation of the pre-requisites.
The hosting partner found a great forum post on the Dynamics Community forums by Neil Rawlinson, where Neil explains how to install all the pre-requisites first. The information below is based on Neil's post and have been updated for the Microsoft Dynamics GP 2013 SP 2 DVD image.
Create an Installation Package for Microsoft Dynamics GP
Run Setup from the DVD, and create an installation package. Set the target folder to be somewhere that your SCCM server can access. Then you need to create a package based on that folder. The package will need to contain several programs which will install the prerequisite software (including updates) and then GP, then any GP updates.
Pre-requisites
The install of some pre-requisite components are different for 64 and 32 bit. So please use the appropriate commands for your system.
Set all the programs to run hidden, and whether or not a user is logged in and assign to targeted machines (and in the Accounts PC build task sequence).
Visual C++ 2010 Runtime Libraries for x64 clients:
vcredist_x64\vcredist_x64.exe /q /norestart
vcredist_x86\vcredist_x86.exe /q /norestart
Visual C++ 2010 Runtime Libraries for x86 clients:
vcredist_x86\vcredist_x86.exe /q /norestart
Dexterity Shared Components for x64 clients:
msiexec /i DexteritySharedComponents\Microsoft_Dexterity12_SharedComponents_x64_en-us.msi /qn
Dexterity Shared Components for x86 clients:
msiexec /i DexteritySharedComponents\Microsoft_Dexterity12_SharedComponents_x86_en-us.msi /qn
Dexterity Shared Components Update:
msiexec /update DexteritySharedComponents\Microsoft_Dexterity12_SharedComponents-KB2864521-ENU.msp /qn
Note: Check \DexteritySharedComponents folder to see if there are any updates.
Microsoft Application Error Reporting for x64 clients:
msiexec /i Watson\dw20sharedamd64.msi APPGUID={E56D868E-684F-4586-AF90-9F46DAC569A2} /qn /norestart
Note: The APPGUID corresponds to the GUID for the Dexterity Shared Components x64 and will change for each major release. This is for GP 2013 only.
Microsoft Application Error Reporting for x86 clients:
msiexec /i Watson\dw20shared.msi APPGUID={561378F7-9375-4939-9470-93891716F05B} /qn /norestart
Note: The APPGUID corresponds to the GUID for the Dexterity Shared Components x86 and will change for each major release. This is for GP 2013 only.
Microsoft Lync 2010 SDK Runtime:
MSIExec.exe /i LyncSdkRedist\LyncSdkRedist.msi /qn
Microsoft SQL Server Native Client for x64 clients:
msiexec.exe /i SqlNativeClient\sqlncli_x64.msi /qn
Microsoft SQL Server Native Client for x86 clients:
msiexec.exe /i SqlNativeClient\sqlncli.msi /qn
Open XML SDK 2.0 for Microsoft Office:
msiexec.exe /i OpenXmlFormatSDK\OpenXMLSDKv2.msi /qn
Visual Basic for Applications (R) Core:
VBA65\VBAOF11.msi /q
VBA65\VBAOF11I.msi /q
.Net Framework 3.5 SP1 (if needed):
DotNetFX35SP1\dotNetFx35setup.exe /q /norestart
.Net Framework 4.0 (if needed):
DotNetFX40\dotNetFx45_Full_x86_x64.exe /q /norestart
Windows Installer 4.5 (if needed):
WindowsInstaller4_5\<folder>\<installer> /quiet /norestart
Note: You will need to select the appropriate folder and installer file depending on the target operating system.
Microsoft Dynamics GP
Now it is time to install Microsoft Dynamics GP from the previously created installation package and also update for any service packs or hotfixes if needed.
Microsoft Dynamics GP 2013:
msiexec /i GreatPlains.msi /qn
Microsoft Dynamics GP 2013 Updates (if needed):
msiexec.exe /update Updates\MicrosoftDynamicsGP12-KB2864518-ENU.msp /qn
Note: The KB Number will vary depending on which Service Pack or Hotfix build being installed as well as which language is being installed.
Then create a task sequence for each of x64 and x86, that does the install in the order above.
As for the support case, after the pre-requisites were installed (specifically the Open XML SDK), the word template issue went away.
Thank you Neil for your post on GP 2010 and thank you to Todd Vagle from the Dynamics GP development team for his input.
David