#Dexterity Remember Multicurrency when Customizing Transaction windows

David Meego - Click for blog homepageI was asked recently to assist with some custom code that had been added to a transaction window in Microsoft Dynamics GP. The customization would work for one user, but not for a different user.

The customization was created using GP Power ToolsDeveloper Tools module, but similar code could have been created using Dexterity, Visual Studio Tools or even VBA (Visual Basic for Applications).

Continue reading

#GPPT Defaulting Customer ID and Vendor ID fields for new records

David Meego - Click for blog homepageThis week I received two similar requests and so I thought I would publish a couple of sample customizations which achieve the desired goals.

If you want to have a standard templates when adding Customer IDs and Vendor IDs, these two samples will provide that functionality with just a few triggers using the GP Power Tools – Developer Tools module.

Continue reading

#VBA Solving VBA (Visual Basic for Applications) Compatibility Issues

David Meego - Click for blog homepageIn recent times many Microsoft Dynamics GP sites have been having issues with VBA (Visual Basic for Applications). Especially with Microsoft Office Updates breaking functionality and incompatibilities with later Windows Server releases.

There have been compatibility issues reported with sending emails via Outlook and more recently issues with VBA on Windows Server 2019.

Continue reading

#Dexterity command Activity_GetBackgroundStatus() kills background Timed Processes

David Meego - Click for blog homepageYou might have seen yesterday’s article: #GPPT Processes are currently being run Dialog when logging into Microsoft Dynamics GP, which discusses a problem caused by a clash of a GP Power Tools build 28 feature and FastPath SSO (Single Sign On).

[Edit] FastPath have already released an update which fixes the issue. Thanks for the quick turn around.

The root cause of this issue is the undocumented side effect of using the Dexterity Activity_GetBackgroundStatus() command. Read on for the full explanation.

Continue reading

#GPPT Free Automatic Lookup Example

David Meego - Click for blog homepageWith the completion of development and release of Build 28 of GP Power Tools, now is the time to publish more examples for the Developer Tools module. Please see the GP Power Tools Samples page for additional examples that you can download and use for free.

This example is simple and can speed up data entry in Microsoft Dynamics GP. It does require GP Power Tools (GPPT) installed and the Developer Tools module registered. If you don’t have GP Power Tools installed or the Developer Tools module registered, feel free to install and start a free 30 day trial period, so you can test out this and the many other samples.

Continue reading

#GPPT Free SQL Search across Multiple Fields Lookup Example

David Meego - Click for blog homepageWith the completion of development and release of Build 28 of GP Power Tools, there is now time to publish some of the great examples for the Developer Tools module. Please see the GP Power Tools Samples page for additional examples that you can download and use for free.

This example is amazing and every site with Microsoft Dynamics GP will want it installed. It does require the current Build 28.1 or later installed and the Developer Tools module of GP Power Tools (GPPT) registered. If you don’t have GP Power Tools installed or the Developer Tools module registered, feel free to install and start a free 30 day trial period, so you can test out this and the many other samples.

Continue reading

#GPPT Automating or Customizing the Report Destination Window

David Meego - Click for blog homepageAs promised, following on from the previous article: #Dexterity Automating or Customizing the Report Destination Window, this article shows how you can achieve the automating of the Report Destination dialogs using GP Power Tools – Development Tools module, including the dialogs in the Dexterity Runtime Engine.

Continue reading

#Dexterity Automating or Customizing the Report Destination Window

David Meego - Click for blog homepageBack in 2009, I posted about Automating or Customizing the Report Destination Window. In that article I discussed that there is more than one version of the Report Destination dialog and that additional methods would be required to control the version that is in the Dexterity Runtime Engine.

This article gets into more detail showing how the control the different dialogs with Dexterity.

Continue reading

Solved: Visual Studio Tools Addins fail after importing packages

David Meego - Click for blog homepageI have been fairly quiet recently on the blog and forums as I have been concentrating on developing the next build of GP Power Tools. All I can say is that it is awesome and you will love it. I have a “Sneak Peak” article coming soon.

While working on the development and testing process, I had some unusual behaviour from my .Net Visual Studio Tools Addins and spent an entire day troubleshooting the issue so I could identify the cause and work out a solution. Read on for the gory details….

Continue reading

#GPPT Converting .Net Execute Scripts from C# to VB.Net

David Meego - Click for blog homepageFollowing on from the previous articles: #GPPT Speeding Up Referencing Modifier Added Fields and staying Web Client compatible and #GPPT Referencing Modifier Added Fields in the Web Client using .Net Execute, this article looks how we can use VB.Net rather than C# as the scripting language in the .Net Execute scripts.

Both VB.Net and C# use the .Net Common Language Runtime (CLR) and it is usually possible to write exactly the same code in either language. So we will duplicate our existing C# scripts and convert them to VB.Net, then we will duplicate the triggers to call the new scripts.

Continue reading

#GPPT Speeding Up Referencing Modifier Added Fields and staying Web Client compatible

David Meego - Click for blog homepageUsing the method discussed in the article #GPPT Referencing Modifier Added Fields in the Web Client using .Net Execute it was possible able to get past some of the limitations mentioned in the article Dynamics.Application Object not available on Web Client.

However, running the .Net (C# or VB.Net) code is slightly slower than running the Dexterity (sanScript) code. This article explains a method of how to improve Desktop Client performance while staying compatible with the Web Client.

Continue reading

Run Batch Files and Powershell Scripts with Administrator Permissions easily

David Meego - Click for blog homepageHere is something a little different for you. I have two external drives connected to my Microsoft Surface Book 2 15″ computer. One is a 256GB micro SD card hidden in a BaseQi Ninja Stealth Drive loaded into the SD Card slot and the other is a USB 3.0 connected Western Digital 2TB WD Elements Portable. Both of these drives have BitLocker enabled and have the password remembered on this machine.

Every now and then, the drives fail to initialize correctly and in turn fail to unlock with BitLocker. Even though I can see the drives and their total and used capacity, I cannot access them.

Continue reading

#GPPT Referencing Modifier Added Fields in the Web Client using .Net Execute

David Meego - Click for blog homepageYou probably saw the recent article: Dynamics.Application Object not available on Web Client where I described an issue that was recently discovered and meant that the “Continuum” based triggers and scripts used to reference Modifier Added Fields in GP Power Tools – Developer Tools module were unable to work in the Web Client.

I mentioned a workaround that would function with the current GP Power Tools code when running on the Web Client (and Desktop Client). This article will show how you can use scripts in the .Net Execute Setup window to reference Modifier Added Fields.

Continue reading

Dynamics.Application Object not available on Web Client

David Meego - Click for blog homepageThis article comes about because we have identified a feature of GP Power Tools that does not work as expected on the Web Client. GP Power Tools has the ability to run scripts and register triggers against Modifier added fields and Modal Dialogs. These features uses the Dynamics.Application object and in particular a suite of functionality historically known as “Continuum”.

We can now confirm that the Dynamics.Application object is not available at all when running Microsoft Dynamics GP in the Web Client and so any functionality reliant on this object will fail to work.

Continue reading

#GPPT Disabling Manual Entry of SOP Number Field

David Meego - Click for blog homepageRecently on the GPUG Open Forum, Jeff Roe asked if it was possible to disable manual entry by users into the SOP Number field on the Sales Transaction Entry (SOP_Entry) window.

I suggested using GP Power Tools – Developer Tools module to create a quick trigger to lock or disable the field. As Jeff is already a GP Power Tools user and has the Developer Tools module registered, I created the required code and posted it on the forum thread. Here is a slightly more detailed version of the forum response.

Continue reading

#GPPT Reporting for Minnesota’s Wage Theft Law

David Meego - Click for blog homepageThis article is comes about thanks to my friend, Melissa Brown, who approached me for a solution to a reporting requirement she had for a customer due to new legislation brought in by the US state of Minnesota.

The requirement was not possible to solve with the Dynamics Report Writer alone as it involved an array in a table which prevented a static relationship from working to retrieve the data needed.

Continue reading

#GPPT Dexterity Samples for Datatype Conversions

David Meego - Click for blog homepageThe previous article: #GPPT Parsing Returned SQL Data into Rows and Columns had some examples of how to convert string representations of various datatypes back to their native datatypes.

With GP Power Tools, it is a common technique to store additional data in the DUOS (Dynamic User Object Store) table (SY90000). However, the DUOS uses a 132 character string field to store the data and so datatype conversions in both directions will be needed.

Continue reading

#GPPT Parsing Returned SQL Data into Rows and Columns

David Meego - Click for blog homepageWhen writing customizations using GP Power Tools as your development tool, there may be times where you need to return a SQL query as a data set to your Trigger Setup script or Runtime Execute Setup script.

It is possible to display a data set to the end user in a SQL Results window using the MBS_SQL_Results helper function. If you have “Goto” actions defined, the MBS_SQL_Results_Goto helper function will display the data and enable the SQL Goto functionality.

But what if we don’t want the data displayed to the user and just need to use the data in your code.

Continue reading

#GPPT Unknown Identifier Error when working against Modified windows

David Meego - Click for blog homepageDexterity is the native language of Microsoft Dynamics GP. It is an amazing development environment that is still the best and most powerful tool to integrate with the Dynamics GP User Interface. While Dexterity was originally developed in the late 1980’s, it has been continuously developed and extended with more and more features and functionality which allow it to handle everything needed for modern business applications AND still be completely backwards compatible to its original release.

However, Dexterity does have some limitations: It is a little bit more complex if you need to integrate with other third party dictionaries and it cannot work with modified windows. GP Power Tools extends Dexterity’s scripting capabilities to make it possible to easily work with multiple dictionaries and with modified windows.

Continue reading