A bit late to the party I am, but I now have a complete help system to accompany my Dexterity customization for GP. I'd like to document the process for anyone else who might need to follow this course.
Of course there are references around the web for this. I will try to include those where relevant. My approach here is to outline the basics you will need to create your help system.
The Microsoft Dynamics GP Integration Guide for Dexterity (Help > Online Manuals) contains the seeds of this. In typical brief (to being almost useless) style there is some important information in that manual. Hopefully this post will make sense of that.
There are two components you will need for this venture:
1. Microsoft HTML Help Workshop. This is currently noted at version 1.4. This tool compiles your help files into a CHM file that you will distribute with your Dexterity CNK file.
2. A good HTML editor. Your help files need to be in HTML format. I'm agnostic on what editor you choose. Just don't think about using Word for this. I don't know which editor is best. I am currently using a product called Macromedia HomeSite+, but there are many you can choose from. If you are an HTML wiz you can just use Notepad (and you don't need me to tell you that.)
An important connecting dot in this exists in your Dexterity customization. Every object you create, and this may be true for every Dexterity object, has a property called HelpContextID. This is a unique number assigned by Dexterity to every object that is passed to the help system. In essence this delivers the Context Sensitive help people expect in applications today.
My guess at what happens is when the user hits F1 Dexterity evaluates the context of this event and, if it's your screen or a field thereon, navigates from the HelpContextID to the pointer in the CHM file that gets them to the relevant help text.
Of course if you have customized an existing GP window (i.e. an Alternate Window) then you have fewer options. GP will always launch it's own help files by default. But a trick I learned from the documentation is to use Local fields on these windows, not Global fields, so that you get a unique HelpContextID. Lesson learned the hard way.
In a future post I will go over the building blocks and essential elements. For now read the Dex GP IG and download the components you will use. The best is yet to come!
I'm a former Microsoft Dynamics consultant specializing in SQL Server integrations, reports and customizations.
Friday, January 16, 2015
Friday, January 9, 2015
Scribe problem installing CRM 5.5 adapter
A few hoops must be jumped through to get the new CRM adapters to install.
First of all if you try to download and run the CRM 5.5 adapter you might receive an error about Windows Identity Foundation. The workaround here is not to run the MSP directly but copy it into your Scribe Adapter folder where the Scribe installation package is unzipped. Then run the Scribe Setup installer and install from there.
The next problem you may encounter is an error during the installation of the adapter. A window may pop up behind the installation progress window that shows the following:
"RnScript Database Error - Error Number: 126 - Description: error executing SQL command ending on line #19."
If you click Next you may see
"Error Number: 65408 - Description: [23000] Violation of PRIMARY KEY constraint 'PK__BRIDGES__409E411B164452B1'. Cannot insert duplicate key in object 'SCRIBE.BRIDGES'. The duplicate key value is (DEFAULT, Microsoft Dynamics CRM Publisher, *). The statement has been terminated."
I believe I was using an earlier adapter previous to 5.5 on Insight 7.62. the problem was the value indicated in the "duplicate key value" parens is already in the Scribe.Bridges table. In SQL delete that record and restart the install and it should complete just fine.
For the record to reinstall an adapter I remove the adapter from Control Panel > Programs and Features first then start the install again. That is the cleanest way.
First of all if you try to download and run the CRM 5.5 adapter you might receive an error about Windows Identity Foundation. The workaround here is not to run the MSP directly but copy it into your Scribe Adapter folder where the Scribe installation package is unzipped. Then run the Scribe Setup installer and install from there.
The next problem you may encounter is an error during the installation of the adapter. A window may pop up behind the installation progress window that shows the following:
"RnScript Database Error - Error Number: 126 - Description: error executing SQL command ending on line #19."
If you click Next you may see
"Error Number: 65408 - Description: [23000] Violation of PRIMARY KEY constraint 'PK__BRIDGES__409E411B164452B1'. Cannot insert duplicate key in object 'SCRIBE.BRIDGES'. The duplicate key value is (DEFAULT, Microsoft Dynamics CRM Publisher, *). The statement has been terminated."
I believe I was using an earlier adapter previous to 5.5 on Insight 7.62. the problem was the value indicated in the "duplicate key value" parens is already in the Scribe.Bridges table. In SQL delete that record and restart the install and it should complete just fine.
For the record to reinstall an adapter I remove the adapter from Control Panel > Programs and Features first then start the install again. That is the cleanest way.
Thursday, January 8, 2015
If you administer a SQL Server you may use the Maintenance
Plan for backup and optimization tasks.
If you do this you may not be aware there are logs created that need to
be groomed.
When you create an MP there is a little icon in
the top that sets the log file settings.
This icon opens the Reporting and Logging window below.
As part of your MP you want to add a Maintenance Cleanup Task that grooms these files.
Make sure the above folder points to the same place the MP Logging report folder is set to.
Monday, January 5, 2015
Removing an Alternate window from Dexterity
If you ever customize a GP window in Dexterity and want to remove that customization and revert to the default window look at Dave Musgrave's blog post.
Friday, January 2, 2015
SQL Reporting Services Subscriptions with errors
I wrote previously about a problem where if you don't use the proper case on a file output for an SSRS subscription report you receive an error in the subscription but the report works fine when you run it.
There's another way this can happen when an email address that the report is distributed to is rejected by the email server. The report renders fine when you run it manually, and the SSRS execution log shows no errors.
The trick is to review the ReportServerService log in the SSRS data folder on the server. It will show a "mail relay" error, or something of that sort. This means the report is generating fine but is being rejected by the mail server. The error might look like this:
emailextension!WindowsService_23!b74!01/02/2015-09:59:42:: e ERROR: Error sending email. System.Runtime.InteropServices.COMException (0x8004020F): The server rejected one or more recipient addresses. The server response was: 550 5.7.1 Unable to relay
at ReportingServicesCDOInterop.MessageClass.Send()
at Microsoft.ReportingServices.EmailDeliveryProvider.EmailProvider.Deliver(Notification notification)
notification!WindowsService_23!b74!01/02/2015-09:59:42:: e ERROR: Error occured processing subscription 499699f1-25ac-4067-9c89-27265e93d964: The e-mail address of one or more recipients is not valid.
The moral of the story is to check that ReportServerService log when you get errors in a report subscription for a report that runs fine otherwise.
There's another way this can happen when an email address that the report is distributed to is rejected by the email server. The report renders fine when you run it manually, and the SSRS execution log shows no errors.
The trick is to review the ReportServerService log in the SSRS data folder on the server. It will show a "mail relay" error, or something of that sort. This means the report is generating fine but is being rejected by the mail server. The error might look like this:
emailextension!WindowsService_23!b74!01/02/2015-09:59:42:: e ERROR: Error sending email. System.Runtime.InteropServices.COMException (0x8004020F): The server rejected one or more recipient addresses. The server response was: 550 5.7.1 Unable to relay
at ReportingServicesCDOInterop.MessageClass.Send()
at Microsoft.ReportingServices.EmailDeliveryProvider.EmailProvider.Deliver(Notification notification)
notification!WindowsService_23!b74!01/02/2015-09:59:42:: e ERROR: Error occured processing subscription 499699f1-25ac-4067-9c89-27265e93d964: The e-mail address of one or more recipients is not valid.
The moral of the story is to check that ReportServerService log when you get errors in a report subscription for a report that runs fine otherwise.
Subscribe to:
Comments (Atom)
