Resolving field conflicts in custom reports after upgrading to 21.3 or later


After upgrading to 21.3 or later, if you use custom reports, you might have field conflicts while importing the custom reports in the upgraded system. You must resolve the field conflicts for the custom reports to work properly after the upgrade. 

Complete the following steps to resolve the field conflicts:

  1. Resolve field conflicts in custom reports.
  2. Resolve Foundation references in custom reports.

To resolve field conflicts

  1. Export custom reports from your source system.
  2. Import the reports into your target system.
    Any field conflict errors that might occur are displayed, such as in the following example:
    21_3_SmartReportingFieldMappingErrors.png
  3. Edit the view and expand the form that has field conflicts.
    The following image shows the missing fields in red in the Primary Case form in the Case View.
    21_3_SmartReportingMissingFields.png
  4. Click each field and remap it to the correct field, and save it.
    21_3_SmartReportingMappingFields.png
  5. Run the report query and replace the deprecated fields.

To resolve the BMC Helix Innovation Suite Foundation data references in affected custom reports

  1. Run the following query to get a list of reports with BMC Helix Innovation Suite Foundation data references:

    select distinct rh.reportid,rh.reportname,rv.viewid,rv.viewname,rv.viewdescription,rft.columnname,rft.refrltshptypecode,rft.validationfunctionname from reportheader rh
    left join reportview rv on (rv.parentviewid = rh.viewid)
    left join reportfieldtemplate rft on (rft.viewid = rv.viewid)
    where rh.reportstatuscode = 'OPEN' and rv.viewname like '`AR System Schema`.`com.bmc.arsys.rx.foundation%'

    The list of reports with reference to com.bmc.arsys.rx.foundation are displayed.

  2. Open the report in which you find references to BMC Helix Innovation Suite Foundation data.
    For a complete list of the fields that are changed, see Mapping-of-BMC-Helix-Business-Workflows-fields-to-Foundation-records
    .
  1. Find the references for com.bmc.arsys.rx.foundation.

    SELECT DISTINCT
       `com.bmc.dsm.case-lib:Case`.`Display ID` AS C1,
      CASE
         WHEN `com.bmc.dsm.case-lib:Case`.`Category Tier 1` = `com.bmc.arsys.rx.foundation:Operational Category 1`.`ID` THEN `com.bmc.arsys.rx.foundation:Operational Category 1`.`Categorization Name`
         ELSE 'No Category'
      END,
      CASE
         WHEN `com.bmc.dsm.case-lib:Case`.`Category Tier 2` = `com.bmc.arsys.rx.foundation:Operational Category 2`.`ID` THEN `com.bmc.arsys.rx.foundation:Operational Category 2`.`Categorization Name`
         ELSE 'No Category'
      END
    FROM `AR System Schema`.`com.bmc.dsm.case-lib:Case`
    LEFT OUTER JOIN `AR System Schema`.`com.bmc.arsys.rx.foundation:Operational Category` AS `com.bmc.arsys.rx.foundation:Operational Category 1`
    ON (
       `com.bmc.dsm.case-lib:Case`.`Category Tier 1` = `com.bmc.arsys.rx.foundation:Operational Category 1`.`ID`
    )
    LEFT OUTER JOIN `AR System Schema`.`com.bmc.arsys.rx.foundation:Operational Category` AS `com.bmc.arsys.rx.foundation:Operational Category 2`
    ON (
       `com.bmc.dsm.case-lib:Case`.`Category Tier 2` = `com.bmc.arsys.rx.foundation:Operational Category 2`.`ID`
    )
     GROUP BY
     `com.bmc.dsm.case-lib:Case`.`Display ID`,
      CASE
         WHEN `com.bmc.dsm.case-lib:Case`.`Category Tier 1` = `com.bmc.arsys.rx.foundation:Operational Category 1`.`ID` THEN `com.bmc.arsys.rx.foundation:Operational Category 1`.`Categorization Name`
         ELSE 'No Category'
      END,
      CASE
         WHEN `com.bmc.dsm.case-lib:Case`.`Category Tier 2` = `com.bmc.arsys.rx.foundation:Operational Category 2`.`ID` THEN `com.bmc.arsys.rx.foundation:Operational Category 2`.`Categorization Name`
         ELSE 'No Category'
      END

    According to the Case Record Definition table in Mapping-Foundation-fields-for-custom-reports-after-upgrading-to-21-3-or-later, the category values are stored in the Case Record Definition form. The existing category values must be removed from the com.bmc.arsys.rx.foundation:Operational Category form.

  2. To remove the category values from the com.bmc.arsys.rx.foundation:Operational Category form, open the form in the edit mode.
  3. From the left bottom of the form, click Edit View.
    21_1_SmartReportingEditView.png
  1. Review the reports that will be modified when you edit the view, and click Edit.
  2. Delete the com.bmc.arsys.rx.foundation:Operational Category join.

    Important

    Joins from all the reports that the view is related to are deleted.

  3. Save and publish the view.
  4. On the Edit Report page, remove the category 1 references from the report as follows:

    Report with BMC Helix Innovation Suite Foundation data reference
    CASE
        WHEN `com.bmc.dsm.case-lib:Case`.`Category Tier 1` = `com.bmc.arsys.rx.foundation:Operational Category 1`.`ID` THEN `com.bmc.arsys.rx.foundation:Operational Category 1`.`Categorization Name`
         ELSE 'No Category'
    END
    Report after removing the category tier 1 reference to BMC Helix Innovation Suite Foundation data
    CASE
         WHEN `com.bmc.dsm.case-lib:Case`.`Category Tier 1` is not null THEN `com.bmc.dsm.case-lib:Case`.`Category Tier 1`
         ELSE 'No Category'
    END
  5. Repeat the steps for references in other reports to BMC Helix Innovation Suite Foundation data.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*