Enable Navigation from JasperReports to Custom Attribute Folder

After custom attribute folders are created in RiskVision, it is possible to navigate to them from JasperReports. To enable this feature, you need to be able to make edits to the .jrxml file which can be obtained by contacting Resolver Services.

To enable navigation:

  1. Open the .jrxml file.

  2. Add the below attributes to the <textfield> tag

    • hyperlinkType="Reference"

    • hyperlinkTarget="Blank"

  3. Add the required details about the target custom attribute in the below format for the idString.

    • idString= <rootNode:::parentNode:::required report relevant node details

  4. Save and close the file.

For example, the following is a sample edited to link to a custom string 6 with the value 666666. All changed values are bolded.

<text><![CDATA[string6]]></text>

           </staticText>

           </jr:columnHeader>

           <jr:detailCell style="table_TD" height="35">

           <textField isStretchWithOverflow="true" hyperlinkType="Reference" hyperlinkTarget="Blank">

           <reportElement x="0" y="0" width="100" height="35"/>

           <textElement textAlignment="Center"/>

           <textFieldExpression><![CDATA[$F{c4}]]></textFieldExpression>

           <hyperlinkReferenceExpression><![CDATA["/spc/page.jsp?workspace=ComplianceManager&app=Home&page=Tickets&idString=my:::String6:::666666"]]></hyperlinkReferenceExpression>

</textField>The 666666 string value in JasperReports.

The 666666 custom attribute in RiskVision after clicking the link in JasperReports.

The below table shows the various configurations that can be used for the idString value:

ROOT NODEPARENT NODEREPORT NODE
my/alldelegatedtrue (for delegated tickets)
my/alldelegatedfalse (for undelegated tickets)
my/allstatusopen
my/allstatusclosed
my/allstage[ticket stage name] (E.g., new, closed, etc.)
my/alltypecompensatingcontrolImplementation (for Compensating Control Implementation)
my/alltypeassetpolicyresolution (for Entity Control Resolution)
my/alltypeincident (for Incident Response)
my/alltypeother (for Other)
my/alltyperemediate (for Risk Assessment Remediation)
my/alltypemitigate (for Risk Assessment Reponse)
my/alltypethreatmitigation (for Threat Response)
my/alltypevulnerabilityresolution (for Vulnerability Resolution)
my/allstring [custom string number][the value of the string] (For example, if the custom string number was for countries, we would specify a country here like India, USA, etc.)

For example:

  • all:::delegated:::true;
  • all:::string10:::usa;
  • my:::type:::assetpolicyresolution;
  • my:::string10:::n/a (for null values); or
  • my:::stage:::new

Notes:

  • If any value in idString is wrong, then it will be redirected to the My Tickets folder.

  • If the user does not have privileges to view the tickets folder in question, they will be redirected to the My Tickets folder.

  • The idString value can accept the following special characters: $, -, ., :, _, or /

  • Custom strings can only go from String1 to String25 and node names can be no longer than50 characters.

  • Spaces in the node name should be replaced with %20.