Hands On With Microsoft Dynamics GP 2016 R1: Deploy System Database

● Ian Grieve ●  ● 9 Comments  ● 

Microsoft Dynamics GPNow that we have the first client installed, we can deploy the system database. By default the system database is called DYNAMCIS, but i have chosen to use one called D16R1. To deploy the system database, hit the Windows start button, search for and launch GP Utilities.

While I do try to minimise the use of the sa account as it is the SQL Server system administrator account, the initial implementation of Dynamics GP does require its use. So, on the Welcome to Microsoft Dynamics GP Utilities window enter sa in the User ID field and enter the relevant password.

Once done, click OK:

Welcome to Microsoft Dynamics GP Utilities

Continue reading → Hands On With Microsoft Dynamics GP 2016 R1: Deploy System Database

● Categories: Dynamics, GP, GP Utilities, Microsoft ● Tags: , , , , , , , , , , , , ,  ● Permalink ● Shortlink ●

MDGP 2016 R1 Feature of the Day: OData Service

● Ian Grieve ●  ● 0 Comments  ● 

The previous feature of the day introduced the OData Service installation. This one gives a brief overview of how the service works:

OData Service

The main features of the OData service are:

  • Ability to define end points for the service
  • View GP data with any tool that supports OData feeds

Click to show/hide the MDGP 2016 R1 Feature of the Day Series Index

● Categories: Dynamics, GP, GP OData Service, Microsoft ● Tags: , , , , , ,  ● Permalink ● Shortlink ●

MDGP 2016 R1 Feature of the Day: OData Service Deployment

● Ian Grieve ●  ● 2 Comments  ● 

Microsoft Dynamics GP 2016 R1 is seeing the introduction of a new complimentary product: an OData service which will allow reports on Dynamics GP data using any reporting tool (such as PoweBI) to be created:

OData Service Deployment

The main features of are:

  • Separate install under Additional Products
  • Use GP Security to control access to data
  • Supports tables, views and stored procs as data sources

Click to show/hide the MDGP 2016 R1 Feature of the Day Series Index

● Categories: Dynamics, GP, GP OData Service, Microsoft ● Tags: , , , , , ,  ● Permalink ● Shortlink ●

MDGP 2016 R1 Feature of the Day: PowerBI Reports on the Home Page

● Ian Grieve ●  ● 1 Comment  ● 

In February 2014 Microsoft launched PowerBI for Office 265 and are now bringing it to the Microsoft Dynamics GP 2016 R1 home page (but only the home page of the desktop client):

PowerBI on the Microsoft Dynamics GP 2016 R1 home page

The main features of are:

  • New part on Home Page to display Power BI Reports.
  • Click on the report to take you out to your Power BI site.

I’m not entirely sure how to feel about the addition of PowerBI to Dynamics GP; it almost feels like a scatter gun approach is being used for reporting with Dynamics GP. There are standard reports, Metrics, Excel Reports, SSRS Reports (which for most clients replace the Metrics to the extent I had to lookup the name of Metrics), Management Reporter (with an unknown roadmap/future) reports and now PowerBI reports.

Click to show/hide the MDGP 2016 R1 Feature of the Day Series Index

● Categories: Dynamics, GP, Microsoft, PowerBI ● Tags: , , , , , ,  ● Permalink ● Shortlink ●

MDGP 2016 R1 Feature of the Day: SmartLists from Favorites

● Ian Grieve ●  ● 0 Comments  ● 

As mentioned in the previous post, Microsoft Dynamics GP 2013 SP2 saw the introduction of SmartList Designer and have been gradually improving it since. This new feature allows a user to create a new SmartList from a favourite, instead of just from a SmartList Object:

SmartList

SmartList Designer

The main features of are:

  • A user can create a new SmartList from a favourite using Designer
  • The user doesn’t have to remove all extra columns from the default SmartList

This new feature will ease the creation of a SmartList Object simialr to an existing favourite instead of a copy of the default SmartList Object to which the favourite belongs.

Click to show/hide the MDGP 2016 R1 Feature of the Day Series Index

● Categories: Dynamics, GP, Microsoft, SmartList, SmartList Designer ● Tags: , , , , , , ,  ● Permalink ● Shortlink ●

MDGP 2016 R1 Feature of the Day: Excel Export as Numbers

● Ian Grieve ●  ● 0 Comments  ● 

This feature of the day puzzles me somewhat as I would swear this was a feature introduced within the last couple of versions. It is the export of numbers as numbers from a SmartList:

Excel Export as Numbers

As I mentioned in the introductory paragraph, this is a feature I believe was already introduced, but upon further reflection this may be a slightly different new feature.

The previous feature I am thinking of (but can’t find a specific announcement) exported the numbers to five decimal places and without a currency symbol. The example given in the screenshot, above, has a currency symbol and is to two decimal places.

Click to show/hide the MDGP 2016 R1 Feature of the Day Series Index

● Categories: Dynamics, GP, Microsoft, SmartList ● Tags: , , , , , ,  ● Permalink ● Shortlink ●

SQL Error: “The query uses non-ANSI outer join operators”

● Ian Grieve ●  ● 3 Comments  ● 

Microsoft Dynamics GPI’ve recently been working on a project upgrading a client from Microsoft Dynamics GP 9 SP3 to a later version and also from Microsoft SQL Server 2000 to SQL Server 2008 R2. Much of the upgrade has gone through without problems, but we’ve encountered one or two issues with customisations and custom reports.

The following error message was produced during testing when generating one of the old Crystal Reports:

Crystal Report Viewer - Failed to open rowset. Detsails: 42000:[Microsoft][SQL Server Native Client 10.0][SQL Server]The query uses non-ANSI outer join operators("*=" or "=*"). To run this query without modification, please set the compatibility level for current database to 80, using the SET COMPATIBILITY_LEVEL option of ALTER DATABASE. It is strongly recommended to rewrite the query using ANSI outer join operators (LEFT OUTER JOIN, RIGHT OUTER JOIN). In the future versions of SQL Server, non-ANSI join operators will not be supported even in backwa...

Crystal Report Viewer

Failed to open rowset.
Details: 42000:[Microsoft][SQL Server Native Client 10.0][SQL Server]The query uses non-ANSI outer join operators("*=" or "=*"). To run this query without modification, please set the compatibility level for current database to 80, using the SET COMPATIBILITY_LEVEL option of ALTER DATABASE. It is strongly recommended to rewrite the query using ANSI outer join operators (LEFT OUTER JOIN, RIGHT OUTER JOIN). In the future versions of SQL Server, non-ANSI join operators will not be supported even in backwa...

The compatibility level of a database for Microsoft Dynamics GP should NOT be changed back to 80 when this error is encountered. The solution to use is the recommended one from the error message: to rewrite the query.

In this case the client had a set of Crystal Reports written against GP 9 which called a variety of stored procedures. I spent a few hours reviewing and rewriting stored procedures to remove the non-ANSI outer joins and replacing them with ANSI ones.

● Categories: Dynamics, GP, Microsoft, SQL Server, SQL Server 2000, SQL Server 2008 ● Tags: , , , , , , , , ,  ● Permalink ● Shortlink ●

SQL View For Vendor Email Addresses

● Ian Grieve ●  ● 2 Comments  ● 

Microsoft Dynamics GPI produced this view to return vendor email address for a client a while ago; I don’t typically use this view by itself, but instead combine it with GP tables to produce a larger SmartList report using either SmartList Designer or SmartList Builder.


CREATE VIEW uv_AZRCRV_VendorInternetAddresses
AS
SELECT
	['Internet Addresses'].Master_ID AS 'Vendor ID'
	,['Internet Addresses'].ADRSCODE AS 'Address Code'
	,['Internet Addresses'].EmailToAddress AS 'Email To Address'
	,['Internet Addresses'].EmailCcAddress AS 'Email Cc Address'
	,['Internet Addresses'].EmailBccAddress AS 'Email Bcc Address'
	,['Internet Addresses'].INET1 AS 'Email'
FROM
	SY01200 AS ['Internet Addresses']
WHERE
	['Internet Addresses'].Master_Type = 'VEN'
GO

GRANT SELECT ON uv_AZRCRV_VendorInternetAddresses TO DYNGRP
GO
● Categories: Dynamics, GP, Microsoft, SmartList, SmartList Designer ● Tags: , , , , , , , , , , ,  ● Permalink ● Shortlink ●

Security Views For Use In SmartList Designer: User Access & Granted Security Roles With Tasks & Operations

● Ian Grieve ●  ● 0 Comments  ● 

Microsoft Dynamics GPThe eighth and final view in the series, shows users with their access to companies, roles, tasks and security operations. I’ll state up front that this is probably the least useful fo the views due to the sheer number of rows that it returns.

CREATE VIEW [dbo].[uv_AZRCRV_UserAccessAndGrantedSecurityRolesWithTasksAndOperations] AS
/*
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).
*/
SELECT
	['User Master'].USERID AS 'User ID'
	,['User Master'].USERNAME AS 'Username'
	,['User Master'].USRCLASS AS 'User Class'
	,ISNULL(['Class Master'].DSCRIPTN, '') AS 'User Class Description'
	,ISNULL(['Company Master'].INTERID, '') AS 'Intercompany ID'
	,ISNULL(['Company Master'].CMPNYNAM, '') AS 'Company Name'
	,ISNULL(['Security Assignment User Role'].SECURITYROLEID, '') AS 'Security Role ID'
	,ISNULL(['Security Roles Master'].SECURITYROLENAME, '') AS 'Security Role Name'
	,ISNULL(['Security Role Task Assignment'].SECURITYTASKID, '') AS 'Security Task ID'
	,ISNULL(['Security Task Master'].SECURITYTASKNAME, '') AS 'Security Task Name'
	,ISNULL(['Security Task Master'].SECURITYTASKDESC, '') AS 'Security Task Description'
	,ISNULL(['Security Resource Descriptions'].PRODNAME, '') AS 'Product Name'
	,ISNULL(['Security Resource Descriptions'].Series_Name, '') AS 'Series Name'
	,ISNULL(['Security Resource Descriptions'].DSPLNAME, '') AS 'Security Operation Name'
	,ISNULL(['Security Resource Descriptions'].TYPESTR, '') AS 'Security Operation Type'
FROM
	SY01400 AS ['User Master']
LEFT JOIN
	SY40400 AS ['Class Master']
		ON ['Class Master'].USRCLASS = ['User Master'].USRCLASS
LEFT JOIN
	SY60100 AS ['User-Company Access']
		ON ['User-Company Access'].USERID = ['User Master'].USERID
LEFT JOIN
	SY10500 AS ['Security Assignment User Role']
		ON ['Security Assignment User Role'].CMPANYID = ['User-Company Access'].CMPANYID
			AND ['Security Assignment User Role'].USERID = ['User-Company Access'].USERID
LEFT JOIN
	SY09100 AS ['Security Roles Master']
		ON ['Security Roles Master'].SECURITYROLEID = ['Security Assignment User Role'].SECURITYROLEID
LEFT JOIN
	SY10600 AS ['Security Role Task Assignment']
		ON ['Security Role Task Assignment'].SECURITYROLEID = ['Security Roles Master'].SECURITYROLEID
LEFT JOIN
	SY01500 AS ['Company Master']
		ON ['Company Master'].CMPANYID = ['User-Company Access'].CMPANYID
LEFT JOIN
	SY09000 AS ['Security Task Master']
		ON ['Security Task Master'].SECURITYTASKID = ['Security Role Task Assignment'].SECURITYTASKID
LEFT JOIN
	SY10700 AS ['Security Assignment Task Operations']
		ON ['Security Assignment Task Operations'].SECURITYTASKID = ['Security Task Master'].SECURITYTASKID
LEFT JOIN
	SY09400 AS ['Security Resource Descriptions']
		ON ['Security Resource Descriptions'].SECURITYID = ['Security Assignment Task Operations'].SECURITYID
GO

GRANT SELECT ON uv_AZRCRV_UserAccessAndGrantedSecurityRolesWithTasks TO DYNGRP
GO

Click to show/hide the Security Views For Use In SmartList Designer Series Index

● Categories: Dynamics, GP, Microsoft, SmartList, SmartList Builder, SmartList Designer, Third Party Add-on ● Tags: , , , , , , , ,  ● Permalink ● Shortlink ●

Security Views For Use In SmartList Designer: Security Tasks & Operations

● Ian Grieve ●  ● 0 Comments  ● 

Microsoft Dynamics GPThe seventh SQL view in this series does not include users, but instead shows the tasks and the operations. To use this view you will need to have populated the Security Resource Descriptions table.

CREATE VIEW [dbo].[uv_AZRCRV_SecurityTasksWithOperations] AS
/*
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).
*/
SELECT
	['Security Task Master'].SECURITYTASKID AS 'Security Task ID'
	,['Security Task Master'].SECURITYTASKNAME AS 'Security Task Name'
	,['Security Task Master'].SECURITYTASKDESC AS 'Security Task Description'
	,['Security Resource Descriptions'].PRODNAME AS 'Product Name'
	,['Security Resource Descriptions'].Series_Name AS 'Series Name'
	,['Security Resource Descriptions'].DSPLNAME AS 'Security Operation Name'
	,['Security Resource Descriptions'].TYPESTR AS 'Security Operation Type'
FROM
	SY09000 AS ['Security Task Master']
INNER JOIN
	SY10700 AS ['Security Assignment Task Operations']
		ON ['Security Assignment Task Operations'].SECURITYTASKID = ['Security Task Master'].SECURITYTASKID
INNER JOIN
	SY09400 AS ['Security Resource Descriptions']
		ON ['Security Resource Descriptions'].SECURITYID = ['Security Assignment Task Operations'].SECURITYID
GO

GRANT SELECT ON uv_AZRCRV_SecurityTasksWithOperations TO DYNGRP
GO

Click to show/hide the Security Views For Use In SmartList Designer Series Index

● Categories: Dynamics, GP, Microsoft, SmartList, SmartList Builder, SmartList Designer, Third Party Add-on ● Tags: , , , , , , , ,  ● Permalink ● Shortlink ●