Posts

Showing posts from August, 2010

Enabling DEXSQL logs with Support Debugging Tool

Image
It must be the Support Debugging Tool week. After the fabulous security article by David Musgrave explaining the inner works of the Resource Information and the Security Information windows and how they aid in finding those pesky security tasks and roles, I thought it would be a good idea to pickup on an old subject that often gets lost in the archives of support: DEXSQL logs. It still surprises me how many questions are posted on the various community forums asking for guidance on troubleshooting errors in stored procedures, table access errors, and even database connectivity errors. Likewise, it's often forgotten that the main purpose of the DEXSQL.LOG is to capture all interactions between the Microsoft Dynamics GP client and the Microsoft SQL Server database. These interactions can be tailored to the actual ODBC messaging and/or the SQL statements that are executed against the database. KB article 850996 explains how to setup a DEXSQL.LOG the old fashioned way, this is by

Using T-SQL and recursive CTE to find related sales documents

Image
In Sales Order Processing, master numbers are used to track the flow of documents throughout the sales process. Documents with the same master number as the current document will be listed in the Sales Document Detail Entry window. A master number is a single number assigned to a series of documents that is used to track related documents. For example, when you issue a quote, then transfer it to an order, and then an invoice, each document will be assigned the same master number. Each document also maintains its own document number. However, I have seen cases where the master number becomes damaged or out of sequence causing SOP documents to no longer follow a chain. The case was also recently reported in the Partner forum and the partner wanted to understand how they could find what SOP documents were related to each other. Fortunately enough, Microsoft Dynamics GP also tracks the original document number (ORIGNUMB) and document type (ORIGTYPE) from which a SOP document originated. Th

Top 10 Microsoft Dynamics GP freebies

Image
With the amount of money customers pay for software and implementations nowadays, it only makes sense that they would want to maximize their investment. What better than free (as in no strings attached!) software that works as intended. Because of this, I have set out to compile a list of the top 10 free add-ons -- in no particular order -- that I would drop into ANY Microsoft Dynamics GP implementation, no questions asked! 1) Support Debugging Tool . Ok, so I am biased! I have talked about this product in two Microsoft conferences and to outright show how biased I am, I am also personal friends with the product's author, David Musgrave. SDT is a collection of some of the most powerful administrative tools for Microsoft Dynamics GP currently available from anywhere, with rich features like Resource Information, Security Profiler, Dictionary Control, SQL Execute, Runtime Execute, XML Import/Export and the even more powerful Advance Debugger mode. So, where can you download this prod

The Dynamics GP Blogster now has a new look

Image
A couple things I have learned over the years from blogging are a) you want to always bring interesting, high quality content that your audience will want to read, and b) you need to spruce up your site very often. The latter is especially true as the same "look and feel" or site layout if you will becomes tiresome and boring to readers. With that said, The Dynamics GP Blogsters is undergoing some new changes and like the sign would read, "Pardon our construction!". In the mean time you can continue accessing the same great content and enjoying the progress of the layout as it reaches completion. The ultimate goal is your satisfaction. Until next post! MG.- Mariano Gomez, MVP Maximum Global Business, LLC http://www.maximumglobalbusiness.com/

Jivtesh Singh disects the Microsoft Dynamics GP Community

Image
If by now you are not familiar with fellow blogger Jivtesh Singh , it's time for you to go take a look at his work. Jivtesh has set out to disect the Microsoft Dynamics GP community by the numbers in his latest article Dynamics GP Experts . In addition, he has worked tirelessly in putting together what I have denominated The Mother of All Blogs . Yes! Jivtesh is the author and matermind behind the now popular GPWindow (see my previous article GPWindow: The next best thing after the Microsoft Dynamics GP 2010 Cookbook ). In his latest iteration of the popular site, Jivtesh has incorporated searches to all the Microsoft Dynamics GP community forums currently available. If at first you complained about not being able to search every site for what you are looking for, there are virtually no excuses now for not being able to find a specific topic across the spectrum of resources across the community. Jivtesh already did his part, now you do yours! Check out GPWindow , do a few searches

Using SQL Server CLR stored procedures to integrate Microsoft Dynamics GP and Microsoft CRM: Configuring SQL Server and creating table triggers

Image
In my previous article I outlined some of the steps and methods needed on the Visual Studio side to create an integration to Microsoft CRM. In particular, the article showed you how to create the SQL CLR methods and how these methods interact with the Microsoft CRM Web services to create or update an item in the Product entity. Following along, once you have created the assemblies (integration assembly and XML serialization assembly), you must proceed to install these in the Framework directory -- the assemblies were created targeting the .NET Framework 3.5, so they were installed there -- and also register these in the Global Assembly Cache (GAC) under the %windir%\assembly folder. Once the assemblies are GAC'ed you can now begin the process of registering these with Microsoft SQL Server 2005, 2008, or 2008 R2. To begin registering the assemblies with SQL Server, we must first define an Asymmetric Key from the signed assembly created in our previous project. USE master; GO CREATE

Microsoft Dynamics GP 10.0 Service Pack 5 now available

Image
The long awaited Microsoft Dynamcis GP 10.0 Service Pack 5 is fresh out of the oven. The service pack is available for English only installations at this time and can be downloaded from: PartnerSource Service Pack, Hotfix, and Compliance Update Patch Releases for Microsoft Dynamics GP 10.0 CustomerSource Service Pack, Hotfix, and Compliance Update Patch Releases for Microsoft Dynamics GP 10.0 One big note of caution: after applying Service Pack 5 for Microsoft Dynamics GP 10.0, you will not be able to upgrade to Microsoft Dynamics GP 2010 until the release of Service Pack 1 for the latter. Related Articles: Microsoft Dynamics GP 10.0 Service Pack 5 @ Developing for Dynamics GP Until next post! MG.- Mariano Gomez, MVP Maximum Global Business, LLC http://www.maximumglobalbusiness.com/

Using SQL CLR stored procedures to integrate Microsoft Dynamics GP and Microsoft CRM: Creating a CLR assembly and working with CRM web methods

Image
Before we get started, there are a few rules: a) I assume you have good working knowledge of both Microsoft Dynamics GP and Microsoft CRM and that you know enough about the Item Master in GP and the Product entity in CRM, b) you are familiar with Microsoft Visual Studio and can create class libraries and create Web references, c) you have done some coding with either VB.NET and/or C#, and d) you will not ask me if I have the same code snippets in VB.NET. As I have said in multiple occassions -- no offense to VB developers -- when I work on commercial grade code I will choose C# over VB.NET any day of the week. A bit of a reminder of the objective of today's code: a) we will create our CLR methods that will serve as bridge to the Microsoft CRM web methods. The resulting assembly will be registered on SQL Server with the CLR methods exposed as stored procedures that can be called from a trigger, and b) we will create the code that will allow us to establish a connection to Microsoft

Learning Resources page updated to include tutorials

Image
In the past, I have published a series of tutorial articles that now have been incorporated as part of the Learning Resources page. These tutorials have been visited more than 20 thousand times and have earned great comments from you the Community. The following 3 tutorials have been added. This week, free Visual Basic for Applications workshop with the Dynamics GP Blogster Getting started with Visual Studio Tools for Microsoft Dynamics GP -- Adventures of a Microsoft Dexterity developer Using SQL CLR stored procedures to integrate Microsoft Dynamics GP and Microsoft CRM Please visit the Learning Resources page to find materials from past conferences and webinars to help you ramp up on some of the most intriguing topics in the Microsoft Dynamics GP world. Until next post! MG.- Mariano Gomez, MVP Maximum Global Business, LLC http://www.maximumglobalbusiness.com/

Using SQL CLR stored procedures to integrate Microsoft Dynamics GP and Microsoft CRM

Image
I have been involved for over the past 6 months with an extensive project requiring complex integrations between Microsoft Dynamics GP 10.0, Microsoft CRM 4.0 and other custom operational systems. In the process of designing and implementing these integrations the client requested a very easy to use interface that could be maintained without having to hire an army of developers or even specialized resources. The mission: insert/update customer addresses and inventory items from Microsoft Dynamics GP into Microsoft CRM's Product and Customer Address entities. The client also requested the integration be done using the Microsoft CRM web services in order to ensure upgrade support. Background Beginning with SQL Server 2005, the components required to develop basic CLR database objects are installed with SQL Server. CLR integration functionality is exposed in an assembly called system.data.dll , which is part of the .NET Framework. This assembly can be found in the Global Assembly Cach

Microsoft Dynamics GP 2010 Connect feature and IE popups

Image
Since the days of beta testing Microsoft Dynamics GP 2010, I had been researching an issue with the Connect feature where, each time the content banner rotates, an Internet Explorer window would pop up showing the same content displayed by the Connect web part. One night, I left my laptop on with Microsoft Dynamics GP 2010 opened and woke up the next morning to the tune of 100+ individual Internet Explorer windows and a very slow, almost crawling, machine. The pop-ups seemed to intensify when the GP 2010 main desktop becomes unfocused. The following is a sample of the URL that would show in IE address bar for a pop-up window (my voice account has been crossed out for security purposes). https://online.dynamics.com/lus/?se=popup&product=GPRoleCenter&version=11.00.0218.000&roleid=4050&voiceaccount=XXXXXX&country=US&locale=EN-US&company=Fabrikam%2c+Inc.&role=IT+Operations+Manager Interestingly enough, the URL contains a parameter ( se ) which value happens

All About Dexterity OLE Container - Follow Up

Image
Mr. Steve Endow over at Dynamics GP Land managed to unearth my All about the Dexterity OLE Container article in response to a question he fielded from a user who no longer used GP, but wanted to know if they could extract the content embedded in the note files. In my 2008 article I explained the intrinsic details regarding how OLE notes where created and stored in GP and promised a follow up with a way to automate or access these files externally from GP. During the past two years I have never stopped researching (on and off of course) how these files could possibly be accessed. At the end of the day, it comes down to identifying the actual storage compression algorithm used. As part of this research, I tested a few tools including Corel's WinZip tool, which is often considered a very good tool for identifying obscure storage compression formats. However, I had no luck with WinZip. I also tried (successfully I may add) creating my own OLE container application, but failed to be

DexSense: IntelliSense for Microsoft Dexterity

Image
In past weeks I posted an article explaining how Microsoft Dexterity could benefit from IntelliSense technology and enter a request for the community to vote on the Microsoft Connect product suggestion 570553 so the feature could be considered by Microsoft for introduction into a future release of Microsoft Dexterity. You can find the link to those articles, as follows: Dexterity and IntelliSense Dexterity and IntelliSense: It's time to vote! A couple weeks later, the answer came from the Community after Tim Gordon , a software developer and consultant with Alpine Limited saw the post referencing my articles over at Developing for Dynamics GP . Tim contacted David Musgrave, who then copied me after the first couple exchanges they had. Tim had been working on a very rudimentary prototype of IntelliSense for Dexterity. His Visual Studio IntelliSense application sits in the Windows system tray "listening" for a Dexterity process. When Dexterity becomes available, the appl