In the past when I have needed to manually register DLLs they have been C++ or VB ones which are registered using the regsrver command.
A recent project for a client was done using C# which requires the assembly to be registered using a different command. I am posting this here as a reminder to myself next time I need to do this.
When you register the assembly, you may receive a warning message about registering unsigned assemblies using the /codebase switch which is intended only with signed assemblies. If you trust the origin of the assembly then you can safely register the assembly and ignore the warning.
To register the .NET DLL, open a command prompt and type the following (the highlighted section is the name of the assembly being registered):
%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\regasm.exe reportprinter.dll /codebase
To unregister a .NET DLL type the following:
%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\regasm.exe reportprinter.dll /unregister
The highlighted section is the dll being registered or unregistered.
I make a lot of use of virtual machines for both testing and demonstrating Microsoft Dynamics GP. As a company, when I joined, Perfect Image tended to use VMware (I’ll reserve comment, which I realise tells it’s own story), but more recently have started making more use of Microsoft Hyper-V, which is what I also use at home for testing and writing my blog and books.
After installing Hyper-V on my work laptop I created a virtual machine and clicked start. Unfortunately, I received the below error messages:
I did some digging around and found that although Hyper-V was installed, the hypervisor wasn’t running. Fortunately, the laptop I have does support Hyper-V and I only had to do one thing which was to enable the hypervisor by opening an elevated command prompt and type the following command:
bcdedit /set hypervisorlaunchtype auto
Once I had run the command I was able to start the virtual machine without further problem; at least with Hyper-V.
What I found was that with the hypervisor running, I wasn’t able to start a VMware virtual machine. So a second command can be used to disable the hypervisor for those times when I need to use a VMware virtual machine:
bcdedit /set hypervisorlaunchtype off
Hopefully, I’ll be able to complete the transition away from VMWare very soon and stop toggling from one to the other.
Taking a slight diversion from my usual subject matter with this post. I was trying to connect to a clients system via VPN a short while ago when I received error 778:
Error 778: It was not possible to verify the identity of the server
I did a little digging and found that this error actually relates to the username and password being incorrect. I checked our records and found that the password had been reset since the last time I logged on; after entering the new details I was able to log in successfully.
It would be nice if the error message had been a little more descriptive of the actual problem, but at least it was a simple solution.
A recent install of eConnect ran into a small issue; after the installation was complete, the eConnect service wouldn’t start. In the Windows Event Log there were two errors shown:
This probably seems like an obvious one, but when you’re going to install the web client for Microsoft Dynamics GP make sure that any previous installs have had a reboot done.
I had this come up recently when trying to do an install. Earlier that day I had installed a new feature on the server (in this case the Windows Authentication feature of the Internet Information Services IIS role), but not done a reboot as one wasn’t asked for.
However, the web client installation ended prematurely and it was only when I checked the Windows Event Viewer that I found the error relating to the pending reboot.
This was particularly annoying as the premature end was only after I clicked on the Install button after entering all of the required information at the preceding steps.
Based on this error, and when it appeared, from now on I am going to reboot the server I’m installing the web client before starting.
We had a peculiarity the other day when updating a Word template for a client. We added some new fields via Report Writer and then created a new Word Template; when then modifying the Word template the fields usually show in the XML schema, but this time we found they weren’t.
After a couple of fruitless minutes checking the modified report and creating a new version of the Word template without success I started wondering about already open applications. In particular MS Word itself was already running with an unrelated document open.
I closed down all open Word documents and, in Template Maintenance ( ), clicked the Modify button; when the Word template opened the new fields were showing in the XML schema.
This is something I have experienced before without being able to pin down why which caused..shall we say…a certain level of frustration. I’m not sure why having Word open caused the XML schema not to be refreshed when creating a new document, I am pleased that at least I can void the problem by making sure all open instances of Word are closed before starting.
A client recently logged a problem with our Service Desk to report that an Integration Manager integration wasn’t working; when trying to run the integration they received an error message on every line of the integration:
Opening source query...
Establishing source record count...
DOC 1 ERROR: Syntax error (missing operator) in query expression 'UCase(DATE#######) = UCase('' AND [RUN NUMBER] = ')''.
DOC 2 ERROR: Syntax error (missing operator) in query expression 'UCase(DATE#######) = UCase('' AND [RUN NUMBER] = ')''.
DOC 10 ERROR: Syntax error (missing operator) in query expression 'UCase(DATE#######) = UCase('21 January 2015') AND UCase([RUN NUMBER]) = UCase('HP33')'.
DOC 11 ERROR: Syntax error (missing operator) in query expression 'UCase(DATE#######) = UCase('21 January 2015') AND UCase([RUN NUMBER]) = UCase('HP33')'.
ERROR: Max Errors Exceeded at 11, Integration Canceled
ERROR: Integration canceled during document integration.
100 documents were read from the source query.
11 documents were attempted:
0 integrated without warnings.
0 integrated with warnings.
11 failed to integrate.
After doing some debugging of the integration, we identified the problem as being caused by the source column headers; all of which had multiple # at the end.
For example, as you can see in the above error message, DATE was displaying as DATE#######.
We went through the source removing all of the # symbols and were then able to run the integration without receiving more errors.
I had an oddity reported by a client just after an upgrade from Microsoft Dynamics GP 10 to Dynamics GP 2013 R2. After opening Enter/Match Invoice, entering the header information and clicking Auto-Invoice they received the following error:
Microsoft Dynamics GP
You must close the Select Purchase Order Items window before continuing.
I connected to their system and attempted to reproduce the error. My first few attempts failed and everything worked as expected. However, the problem did finally occur and I was able to see the problem happen a few times although it took a few minutes for me to realise the pattern.
The error message appeared when the cursor was in the lines scrolling window; if the cursor was still in a header field the error was not produced.
I have tested this on some of my test systems and the error appears to have been introduced between Dynamics GP 2013 SP2 and Dynamics GP 2013 R2.
The workaround is to make sure the cursor is not within the lines of the scrolling window and this message won’t appear.
Integration Manager is a great tool for getting information into Microsoft DYynamics GP, but it can also be infuriating at times with the error messages it produces when there are problems.
I recently received an error message when trying to integrate some debtors:
Integration: Debtors (ID: 1)
Start Time: 09/10/2014 08:49:37
09/10/2014 08:49:37 Source: IIntegrationEngine_Run, Status Code: 0 Opening source query...
09/10/2014 08:49:38 Source: Microsoft.Dynamics.GP.IntegrationManager.IMProvider, Status Code: 33624151 ERROR: Unable to open source queries because Query 'Debtors' is not found in the database. - ADO Field is nothing.
Unable to open source queries because Query 'Debtors' is not found in the database. - ADO Field is nothing.
ADO Field is nothing.
09/10/2014 08:49:38 Source: FinishIntegration, Status Code: 3 Integration Failed
09/10/2014 08:49:38 Source: FinishIntegration, Status Code: 3 Integration Results
0 documents were read from the source query.
0 documents were attempted:
0 integrated without warnings.
0 integrated with warnings.
0 failed to integrate.
Finish Time: 09/10/2014 08:49:38
Source Total: 0
Successfully Integrated: 0
Integrated With Warning: 0
Completion Status: Incomplete
Integration Status: No Documents Succeeded
While trying to configure the legacy connector in Management Reporter 2012 recently I received an error message while the entered settings were being validated:
Validation Messages - Database configuration: The master password could not be validated against the password policy