Missing Security Roles In Microsoft Dynamics GP 2018 RTM

Microsoft Dynamics GPThe Dynamics GP Support and Services Blog has a post on the missing security in Microsoft Dynamics GP 2018 RTM; this is the new security roles and tasks created for the new functionality.

For features which are being enhanced, the new security tasks may be being added to roles which already exist and are assigned to users, the security is not automatically updated with the upgrade, but instead scripts are made available to add the missing security; this places the onus on the client to determine if the roles should be updated or not.

I have updated my original post with the new script, but you can also download it here.

MDGP 2018 RTM Feature of the Day: Workflow Additional Fields

Microsoft Dynamics GPThe Inside Microsoft Dynamics GP blog has started a series Feature of the Day posts for Microsoft Dynamics GP 2018 RTM; as the most recent versions have been, these posts are in the form of PowerPoint slides; I am reposting them here so they can be read more easily as well as adding my own commentary.

The series index for this series of posts is here.

The seventh Feature of the Day is Workflow Additional Fields. Back in April 2017 I submitted an MS Connect suggestion asking for the ability to add additional fields to Workflow.

I guess this might be a form of responding to this suggestion, but I was looking for a way that the user could determine which fields could be available rather than Microsoft deciding which extra fields are added.

Two of the workflow types have had extra fields added where they available in both the Workflow Condition Editor and Message Setup windows allowing you to build workflow steps and notification emails with them.:

Two other workflow types have had the Account Description made available at the line level. These two workflow types are:

  • Purchase Order
  • Purchase Requisition

While having the extra fields available is good, I am disappointed with this new feature for two reasons.

Firstly, it is a very limited number of fields which have been made available rather than allowing users to select additional fields to add.

Secondly, from everything I have seen on the feature regarding EFT information, it only seems like you can include the fields in the workflow conditions and email messages; Dynamics GP is desperately missing functionality around changes to EFT details needing to go through workflow for approval. I fear that this new feature doesn’t extend this far.

As soon as Dynamics GP 2018 is released, I will be giving this a test to confirm how it works.

Click to show/hide the MDGP 2018 RTM Feature of the Day Series Index

SQL Function To Return Last Workflow Comment

Microsoft Dynamics GPBack in April 2017 I posted an SQL function which can be used to return the workflow status of a transaction or card. This function is now complimented by another one which can be used to return the last comment recorded. This was created for use on a customisation of the Purchase Requisition Entry window which added a Rejection Reason field so users could see at a glance why a purchase requisition had been rejected.

IF OBJECT_ID (N'uf_AZRCRV_GetWorkflowApprovalComments', N'FN') IS NOT NULL
    DROP FUNCTION uf_AZRCRV_GetWorkflowApprovalComments
GO
CREATE FUNCTION dbo.uf_AZRCRV_GetWorkflowApprovalComments(@WorkflowTypeName CHAR(50),@WfBusObjKey CHAR(20))
	RETURNS VARCHAR(14)
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 4.0 International (CC BY-NC-SA 4.0 Int).

Returns Workflow Approval status of a specified workflow item.

Requires input parameters of WorkflowTypeName and WfBusObjKey

Valid Workflow Type Names are (as of Microsoft Dynamics GP 2016 R2):
	General Ledger Batch Approval
	Receivables Batch Approval
	Payables Batch Approval
	Payables Transaction Approval
	Purchase Order Approval
	Purchase Requisition Approval
	Vendor Approval
	Employee Profile Approval
	Employee Skills Approval
	Payroll Direct Deposit Approval
	Payroll Timecard Approval
	Payroll W4 Approval
	Expense Report Approval
	Timesheet Approval
	Smartlist Designer View Approval
*/
BEGIN
	RETURN ISNULL((
		SELECT TOP 1 
			WF30100 AS ['Workflow History']
		FROM 
			WF30100 AS ['Workflow History']
		INNER JOIN
			WFI10002 AS ['Workflow Master']
				ON
					['Workflow Master'].WorkflowInstanceID = ['Workflow History'].WorkflowInstanceID
		WHERE
			['Workflow Master'].Workflow_Type_Name = @WorkflowTypeName
		AND
			['Workflow Master'].WfBusObjKey = @WfBusObjKey
		ORDER BY
			['Workflow History'].DEX_ROW_ID DESC)
	,'Not Submitted')
END
GO
GRANT EXECUTE ON uf_AZRCRV_GetWorkflowApprovalComments TO DYNGRP
GO

This function can easily be included in a view or other query used in a variety of reporting tools.