We have been doing a number of upgrades for clients recently, the majority of which went fine. However, we did have one, being done by one of my team, where there was an error produced on the table List View Action Pane when upgrading to Microsoft Dynamics GP 2015 R2:
We have a client who will be loading payables transactions into Microsoft Dynamics GP and need secondary postings created into the General Ledgers of other company databases. The idea is to use the AfterDocument script to create and submit an eConnect document, which is in XML format.
The below code is a small proof of concept which creates an XML file with child and parent nodes and saves it to the T:\:
/* Created by Ian Grieve of azurecurve|Ramblings of a Dynamics GP Consultant (http://www.azurecurve.co.uk) This code is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 2.0 UK: England & Wales (CC BY-NC-SA 2.0 UK). */ Set xmlDoc = CreateObject("Microsoft.XMLDOM") Set objRoot = xmlDoc.createElement("RootElement") xmlDoc.appendChild objRoot Set objRecord = xmlDoc.createElement("SubLevel1") objRoot.appendChild objRecord Set objName = xmlDoc.createElement("Element1") objName.Text = "AAAAAAA" objRecord.appendChild objName Set objDate = xmlDoc.createElement("Element2") objDate.Text = "BBBBBBB" objRecord.appendChild objDate Set objIntro = xmlDoc.createProcessingInstruction ("xml","version='1.0'") xmlDoc.insertBefore objIntro,xmlDoc.childNodes(0) xmlDoc.Save "T:\Test.xml"
I’ve recently been upgrading all of my demo and test environments from Microsoft Dynamics GP 2015 R2 to 2016 R1. Microsoft Dynamics GP 2015 R2 web client had a bug in the General Ledgers Transaction Entry windows Excel copy and paste function which prevented it from working.
It worked fine in the desktop client which meant for regular issues for those clients operating a hybrid installation with a mix of desktop and web clients. It could also cause problems when doing a demo and someone asked to see it while I had the web client open rather than the desktop client.
My understanding was that this bug was fixed in 2016, which I was really looking forward to; I also have a large client who was looking forward to this being fixed as well so they could minimise the use of Integration Manager for importing journals.
Unfortunately, after installing 2016 I did a quick test and found that copy and paste still did not work. I asked around and found that Belinda Allen had the exact same issue, she had found the issue already before I asked, which confirmed that it was not confined to my system.
Belinda raised a call with Microsoft and they have confirmed that it is a reproducible bug which has been escalated to the development team to look into.
It would be nice to have a hotfix, but I am guessing that it will be in Dynamics GP 2016 R2 at the earliest.
When you do a fresh install of Microsoft Dynamics GP, all of the required security roles and tasks are created. However, when Dynamics GP is upgraded, the new security roles and tasks are not automatically added. Microsoft do supply a set of scripts each time which can be run to add the roles and tasks.
This comes up every time we upgrade a client and I am tired of having to hunt out the posts from Microsoft, so I’m bringing together a list of the last few scripts and will add new ones here as each version is released.
The versions I could find again are listed below
We have a couple of clients using MDA (Multi-dimensional Analysis; the precursor to Analytical Accounting), which I don’t know terribly well. So, when one of them asked for a new SmartList Object to be created which extracts information about General Journals and the related MDA information, I needed to do some exploring of the database to work out the links.
Unfortunately, the links between the GL transactions and MDA are not especially obvious. To verify what I had created I did a search and came across a post from 2011 by Mark Polino which was posting code created by a Jeremy Lowell.
I ended up combining some of the code I had with Jeremy’s code (when I tried just his I was getting duplicate lines) to create the below SQL View. Since writing and giving the view to the client, I’ve spotted a few places where the SQL could be tightened up, but this view has been tested in its current state.
CREATE VIEW uv_AZRCRV_LinkGLtoMDA AS SELECT DISTINCT GLT.JRNENTRY ,GLT.YEAR ,GLT.TRXDATE ,GLT.REFRENCE ,GLT.SOURCDOC ,GLT.DEBITAMT ,GLT.CRDTAMNT ,GLT.ACTINDX ,DTA10100.DTASERIES ,DTA10100.DTAREF ,DTA10100.GROUPID ,DTA10100.DTA_GL_Reference ,DTA10100.GROUPAMT ,DTA10200.CODEID ,DTA10200.POSTDESC ,DTA10200.CODEAMT FROM (SELECT GLT.JRNENTRY ,GLT.YEAR ,GLT.TRXDATE ,GLT.REFRENCE ,GLT.SOURCDOC ,GLT.DEBITAMT ,GLT.CRDTAMNT ,GLT.ACTINDX FROM GL20000 WITH (NOLOCK) UNION ALL SELECT GLT.JRNENTRY ,GLT.YEAR ,GLT.TRXDATE ,GLT.REFRENCE ,GLT.SOURCDOC ,GLT.DEBITAMT ,GLT.CRDTAMNT ,GLT.ACTINDX FROM GL30000 WITH (NOLOCK) ) AS GLT LEFT OUTER JOIN DTA10100 WITH (NOLOCK) ON DTA10100.JRNENTRY = GLT.JRNENTRY AND DTA10100.ACTINDX = GLT.ACTINDX AND (DTA10100.SEQNUMBR = GLT.SEQNUMBR OR DTA10100.SEQNUMBR <> GLT.SEQNUMBR) AND GLT.ORCTRNUM = DTA10100.DOCNUMBR LEFT OUTER JOIN DTA10200 WITH (NOLOCK) ON (DTA10200.DTAREF = DTA10100.DTAREF AND GLT.SEQNUMBR = GLT.OrigSeqNum) OR (DTA10200.DTAREF = DTA10100.DTAREF AND GLT.SEQNUMBR <> GLT.OrigSeqNum) GO GRANT SELECT ON uv_AZRCRV_LinkGLtoMDA TO DYNGRP GO
To do this, launch the Microsoft Dynamics GP 2016 setup utility and select Web Components:
The book is currently scheduled for release in January 2017 and can be pre-ordered now from Packt Publishing:
The final additional product to install, is the Service Based Architecture. This is a relatively new addition for Dynamics GP which allows for interaction using REST based web services, rather than the more traditional SOAP based ones made available via the Web Services for Microsoft Dynamics GP.
There are two steps to installing Service Based Architecture (SBA), the first of which, install the SBA feature to the Dynamics GP client. This is the one which we will cover in this post; the next post will cover the second.
I am going to add this feature to the desktop client installation on my web server, so need to use the Programs and Features Control Panel applet. Once it is loaded, select Microsoft Dynamics GP and click Change:
To install the Web Resource Cache start the setup utility from the download media and, under the Additional Products header click on GP Web Resource Cache:
I occasionally post suggestions from MS Connect and ask people to read the suggestion and cast their votes. Well, today I don’t have a single suggestion, or even two, but three suggestions for you to vote upon.
One Click Access to SmartList in Web Client
In the desktop client you can access SmartList from the area page, from the Microsoft Dynamics GP menu or via a toolbar icon. However, in the web client, only the first of these options are available and most users of Dynamics GP do not generally know of ways othet than the Microsoft Dynamics GP menu to start SmartList. This suggestion is to make SmartList available via one click in the web client.
Chris Dobkins submitted the suggestion and asked if SmartList can be made available by an icon next to the User Date in the web client; I don’t actually mind where the icon is, but agree that a single click method is required to make SmartList more accessible.
Hide Business Analyzer in Navigation Lists for All Users and All Lists
Business Analyzer can be a good way of seeing infromation from Dynamcis GP, but I have never liked BA being added to the navigation lists in Dynamics GP. This is why I added a recipe to the Microsoft Dynamics GP 2013 Cookbook which allowed it to be switched off globally with a SQL trigger. A Chris says, it would be better to have this functionality available via the GP client itself and allow users to switch it on when wanted.
End a corrupted Web Client Session
This is the third suggestion, suggested by Chris.
From time to time, a web client session will become corrupt. When this happens, you can reconnect to the session, but GP does not work (you may just gets lots of errors pop up in the status spinner, for example). When this happens, the user needs the ability to end the session from the screen that lists your active sessions and the tenants to which you have access to create new sessions. Users have the ability to remove their login from the activity table, and have had for many versions. Ending a hung web client session is the web client version of removing your user from the activity table so that you can log back into GP.