Showing posts with label AX Workflow. Show all posts
Showing posts with label AX Workflow. Show all posts

Tuesday 8 December 2015

Configure Workflows to Include PDF Attachments in Microsoft Dynamics AX 2012

Configure Workflows to Include PDF Attachments in Microsoft Dynamics AX 2012

Written By: Ivan ColeDate: 01 May 2015
UXC Eclipse Chief Technology Officer, Ivan Cole, explains how to configure PDF Attachments in Email messages in Microsoft Dynamics AX 2012.
​In my previous blog explaining in detail how to configure eMail approvals via workflow messages we referenced a parameter to include email attachments in workflow email messages. 

Using this feature you can configure your workflows to include PDF attachments from SSRS reports that exist in Dynamics AX.  This blog entry will walk through the steps to configure PDF attachments to workflow messages.
The good news is that once you have email approvals configured and working there are only a few additional things you need to configure in order to set what reports get attached to your workflow messages. The challenge however is making sure a report is available to print PRIOR to the document approval.  The best example is the Purchase Order workflow. 
When change tracking is turned on, purchase order documents cannot be printed until approved and confirmed. The report actually prints from the confirmation detail tables.  This is a control mechanism to prevent sending a printed PO to a vendor prior to appropriate approvals.  This means that in order for a PDF attachment report to be included in a workflow email a custom AX SSRS report must be developed first that is not restricted by workflow status. 
In this type of document example you would need to create a custom PO Workflow SSRS report so that details can be included in the attachments that are not available directly within the workflow message.  Following are the steps to configure attachments in workflow email messages.
In our first example we will use the Expense Report SSRS Report.  This example works out of the box since the Expense report can be printed from In-Review documents.

Workflow Parameters

In our previous blog we identified all of the steps to configure workflow emails for approvals using the Azure Service bus.  Although they are not directly related if you want the ability to include embedded Approve/Reject hyperlinks within the emails enter the Service bus base URL that will relay the Approval or Rejection from the workflow message.
 
The message should be in the following format:
 
[Your Service Bus Name].servicebus.windows.net/[eMail Relay Name]
 
 
From the System Administration, Setup, workflow, Workflow parameters menu enter the service bus URL and check the box to Add Attachments.
blog-ax-pdf-attachments-1.jpg

Once the workflow parameters are setup there is only one more step in order to include the PDF report attachment.  You can find the setup under System Administration, Windows Store, Windows Application Store Setup.

blog-ax-pdf-attachments-2.jpg

The windows application store setup window currently has only one menu on the left side windows pane for Approvals.  To associate the workflow find the applicable table in the list.  In our example we are navigating to and select the TrvDocumentApproval which is the Expense Report full document approval. 

blog-ax-pdf-attachments-3.jpg
 
Next select the report association tab.  This will allow the selection of an existing SSRS report available against that main table.  Click the drop down list to select the TrvExpense report.
 
blog-ax-pdf-attachments-4.jpg
 
Once the report is selected we are ready to test the expense report workflow.  We are using the standard workflow in the demo data setup, however we updated our Placeholders to include the Approve and Reject hyperlinks.
 
blog-ax-pdf-attachments-5.jpg
 

Batch Job Setup 

In order to initiate the workflow, attach the related PDF if configured and send the email notification we need to setup three batch jobs. The first one is for workflow.  For the purpose of this test we will simulate this using the Tutorial_WorkflowProcessor demo form.  On the demo image you can navigate to Tools, Options, and Workflow Processor. Click start to begin the process.
 
blog-ax-pdf-attachments-6.jpg

Next you need to run the eMail Attachments batch job. This job searches for workflow that have attachments required and runs the report and links it to the workflow table pending the send.  You must also run the eMail processing batch job so that the emails are sent from the workflows and alerts that are configured and ready to be processed.
 
blog-ax-pdf-attachments-7.jpg

Make sure to map your batch job to the email template that is configured for your workflow.
 
blog-ax-pdf-attachments-8.jpg

blog-ax-pdf-attachments-9.jpg

blog-ax-pdf-attachments-10.jpg

Once the Workflow Processor is running as well as the two batch jobs for eMail attachments and mail notifications are running we can submit an expense report to test this configuration.

Expense Report Submit and Test

You create and submit expense reports from Enterprise Portal Employee Services.
 
blog-ax-pdf-attachments-11.jpg
 
Create a new timesheet with a few lines for our test.
 
blog-ax-pdf-attachments-12.jpg
blog-ax-pdf-attachments-13.jpg

You will start to see notifications as the batch jobs pick up new workflow items to send.

blog-ax-pdf-attachments-14.jpg

You will then receive the email notification with the PDF Report as an attachment.
 
blog-ax-pdf-attachments-15.jpg

blog-ax-pdf-attachments-16.jpg

This is a standard email message and can be opened across multiple devices including iPhone, Android and Windows phones.  And of course any email client.

blog-ax-pdf-attachments-17.jpg
blog-ax-pdf-attachments-18.jpg
 
Having the attachment available on the mobile device gives the reviewer more visibility into the details of the transaction without the need to login to the Dynamics AX rich client 

Purchase Order Attachment Example

As mentioned in the beginning of this article in order to attach a PDF report to a Purchase Order workflow email a custom report must be developed.  This is because the PO report cannot be printed until the PO is approved and confirmed, not before.  There are specific customizations that must be made for a PO draft report to work.  First we had to allow a PO draft report to print, independent of the workflow status. 
 
Also, by default, the AX PDF workflow attachment feature only allows you to include a standard SSRS report based on a query.  The purchase order printed form has a lot of advanced functionality such as charges and totals that are best calculated on the fly which makes using a query as the source impossible or highly impractical.  To make this work a custom data provider was developed.  We also needed to make a change to the system class the called the report attachment that would support launching the report using a custom data provider rather than a standard report based on a query.
 
The technical details behind how to make these modifications are not in scope for this article.  However, anyone interested in this type of functionality should email us atinfo@uxceclipse.com.
 
To make using the report for testing simple we added a menu and button on the Purchase Orders list page for the draft report.  You can see from this example it can print even though there is a Draft approval status. 
 
blog-ax-pdf-attachments-19.jpg

The actual Purchase Order Print functions are grayed out since the PO is not yet approved and confirmed.
 
blog-ax-pdf-attachments-20.jpg
 
Once we submit the Purchase Order for approval, the same batch jobs are run to attach the Purchase Order to the email. 

Conclusion

Implementing eMail approvals for workflow in Dynamics AX is now a native feature that is available to implement in an easy and low cost way without the need for third party additional add-on products.  Understanding the functionality and installation steps will help make the implementation of this feature painless with the maximum benefit to AX users.  Having up-front knowledge about the scenarios that require customized reports will empower Dynamics AX 2012 users with a broader scope of practical usage that greatly improves the Dynamics AX workflow user experience.

Sunday 23 November 2014

Get Default Workflow list in AX 2012

How to Fetch Default Workflow list in AX 2012

Hi Folks, 
Here is a job to fetch existing workflows in AX 2012. 
static void TheAxapta_WFList(Args _args)
{
#AOT
Treenode                workflowTypesNode, workFlowNode;
int                     i;
int                     nodeCount;
str                     workflowName;
SysDictWorkflowType     sysDictWorkflowType;
SysDictWorkflowCategory sysDictWorkflowCategory;
;
 
workflowTypesNode = treenode::findNode(#WorkflowTypesPath);
nodeCount = workflowTypesNode.AOTchildNodeCount();
 
workFlowNode = workflowTypesNode.AOTfirstChild();
for (i=1; i<=nodeCount; ++i)
{
workflowName = workFlowNode.AOTgetProperty("Name");
try
{
sysDictWorkflowType = SysDictWorkflowType::newTypeName(workflowName);
sysDictWorkflowCategory = new SysDictWorkflowCategory(sysDictWorkflowType.category());
info(sysDictWorkflowCategory.label() + ";"
+ sysDictWorkflowType.label() + ";"
+ sysDictWorkflowType.help());
}
catch ( Exception::Error)
{
exceptionTextFallThrough();
}
workFlowNode = workFlowNode.AOTnextSibling();
}
}
 


Your output must looks like below 

image
- Harry

Labels

#veryusefulcode (1) AIF (8) AOT Maps (1) Args (1) Ax 2009 Reports (2) AX 2012 navigation (1) Ax 2012 Interview Questions (1) AX 7 (2) AX Architecture (1) Ax Backup (1) AX Workflow (2) AX2012 (1) AX2012 R2 (1) Ax2012R3 (1) AX2012R3 Dynamics Connector Step by Step Installation and Configuration (1) AX2012R3 EP Step by Step Installation and Configuration EP R3 (1) AX2012R3 HelpServer Step by Step Installation and Configuration (1) AX2012R3 Rapid Start Connector Step by Step Installation and Configuration (1) AX2012R3 Report Server and Analysis Server Step by Step Installation and Configuration (1) AX7 (1) Best practices (1) Blocking user to enter (1) Collection Classes (1) Container (1) D365FO (3) Data Migration Frame Work ax 2012R3 (1) Deleting duplicate Record from Table – Ax2012 (1) Delivery due date notification workflow in Ax 2012 (1) Development Steps EP (1) Dimensions (1) DIXF (1) DMF in Ax 2012 R3 (1) Dynamics Ax 2012 Interview Questions (1) DYNAMICS AX 2012 INTERVIEW QUESTIONS PART 2 (1) DYNAMICS AX 7 (1) EDT relation Migration Tool (1) EP AX 2012 (1) Ep Lookup (1) Error (1) Event Handler (1) F5 (1) File Handling (4) Filter on AX2012 Listpage (1) filtering (2) financial dimensions in AX 2012 (3) form (1) images (1) Installation and Configration (4) Installation and Configuration (11) Installation of Management Reporter 2012 for AX 2012 (1) Interaction class in ax 2012 (1) Interview Question (1) Interview Questions For Ax 2012 (1) Invent DIm (1) Jobs (2) license (1) List page and form menuitem enable code (1) Methods (1) microsoft Dynamics AX 365FO (1) Number Sequence Generation – AX 2012 (5) Number Sequence2012 (1) OLTP-OLAP (1) Passing Args (1) Passing form caller and menu item caller in ax 2012 (1) Passing Multiple Records Args (1) Posting in Ax 2012 (1) POSTING PURCHASE ORDER (1) Query (1) Query Filter Form (2) Query Ranges in X++ (1) Question and Answer (1) Report (1) Reports Controller class (1) RLS in ax 2009 (1) SALES ORDER IMPORT/EXPORT FRAMEWORK BY DMF (1) Security (1) security roles (1) Security Sysqueryrangeutil (1) Sharepoint 2016 (1) SQL SERVER (1) SSRS (2) SSRS Reports Controller class (2) Table collections & Virtual company (1) Time (1) TIPS AND TRICKS (1) Web service AIF (3) Web Services on IIS (AIF) Step by Step Installation and Configuration (1) workflow ax2012 (1) Workflow installation (1) Workflow Method (3) X++ (1)