Internationalizing a ClassicPress plugin: Which localization functions to use?
Oct09

Internationalizing a ClassicPress plugin: Which localization functions to use?

This post is part of the sub-series on Internationalizing a ClassicPress plugin which is part of the Internationalizing a ClassicPress plugin series. In the previous post, of this series, I explained what functions were available for use in internationalizing a plugin, but there is something you need to consider when deciding which one to use. With security at the forefront, it is important to… Continue Reading Ian...

Read More
MDGP “October 2019” Release Feature of the Day: User Approval Workflow
Oct09

MDGP “October 2019” Release Feature of the Day: User Approval Workflow

The Inside Microsoft Dynamics GP blog has started a series Feature of the Day posts for Microsoft Dynamics GP “October 2019” Release on which I am following and adding commentary. The index for this series of posts is . The first Feature of the Day is a new User Approval workflow. Maintained with the rest of the workflows in Workflow Maintenance (Administration area page » Setup » Company »…...

Read More
Internationalizing a ClassicPress plugin: Localization functions
Oct08

Internationalizing a ClassicPress plugin: Localization functions

This post is part of the sub-series on Internationalizing a ClassicPress plugin which is part of the Internationalizing a ClassicPress plugin series. There is a number of functions available in ClassicPress which can be used in localising code: __() – this function takes a string and returns the translation if it exists. _e() – this function takes a string and echos the translation if it… Continue Reading Ian...

Read More
MDGP “October 2019” Release Feature of the Day: Series Index
Oct08

MDGP “October 2019” Release Feature of the Day: Series Index

The Inside Microsoft Dynamics GP blog has started a series Feature of the Day posts for Microsoft Dynamics GP “October 2019” Release on which I am following and adding commentary. This post is the series index which will automatically update as each post goes live (if you are reading the original post). There are four key areas in which ehancements can be grouped: Top Feature Requests by our… Continue Reading Ian...

Read More
Internationalizing a ClassicPress plugin: What is a Text Domain and how is it specified?
Oct07

Internationalizing a ClassicPress plugin: What is a Text Domain and how is it specified?

This post is part of the sub-series on Internationalizing a ClassicPress plugin which is part of the Internationalizing a ClassicPress plugin series. A text domain is a unique identifier which makes sure ClassicPress can distinguish between all loaded translations and apply the correct one. The text domain should be a unique string, not used by any other translation (which would include… Continue Reading Ian Grieve’s...

Read More
Microsoft Dynamics GP “October 2019” Release now available for download
Oct07

Microsoft Dynamics GP “October 2019” Release now available for download

The download for the Microsoft Dynamics GP “October 2019” Release is now available for download from CustomerSource as either a full install or service pack release to upgrade Microsoft Dynamics GP 2018: Full Download Service Pack This is the first release of Microsoft Dynamics GP on the Modern Lifecycle. There is a series of feature of the day posts being released by the Inside Microsoft… Continue Reading Ian...

Read More
Microsoft Dynamics GP Naming And Modern Lifecycle
Oct07

Microsoft Dynamics GP Naming And Modern Lifecycle

With the release of Microsoft Dynamics GP in October 2019, it is moving to the Modern Lifecycle. This means the new version won’t be called Microsoft Dynamics GP 2019 as thought, but will instead be the Microsoft Dynamics GP “October 2019” Release. The Modern Policy offers continuous support and servicing, including bug fixes, new features and the latest tax updates. Customers can stay current… Continue Reading...

Read More
Internationalizing a ClassicPress plugin: How does internationalization work?
Oct06

Internationalizing a ClassicPress plugin: How does internationalization work?

This post is part of the sub-series on Translating a ClassicPress plugin which is part of the Translating a ClassicPress plugin series. ClassicPress uses the gettext libraries and tools for internationalization; gettext is an old and respectable piece of software which is widely used in the world of open-source. The basics of how it works are: Developers wrap translatable strings in special… Continue Reading Ian Grieve’s...

Read More
Internationalizing a ClassicPress plugin: Series Index
Oct05

Internationalizing a ClassicPress plugin: Series Index

This series is part of a wider series on Internationalizing a ClassicPress plugin. In the first posts on the parent series, I explained what internationalization and localization are and, in this sub-series, I am going to explain the process of internationalizing a plugin developed for ClassicPress. Translating a ClassicPress plugin Translating a ClassicPress plugin What is… Continue Reading Ian Grieve’s Article on their...

Read More
Translating a ClassicPress plugin: When should a plugin be internationalized?
Oct04

Translating a ClassicPress plugin: When should a plugin be internationalized?

This series if a is part of the Translating a ClassicPress plugin series. In the last post I discussed why internationalization was important, but the follow on from this is when should a plugin be internationalized. When developing a plugin, it is tempting to work on the functionality first and then go back to internationize the strings afterwards. When I started developing plugins, none of… Continue Reading Ian Grieve’s...

Read More
Translating a ClassicPress plugin: Why is Internationalization and Localization important?
Oct03

Translating a ClassicPress plugin: Why is Internationalization and Localization important?

This post is part of the sub-series on Translating a ClassicPress plugin which is part of the Translating a ClassicPress plugin series. ClassicPress is already used in many different countries where English is not the main language; and even where it is, there can be variations in the spelling of words. ClassicPress itself is internationalized and can be localized. Plugins and themes developed… Continue Reading Ian...

Read More
Translating a ClassicPress plugin: What is Internationalization and Localization?
Oct02

Translating a ClassicPress plugin: What is Internationalization and Localization?

This post is part of the sub-series on Translating a ClassicPress plugin which is part of the Translating a ClassicPress plugin series. Internationalization (often abbreviated as i18n as there are 18 letters between the letters i and n) is the process of developing a plugin so it can easily be translated into other languages. Localization (often abbreviated as l10n as there are 10 letters… Continue Reading Ian Grieve’s...

Read More
Translating a ClassicPress plugin: Series Index
Oct01

Translating a ClassicPress plugin: Series Index

I started using WordPress when I launched this blog back in 2011 and a couple of years later started writing plugins to add missing functionality. At the end of last year I switched over to ClassicPress, a hard-fork of WordPress. As part of my transition to ClassicPress I created new versions of my plugins which added new functionality and improved security. I had already done some work to… Continue Reading Ian Grieve’s...

Read More
Balsamiq Mockups 3: Conclusion
Sep24

Balsamiq Mockups 3: Conclusion

This post is part of the series on Balsamiq Mockups 3. As I am sure is apparent, I like Balsamiq Mockups and have used it quite a few times now to design screens for projects. It is very easy to use and allows for rapid creation of screen mockups which you can design while talking to a client. I find it useful for designing the screen as we talk about options and how things might look. Click… Continue Reading Ian Grieve’s...

Read More
Balsamiq Mockups 3: Creating a mockup
Sep23

Balsamiq Mockups 3: Creating a mockup

This post is part of the series on Balsamiq Mockups 3. Balsamiq is a simple program to use for creating mockups. The available objects are available along the top of the screen; you simply drag-and-drop the object where you want it on the page: The mockup shown above only took me a couple of minutes to create. Within a project you can create several mockups which are grouped together within… Continue Reading Ian Grieve’s...

Read More
Balsamiq Mockups 3: Install
Sep20

Balsamiq Mockups 3: Install

This post is part of the series on Balsamiq Mockups 3. Once you have downloaded Balsamic Mockups 3, launch the file and click the Install button: Once the installation is finished, leave the Run Balsamiq Mockups 3.exe, click Finish: Balsamiq Mockups is built using Adobe AIRm so on first run of the client you will be prompted to install it; click I Agree Balsamiq will then launch and show a… Continue Reading Ian Grieve’s...

Read More
Balsamiq Mockups 3: Download
Sep19

Balsamiq Mockups 3: Download

This post is part of the series on Balsamiq Mockups 3. The desktop version of Balsamiq, Balsamiq Mockups 3, can be easily downloaded and used under a 30 day free trial so you can make sure you’ll be able to use it. After navigating the the link, click the large blue Download Mockups 3 button: On the popup End User License Agreement box, click I Agree: Click save, save as or open/run to… Continue Reading Ian Grieve’s...

Read More
Balsamiq Mockups 3: Licensing
Sep18

Balsamiq Mockups 3: Licensing

This post is part of the series on Balsamiq Mockups 3. Mockups 3 for Desktop is a one time purchase and there are no maintenance costs for the license; in addition, licenses are tied to humans and not a particular machine so you can work on it on a desktop and laptop with the same license. A single user license currently costs $89.99, but there are volume licenses available with discounts… Continue Reading Ian Grieve’s...

Read More
Balsamiq Mockups 3: What is Balsamiq Mockups 3?
Sep17

Balsamiq Mockups 3: What is Balsamiq Mockups 3?

This post is part of the series on Balsamiq Mockups 3. Balsamiq Wireframes is a rapid low-fidelity UI wireframing tool which reproduces the experience of sketching on a notepad or whiteboard, but using a computer. It aims to force you to focus on structure and content early in the design process, avoiding lengthy discussions about colors and details which should come later. Balsamiq have a

Read More
Balsamiq Mockups 3: Series Index
Sep16

Balsamiq Mockups 3: Series Index

I’ve posted about a number of useful applications in the past (a href=’https://www.azurecurve.co.uk/2019/04/installing-filezilla-client-series-index/’>FileZilla, Windows 10 Calculator Replacement and Notepad++ as examples) and will post more in future. The subject of this small series, is Balsamiq Mockups. Over the next few posts, I’ll take a look at what it is and how to install and use it. <table...

Read More
Workflow in progress have been found in GP. These need to be processed before upgrading.
Sep13

Workflow in progress have been found in GP. These need to be processed before upgrading.

A colleague was recently performing an upgrade for a client to Microsoft Dynamics GP 2018 R2; this client had previously been a user of the old Dynamics Workflow module (now replaced with Workflow 2.0). They hadn’t used it for a while, but it had never been switched off resulted in the following message being displayed: Microsoft Dynamics GP Utilities Workflows in progress have been found in… Continue Reading Ian...

Read More
Web Client images not loading
Sep12

Web Client images not loading

It’s been quite a while since I did much with the Microsoft Dynamics GP web client; not by choice, but as a consultant my time is driven by the clients requirements. We recently upgraded a client to Microsoft Dynamics GP 2018 R2 and implemented the web client. When we launched the web client we found that none of the images were loading and we were unable to properly log in: Looking in the… Continue Reading Ian...

Read More
An authentication error has occurred; this could be due to CredSSP encryption oracle remediation
Sep11

An authentication error has occurred; this could be due to CredSSP encryption oracle remediation

This error first came up early in 2018, but I’ve stumbled across it a couple of times recently and had to hunt around for the solution, so I am posting it here so I know where to find it next time. Microsoft released an update to address vulnerabilities for the Credential Security Support Provider protocol (CredSSP) used by Remote Desktop Protocol (RDP) connections for Windows clients and… Continue Reading Ian...

Read More
New features coming to Microsoft Dynamics GP in 2019
Sep10

New features coming to Microsoft Dynamics GP in 2019

The new version of Microsoft Dynamics GP is coming in October this year and a trickle (hopefully) of new features has just been announced at the GP Tech Conference in Fargo, North Dakota. The features have been announced in one of the sessions at the conference which I have unfortunately not been able to attend; the features listed below have been tweeted by attendees I follow on Twitter:

Read More
Edge Canary: Conclusion
Sep09

Edge Canary: Conclusion

Microsoft have recently announced they are ditching the current version of their Edge browser in favour of a Chromium based browser. In this series, I am going to take a look at the Canary version of this new browser. The bulk of this series was posted a while ago and I’ve continued using Edge Canary for a while now and thought it was time for a review. Edge Canary is a fast browser; my main… Continue Reading Ian...

Read More
Force AnyConnect to remember profiles
Sep06

Force AnyConnect to remember profiles

I have quite a number of client systems I need to connect to using VPNs. While there is a large number of VPNs available, it is inevitable that I would have some used by more than one client. One such as Cisco AnyConnect. By default AnyConnect will remember only the last VPN to which you connected, but it is possible to force it to remember multiple connections by adding a Profile.xml to the… Continue Reading Ian Grieve’s...

Read More
SSRS requires that you use local SQL Server relational databases… error
Sep05

SSRS requires that you use local SQL Server relational databases… error

Microsoft Dynamics GP ships with a set of default reports which can be deployed into SQL Server Reporting Services; before doing the deploy, there is a setting in the SSRS web.config file which needs to be changed to avoid a maximum request length error. Recently, when performing an upgrade of a clients system to Microsoft Dynamics GP 23018 R2, the deployment of the reports went fine, but we… Continue Reading Ian Grieve’s...

Read More
Remove Microsoft Word Index Entries
Sep04

Remove Microsoft Word Index Entries

I’ve written a few books over the last few years; I use Microsoft Word as it is easy to work in and easy to convert to PDF. Some of the books I have written have been self published. Doing it this ways means that I need to do all of the layout and formatting, such as creating the index. On occasion, I have had a need to remove the index and re-add; this is most often when I am writing a new… Continue Reading Ian...

Read More
Copy Account Categories Between Microsoft Dynamics GP Companies
Sep03

Copy Account Categories Between Microsoft Dynamics GP Companies

When implementing Microsoft Dynamics GP for a new client, they usually have very similar setup between companies. While you can use the Professional Services Tools Library tool Company Copy, you sometimes need to replicate data which was configured after this function had been used. I’ve previously posted scripts to copy segments and financial calendars; today’s script will copy Account… Continue Reading Ian...

Read More
Move Management Reporter To A New Domain
Sep02

Move Management Reporter To A New Domain

A client recently ran into problems with Management Reporter whereby they had a large number of building blocks accidentally deleted from one building block group. While the easiest solution would be to restore the Management Reporter database to before the blocks were deleted, this was not possible. The client in question has a lot of users across different businesses each it their own… Continue Reading Ian Grieve’s...

Read More
Cannot Launch SQL Server Management Studio
Aug30

Cannot Launch SQL Server Management Studio

I work on a variety of test and demo systems and recently stumbled across an oddity with SQL Server Management Studio (SSMS); when I tried to launch it using the shortcut, the splash screen would display, stay on screen for a few seconds before disappearing with SSMS never starting, but no error message appearing or showing in the logs. If I tried to start it by typing ssms in a command prompt… Continue Reading Ian...

Read More
Remove Modified Window From Microsoft Dynamics GP
Aug29

Remove Modified Window From Microsoft Dynamics GP

If you have a modified window which is no longer required, it is fairly easy to remove (although these steps will need to be repeated on each client). To remove the window, open Modified (Microsoft Dynamics GP menu » Tools » Customize » Modifier): Select the product which holds the modified window and click OK: The Modified Forms window should display automatically, but if it does not, click… Continue Reading...

Read More
Update Navigation Pane Series Order
Aug28

Update Navigation Pane Series Order

When I install demo VMs, I usually want everything setup the same way each time I do it. This includes things like inserting UK VAT Rates as well as some more mundane configuration issues like the order of series on the navigation pane. That’s what the script in this post does; it switches off some of the series so they don’t show and reorders the remaining ones into the order I want them… Continue Reading Ian...

Read More
Microsoft Dynamics GP 2018 R2 Displays Full Screen By Default
Aug27

Microsoft Dynamics GP 2018 R2 Displays Full Screen By Default

Last year Steve Endow did a post on Microsoft Dynamics GP 2018 always starts full screen and how you can stop it from doing so. The cause is a setting in the Dex.ini file which was set to TRUE: WindowMax=TRUE Prior versions of Dynamics GP had this setting set to FALSE; at the time he posed, Steve wasn’t sure if the setting was always set to TRUE or only if the Web Client Runtime was installed…. Continue Reading Ian...

Read More
Decrypting Microsoft Dynamics GP Passwords Is Now Possible
Aug26

Decrypting Microsoft Dynamics GP Passwords Is Now Possible

Microsoft Dynamics GP encrypts its passwords in a way which cannot be decrypted. Or at least it did. DynDeveloper.com, in April, posted an article containing a stored procedure which would allow the passwords such as the system or budget passwords to be decrypted. As well as the stored proc, the article also includes sample code which will return the decrypted system password. The post with… Continue Reading Ian Grieve’s...

Read More
Using Node Builder to Create New Node: Conclusion
Aug23

Using Node Builder to Create New Node: Conclusion

This post is part of the series on Using Node Builder to Create New Node; in particular I m creating a node to add EFT Bank information when adding a creditor. In this series, I’ve gone through the steps to create a simple node to add EFT Bank details when using SmartConnect to insert a vendor. Node Builder allowed us to create the node without writing any code. Node Builder is the least… Continue Reading Ian...

Read More
Using Node Builder to Create New Node: Add SmartConnect Node
Aug22

Using Node Builder to Create New Node: Add SmartConnect Node

This post is part of the series on Using Node Builder to Create New Node; in particular I m creating a node to add EFT Bank information when adding a creditor. Once the GP Resource Cache refreshed, the new node will be available in SmartConnect. To use the node, launch SmartConnect and on the action pane, under GP Connector, click Node Maintenance: Expand Payables and Vendors and right click… Continue Reading Ian Grieve’s...

Read More
Using Node Builder to Create New Node: Update SmartConnect GP Resource Cache
Aug21

Using Node Builder to Create New Node: Update SmartConnect GP Resource Cache

This post is part of the series on Using Node Builder to Create New Node; in particular I m creating a node to add EFT Bank information when adding a creditor. With the node created, we need to make it available for use in SmartConnect before we can actually use it. This is done by refreshing the SmartConnect GP Resource Cache. Do this by launching Microsoft Dynamics GP and selecting GP… Continue Reading Ian Grieve’s...

Read More
Using Node Builder to Create New Node: Create Node
Aug20

Using Node Builder to Create New Node: Create Node

This post is part of the series on Using Node Builder to Create New Node; in particular I m creating a node to add EFT Bank information when adding a creditor. To create new node, launch Node Builder from the Windows Start menu. It will start showing a blank screen. In the General Options pane enter the following: Node ID which is all caps with no spaces Node Description Default… Continue Reading Ian Grieve’s Article on...

Read More
Using Node Builder to Create New Node: Introduction
Aug19

Using Node Builder to Create New Node: Introduction

A few weeks ago I did a series on Implementing Node Builder; in this new series I am going to cover creating a new node for adding EFT Bank information with a creditor. If you’re reading this on azurecurve, the series index, below, will automatically update; if you’re reading a syndicated post, then you’ll need to check back on the original post. Using Node Builder to Create New Node No… Continue Reading Ian...

Read More
Enable Bitlocker on Removable Drive
Aug16

Enable Bitlocker on Removable Drive

When I joined ISC Software I was given a new laptop and associated peripherals which included a removable 1TB SSD. As this SSD travels with me, one of the first things I did was encrypt it with BitLocker. To encrypt a drive with BitLocker, launch Windows Explorer, right click on the drive and select Turn BitLocker On. When the BitLocker Drive Encryption window appears, click Encrypt this drive… Continue Reading Ian...

Read More
Disable IE Enhanced Security Configuration
Aug15

Disable IE Enhanced Security Configuration

I do a lot of work in virtual machines and this work often involves using the web browser; this is usually just for web client, SSRS or other similar local pages, but even then Internet Explorer Enhanced Security Configuration will get in the way and need to be disabled. I never remember where the setting for this is, so I am posting here to make it easy to find in future. To change the… Continue Reading Ian Grieve’s...

Read More
Bulk Export Dynamics GP Document Attachments using .NET
Aug14

Bulk Export Dynamics GP Document Attachments using .NET

Steve Endow of Precipio Services, the man behind the GP Transaction Search, has created another tool for Microsoft Dynamics GP; this one allows a bulk download of Document Attachments. The tool allows the user to select a Database, Record Type, and indicate whether Deleted attachments should be exported. The attachments can then be previewed before being exported: Full details of this tool is… Continue Reading Ian Grieve’s...

Read More
Microsoft Dynamics GP Error: “A Countrecords operation on table ‘[Not Found]’ (45).”
Aug13

Microsoft Dynamics GP Error: “A Countrecords operation on table ‘[Not Found]’ (45).”

I was recently working onsite with a client when I was shown an error message which some users has intermittently been reporting. Every so often they would receive the following error: A Countrecords operation on table ‘[Not Found]’ (45). A little research found me this post by Tim Wappat where he explains this is an error due to a network connection glitch. Network interruptions are known… Continue Reading...

Read More
Microsoft Dynamics GP In-Transit Transfer Document Locked
Aug12

Microsoft Dynamics GP In-Transit Transfer Document Locked

While I was looking at the problem raising In-Transit Transfers I needed to delete all orders with alpha numeric Document Numbers, but was getting an in use error on one of them: I double checked to make sure the user was not really locking the record, and, as I’m not aware of an unlock method in Microsoft Dynamics GP itself, I made a quick trip to SQL. The following query will show the… Continue Reading Ian Grieve’s...

Read More
Error Raising In-Transit Transfer in Microsoft Dynamics GP
Aug09

Error Raising In-Transit Transfer in Microsoft Dynamics GP

I was doing some work for a client the other day who was implementing some new functionality in Microsoft Dynamics GP. One of the areas they were working on was Inventory Control. They were testing that everything was working correctly and tried to raise an In Transit Transfer (Inventory Control area page » Transactions » in-Transit transfer Entry); when they entered the Item Number and hit… Continue Reading Ian...

Read More
Error Creating Fiscal Calendar In Fabrikam Caused by Audit Trail Codes
Aug08

Error Creating Fiscal Calendar In Fabrikam Caused by Audit Trail Codes

I’ve been receiving an error in the Fabrikam Sample Company database when trying to create a new Financial Calendar for a while and finally had the time to track it down. The error appears when you enter a new year and click the Calculate button: Microsoft Dynamics GP[Microsoft][SQL Server Native Client 11.0][SQL Server[Violation of PRIMARY KEY constraint ‘PKSY40100’. Cannot insert...

Read More
Changing System Database Name After Installing the Microsoft Dynamics GP Client
Aug07

Changing System Database Name After Installing the Microsoft Dynamics GP Client

I was installing a new VM to do some testing on and, after installing the Microsoft Dynamics GP, I ran GP Utilities and realised that I had an mistake in the system database name I had defined; the SQL Server I am using already had a deployment of Microsoft Dynamics GP 2018 R2 on it, so could not use my usual name of D18R2 and had to use an alternative. I had decided to name the system database… Continue Reading Ian...

Read More
Enhanced Notes Setup Window Missing
Aug06

Enhanced Notes Setup Window Missing

A while ago I did a series on Implementing Enhanced Notes from ISC Software Solutions. I more recently installed the add-on again on a different machine and, after doing some initial configuration, wanted to change the settings, couldn’t find the Enhanced Notes Setup window (Administration » Setup» Company » Enhanced Notes » Setup Enhanced Notes): The reason is a simple one; when you deploy…...

Read More
hMailServer: Connect Outlook 2019 Professional
Aug05

hMailServer: Connect Outlook 2019 Professional

Way back in 2015 I did a series on using hMailServer in virtual machine demo environments as a lighter alternative to Exchange. The last post in that series was on connecting Outlook to hMailServer. I am still using hMailServer, but the new version of Outlook, 2019, has changed the process of connecting. In this post, I’m going to run through connecting Outlook 2019 Professional to… Continue Reading Ian Grieve’s...

Read More