Udostępnij za pośrednictwem


How To: Add deep links to reports (SSRS)

OVERVIEW

The process for embedding custom drill-down navigation links into application forms in Dynamics 365 for Operations differs from solutions in AX2012. The public APIs for the Application Suite backed by C# assemblies continue to be supported in D365 for Operations. However, to offer improved performance, Dynamics 365 for Operations Reporting framework does NOT auto-generate hyperlinks based on EDT relations.

The hosted Reporting Service only supports the deployment of signed C# assemblies. For advanced operations, the modern developer tooling supports embedded custom code defined using VB. See Expression Examples article for a collection of commonly used functions.

Here are some key benefits…

  1. There’s no longer a need for custom C# handlers to introduce user navigations to new application forms
  2. Improves performance of the report execution. C# methods incur a higher number of service calls
  3. Ability to send a variable number of context parameters

 

In the Precision design, field 'Action' property, you can find the expression like:

=Microsoft.Dynamics.Framework.Reports.BuiltInMethods.GenerateDrillThroughLink (Parameters!AX_ReportContext.Value, Parameters!AX_UserContext.Value, "[MenuItemName]", "[MenuItemType]", "[TableName]", "{Arguments}")

 
Example #1 (Single parameter):

=Microsoft.Dynamics.Framework.Reports.BuiltInMethods.GenerateDrillThroughLink(Parameters!AX_ReportContext.Value, Parameters!AX_UserContext.Value, "BIR_RptDrillThruMenuItem", "Display", "BIR_QueryReportExecutionTable", "CustName", "George")

Example #2 (Multi-parameter):

=Microsoft.Dynamics.Framework.Reports.BuiltInMethods.GenerateDrillThroughLink(Parameters!AX_ReportContext.Value, Parameters!AX_UserContext.Value, "BIR_RptDrillThruMenuItem", "Display", "BIR_QueryReportExecutionTable", "CustName", "George", "CustGroup", "60")

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

=Microsoft.Dynamics.Framework.Reports.BuiltInMethods.GenerateDrillThroughLink(
Parameters!AX_ReportContext.Value,
Parameters!AX_UserContext.Value,
<drill target menu item>,
<drill target menu item type>,
<table name>,
<field name>,
<field value>
[, <field name>, <field value>])
 
<drill target menu item>
The name of the menu item target for the hyperlink
<drill target menu item type>
The type of the menu item target for the hyperlink (e.g. “Display”)
<table name>
The name of the table referenced by the target menu item
<field name>
The name of the field in the table to restrict
<field value>
The value of the field in the table to restrict
Optional
Additional <table name> and <field name> pairs as needed

Comments

  • Anonymous
    June 03, 2018
    If you run into below error during code upgrade from 2012, Please remove the method and related references and redeploy."Designs/Report/Expression]:Report: Unidentifiable substring 'DrillSourceDocument' in expression. The parser reported error message: Unrecognized identifier."Also, please consider using our utility method documented in this blog for replacement.
  • Anonymous
    March 19, 2019
    The comment has been removed