I had a curious one a few months ago (which I forgot to post). A client I was implementing Microsoft Dynamics GP for encountered a problem whenever they printed a report; all of the text was overlapping:
If a document was printed from Microsoft Word it was fine; if a GP report as printed to XPS and then sent to the printer from there then it was also fine. It was just the reports printed directly from Microsoft Dynamics GP which had the overlapping text problem.
Doing some more testing I was able to narrow the problem down further, from thinking it was all GP reports, to only the text based reports. Not having seen this problem before I thought a quick online search might find me an answer.
And it did; I found an old post from David Musgrave on the Deveoping for Dynamics GP blog where he covers how to change the font used for Text reports.
By using the information in David’s post to update the settings in the dex.ini file I was able to resolve the problem.
I added the following lines to the dex.ini file on each client (and left notes with the client’s IT department so they could do this on any new installations):
FontCourier New=Lucida Console
When you log into Windows Server, the Server Manager opens automatically, but I rarely want to use it. In Windows Server 2008 R2 there was a checkbox on the main window which would allow you to dismiss the window and prevent it appearing again.
This option still exists in the Windows Server 2012 Server Manager, but it is no longer front and centre.
To prevent Server Manager loading automatically when logging into Windows, click Manage and then Server Manager Properties:
After installing Microsoft Dynamics GP in a new test system, I then installed Integration Manager and tried to run an integration to test.
After clicking the Run button the following message popped up:
Integration Manager: The destination could not be initialized due to the following problem: -Input string was not in a correct format
This error is typically one seen when Microsoft Dynamics GP is not running (I’ve seen it at a few clients running Citrix when they have Integration Manager running on one server and Microsoft Dynamics GP on another), but I had Microsoft Dynamics GP open in the background.
I quickly realised the problem; I had imported some modified reports into GP which contained VBA and to avoid an error I had right clicked and used Run as Administrator when starting Microsoft Dynamics GP, but had started Integration Manager normally.
This meant the two applications were running in different states and Integration Manager could not see Microsoft Dynamics GP.
To resolve the issue I closed Integration Manager and reopened it using the menu in Microsoft Dynamics GP (
); this is the way I typically recommend clients open it in order to avoid this problem on Citrix XenApp or other ways of publishing applications.
This perhaps isn’t the best time of the year to be posting about trust relationship breakdowns, but this is the only post I have ready to go (I have a couple of series of posts I intend to do soon).
I make quite a lot of use of virtual machines for testing and writing because of the flexibility and ease of taking a snapshot before doing something risky so the machine can be reset. After doing so one day, I ran into a problem I hadn’t seen before after restoring one virtual machine to a snapshot:
The trust relationship between this workstation and the primary domain failed
While VBA is falling out of favour with Microsoft Dynamics GP (by dint of not being supported in the web client) it is still useful for those clients who do not use, and have no intention of using, the web client.
One such client was recently installing some new XenAPp servers using Windows Server 2012; when they tried to open a window with a VBA customisation they received the following error:
File Not Found: VBA6.DLL
Fortunately, Beth Gardner posted the answer to the Developing for Dynamics GP blog.
Posted in Dynamics, GP, Microsoft, Modifier with VBA
Tagged Citrix, Errors, GP, Microsoft, Microsoft Dynamics, Modifier with VBA, VBA, Windows, Windows Server, Windows Server 2012, XenApp
A client had an odd error with the Cashbook Bank Management module the other day when trying to enter a deposit; the following was printed on the exception report when trying to post the transaction:
I did some digging around and found that the Next Voucher Number field in Payables Management Setup – Options ( ) was blank.
I set a new value in the Next Voucher Number field and the deposit could be posted without problem.
Posted in Cashbook Bank Management, Dynamics, GP, Microsoft
Tagged Cashbook Bank Management, Errors, Financial, GP, Microsoft, Microsoft Dynamics, Payables Management, Purchasing, Setup, Transactions
The final error I ave to post about for now following my scale-out deployment of the Microsoft Dynamics GP 2013 Web Client series is on a problem with the Web Management Console.
After logging into the Web Management Console the following error was displayed:
Unable to access SnapIn config data store. Home SnapIn will not be loaded
Posted in Dynamics, GP, Microsoft, Web Client
Tagged Errors, GP, Microsoft, Microsoft Dynamics, Microsoft Dynamics GP 2013, Microsoft Dynamics GP 2013 SP2, Troubleshooting, Web Client, Web Management Console
As errors with a scale-out deployment of the Microsoft Dynamics GP 2013 Web Client go, the one covered in this post is not one that you are likely to encounter.
When I tried logging into the web client I received an unexpected error and went to the Windows Event Viewer on the Session Central for more details:
System.Data.SqlClient.SqlException (0x80131904): The target principal name is incorrect. Cannot generate SSPI context.
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TdsLogin(SqlLogin rec)
at System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, Boolean withFailover)
at System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString connectionOptions, SqlCredential credential, TimeoutTimer timeout)
at System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(TimeoutTimer timeout, SqlConnectionString connectionOptions, SqlCredential credential, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance)
at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions)
at System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions)
at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions)
at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnectionOptions userOptions)
at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnectionOptions userOptions)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
at System.Data.Linq.SqlClient.SqlConnectionManager.UseConnection(IConnectionUser user)
at System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression query)
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
at Microsoft.Dynamics.GP.Web.Services.Session.Service.SessionCentralBaseHandler.GetServiceSecurityGroups(String serviceName, ILinqDataContextProvider dataContext)
at Microsoft.Dynamics.GP.Web.Services.Session.Service.SessionCentralDatabaseHandler.GetServiceSecurityGroups(String serviceName)
Posted in Dynamics, GP, Microsoft, Web Client
Tagged Errors, GP, Microsoft, Microsoft Dynamics, Microsoft Dynamics GP 2013, Microsoft Dynamics GP 2013 SP2, Troubleshooting, Web Client
I typically don’t post articles directly about my employer, Perfect Image, but today I am going to make a small exception.
We have open a vacancy at the moment for a Junior Dynamics GP Consultant.
This role is based in Newcastle upon Tyne, North East England, and is, when not onsite with clients, office based. Perfect Image have found that having people in the office, rather than working from home, gives junior members of staff opportunities to learn from more senior members of the team.
In this instance the Senior Consultant you would be working with is me; the only Microsoft Most Valuable Professional for Microsoft Dynamics GP in the UK and one of only two in Europe. You could be my very first minion (for an unspecified definition of very first).
If you do a scale-out deployment of the Microsoft Dynamics GP 2013 Web Client you may encounter trust relationship problems if you do not have the SSL certificates correctly installed:
An error occurred during session monitoring 'System.ServiceModel.Security.SecurityNegotiationException: Could not establish trust relationship for the SSL/TLS secure channel with authority 'sc1.domain.azurecurve.co.uk:48650'. ---> System.Net.WebException: The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel. ---> System.Security.AuthenticationException: The remote certificate is invalid according to the validation procedure.
Posted in Dynamics, GP, Microsoft, Web Client
Tagged Errors, GP, Microsoft, Microsoft Dynamics, Microsoft Dynamics GP 2013, Microsoft Dynamics GP 2013 SP2, Self-Signed SSL, SSL, Troubleshooting, Web Client