Working with the Dynamic Template Designer > Dynamic Template Drilldown Configuration
  
Version 10.1.01
Dynamic Template Drilldown Configuration
For a list of out-of-the-box report templates that have drilldowns that you can use as examples, see Examples of Dynamic Templates Containing Drilldowns.
Note: An ID field cannot have formatting if you want to use this field for a drilldown. Ideally, this field should be a hidden field. Or, you could include the ID twice, one would be hidden without formatting while the other could be displayed with formatting. The hidden field would then be used as the drilldown field. Note that some ID fields are added by the system and will therefore not have any formatting. For example, when a host name is dragged into a template, a related ID field is automatically added.
1. In the Dynamic Template Designer window, double-click a Selected Field to view the Field Configuration window.
2. In the Field Configuration window, click the Drilldown to icon to view the Drilldown Configuration window.
The Drilldown Configuration window lists reports that can be selected as a target for the drilldown. This list includes the following characteristics for each of the drilldown report templates:
Menu Group: Displays the location of the drilldown report template.
Has Filter: Indicates if the drilldown report template has filters applied. This is relevant because the data displayed in the drilldown report may differ from its parent report, due to the extra filtering. Therefore, the set of data may be different between the two reports.
Has Aggregation: Indicates if the drilldown report has Oracle aggregation functions applied (see Aggregation Functions). This may not be what you want, if the target of the drilldown has an aggregation that is different from its parent.
3. Select a report from the list that will be the target of the drilldown.
To remove or de-select a drilldown report, press the Ctrl key and click the previously selected report.
4. Instead of selecting a report template from the drilldown reports list, you may want to specify a custom drilldown URL. In the Drilldown Configuration window, select Custom Drilldown and click OK.
5. In the bottom of the expanded Drilldown Configuration window, enter a URL expression. See Custom Drilldowns.
Note that there currently is no validation on the syntax of this expression in the Dynamic Template Designer.
 
6. See Drilldown Condition and Drilldown Parameters.
Custom Drilldowns
The following examples illustrate how to specify a custom drilldown.
Example of a Custom Drilldown to the Host Details Report by Job ID
Example of Custom Dual Drilldowns
Example of a Custom Drilldown to the Array Detail Report
Example of a Custom Drilldown to a Dynamic Template - Job Summary
Example of a Custom Drilldown to the Host Details Report by Job ID
See also, Examples of Dynamic Templates Containing Drilldowns.
Be sure that the field used for the drilldown (in this example, S) does not have any formatting applied.
systemName=backupDetails&jobId=${row['S']}
Where:
systemName
systemName - The required prefix for drilldowns to out-of-the-box report templates. To identify the systemName, templateName, or templateInstanceID of an existing report template, generate that report and in the active browser window type: Ctrl-Alt-T
templateName - The required prefix for drilldowns to custom report templates designed in the SQL Template Designer.
templateInstanceID - The required prefix for drilldowns to report templates created in this Dynamic Template Designer.
<displayReportName>
Insert the specific report system name or template name or template instance ID, along with the variable that is to be supplied by the parent report. Note that a string prefaced with an ampersand (&) designates a parameter that will be passed to the report.
To identify the systemName, templateName, or templateInstanceID of an existing report template, generate that report and in the active browser window type: Ctrl-Alt-T
=${row['<field_name>']}.data
The syntax required for the field name specification; substitute a value for <field_name>.
In this example, S is the alias of the Job ID field.
Example of Custom Dual Drilldowns
See also, Examples of Dynamic Templates Containing Drilldowns.
To identify the systemName, templateName, or templateInstanceID of an existing report template, generate that report and in the active browser window type: Ctrl-Alt-T
This more advanced example illustrates how multiple drilldowns can be specified, with conditions.
${row['F'] == 'fb' ? 'templateInstanceId=25200' : 'systemName=listCKDVolumeUtilSummary'}&extendedPoolIds=${row['D']}&reportScope=&lunStatus=C
In this example, if the value of F is fb, then drill down to the report with report ID 25200 (the LUN Utilization Summary); otherwise, drill down to listCKDVolumeUtilSummary (the IBM CKD Volume Summary).
Example of a Custom Drilldown to the Array Detail Report
See also, Examples of Dynamic Templates Containing Drilldowns.
To identify the systemName, templateName, or templateInstanceID of an existing report template, generate that report and in the active browser window type: Ctrl-Alt-T
This example shows a drilldown to the Array Detail report.
systemName=arrayDetail&ignoreParent=true&arrayId=${drillDownParam}&arrayIds=${drillDownParam}&tryIndex=3&historyDays=3&dateRange.startDateTime=1359763535166&dateRange.finishDateTime=1390867535166&groupById=13
Where:
 
tryIndex
Used to control the top N rows displayed in aggregate and disk volume utilization: tryIndex=3&
historyDays
Used to control top N rows displayed in the volume utilization: historyDays=3&
dateRamge
Times are seconds from epoch:
dateRange.startDateTime=1359763535166&dateRange.finishDateTime=1390867535166
groupById
groupById = 13 means group by month
GROUP_BY_HOUR: 10
GROUP_BY_DAY: 11
GROUP_BY_WEEK: 12
GROUP_BY_MONTH: 13
GROUP_BY_QUARTER: 14
GROUP_BY_YEAR: 15
Note that if you are specifying this drilldown configuration in the SQL Template Designer, the syntax is:
systemName=arrayDetail&ignoreParent=true&arrayId=${row['storage_array_id'].data}&arrayIds=${row['storage_array_id'].data}&tryIndex=3&historyDays=3&dateRange.startDateTime=1359763535166&dateRange.finishDateTime=1390867535166&groupById=13
Example of a Custom Drilldown to a Dynamic Template - Job Summary
See also, Examples of Dynamic Templates Containing Drilldowns.
To identify the systemName, templateName, or templateInstanceID of an existing report template, generate that report and in the active browser window type: Ctrl-Alt-T
 
This example shows the configuration of a drilldown to the Job Summary report.
templateInstanceId=150&supportsPagenation=true&jobStatusIds=1&dateRange.startDate=${row['start_date_char']}&dateRange.startHour=${row['start_hour_char']}&dateRange.startMinute=0&dateRange.startSecond=0&dateRange.finishDate=${row['finish_date_char']}&dateRange.finishHour=${row['finish_hour_char']}&dateRange.finishMinute=59&dateRange.finishSecond=59&dateRange.useFinishTime=false&backupServerIds=${row['server_id']}&parentJobOnly=false&ignoreRetries=true
The following parameters are supported for Job enterprise object drilldowns:
backupServerIds
clientIds
dateRange – dateRange is a complex Oracle type. Use the following format to pass values
dateRange.startDate=${row['START_DATE']}&amp;dateRange.startHour=${row['START_HOUR']}&amp;dateRange.startMinute=${row['START_MIN']}&amp;dateRange.startSecond=${row['START_SEC']}&amp;dateRange.finishDate=${row['END_DATE']}&amp;dateRange.finishHour=${row['END_HOUR']}&amp;dateRange.finishMinute=${row['END_MIN']}&amp;dateRange.finishSecond=${row['END_SEC']}&amp;drilldownClientIds=${row['CLIENT_ID']}&amp;dateRange.useFinishTime=true&amp
jobTypeIds
jobStatusIds
statusExcludeIds
includeFileList – 0 or 1
filePathName
policyNameFilter
mediaType
parentJobOnly – 0 or 1
backupWindowId
numberOfConsecutiveErrors
includeMasterServers – 0 or 1
drilldownClientIds – If this was passed in, then the original scope is ignored.
groupById
Use the following values
GROUP_BY_HOUR: 10
GROUP_BY_DAY: 11
GROUP_BY_WEEK: 12
GROUP_BY_MONTH: 13
GROUP_BY_QUARTER: 14
GROUP_BY_YEAR: 15
 
Drilldown Parameters
See also, Examples of Dynamic Templates Containing Drilldowns.
You can configure additional conditions by selecting parameters, operations, and values to control when the drilldown will be active, as shown in the following example.
Note: This configuration is available only from a field that has an aggregated function and a drilldown to a report template that was configured with the Dynamic Template Designer.
Examples of Dynamic Templates Containing Drilldowns
The best way to learn how to define drilldowns in a report template is to learn by example.
The following list includes a sampling of the out-of-the-box reports that are shipped with the product, along with a few examples of the relevant information to help you isolate an example of the functionality that you are trying to implement.
To help you identify a field in the template that contains this functionality, the following convention is used in the list of report templates.
Product:Alias combines the values listed in the template. In the following example, the selected Product is All, while the selected Alias is F.
Some templates are vendor product-specific, in which case you may have a Product:Alias such as EMC Avamar:A
 
Report Template
Report Type
Product: Alias
Caption
Field Type
Custom Drilldown or Drilldown Condition
Backup Manager Reports
Backup Executive Summary
Table
All: F
Failed
Column
Condition
 
 
All: I
Failed
Column
Custom with Condition
Job Status Summary
Bar
All: T
Failure
Bar
Drilldown
Job Summary
Table
Veritas NetBackup: P1
Client
Column
Custom
Job Volume Summary
Bar
All: D
# of Files Backed Up or Restored
Line
Drilldown
 
 
All: C
Backup/Restore Volume
Bar
Drilldown
Job Duration
Bar
All: F
Job Duration
Bar
Drilldown
Error Log Summary by Server
Table
All: E
Error Occurrences
Column
Drilldown
 
 
All: F
Last Error Date
Column
Custom
Error Log Summary by Client
Table
All: A
Client
Column
Drilldown
 
 
All: F
Error Occurrences
Column
Drilldown
 
 
All: G
Last Error Date
Column
Custom
Largest Backup Volume
Pie
All: C
Job Size
Sector
Condition
Job Summary by Server
Table
Veritas NetBackup: W
Errors
Sector
Custom with Condition
Data Domain Reports
Data Domain Snapshot History
Table
EMC Data Domain: B
System
Column
Drilldown
Capacity Manager Reports
Array Executive Summary
Table
All: O
Frames
Column
Drilldown
LUN Utilization Summary
Table
All: O
# of Hosts
Column
Condition
Array Port Utilization
Table
All: O
# of Hosts
Column
Drilldown
NetApp Cluster-Mode Summary
Table
NetApp Cluster-Mode: G
# iSCSI Ports
Column
Custom with Condition
Array Utilization Summary
Table
All: N
# UnAllocated
Column
Condition