Running the migration tool
The migration tool migrates the reports to BMC Helix Dashboards in the same folder structure as in BMC Helix ITSM: Smart Reporting. If a folder does not exist in BMC Helix Dashboards, the migration tool automatically creates the folder. For example, if a report resides in the BMC Remedy Operational Reporting folder in BMC Helix ITSM: Smart Reporting , the tool migrates it into the same folder in the BMC Helix Dashboards. We recommend that you validate the migrated reports after the migration is complete and make sure that they were migrated successfully.
The following report types can be migrated by using the migration tool:
- Auto
- Bar charts:
- Cylinder
- Histogram
- Horizontal Bar
- Horizontal Bar 3D
- Horizontal Cylinder
- Layered Bar
- Layered Horizontal Bar
- Proportional Bar
- Stacked Horizontal Bar
- Stacked Vertical Bar
- Stacked Vertical Bar 3D
- Vertical Bar
- Vertical Bar 3D
- Numeric
- Value
- Pie charts:
- Multi Pie
- Pie
- Pie 3D
- Ring
- Tabular
To manually copy the reports that cannot be migrated by using the migration tool, see Copying-reports-and-dashboards-from-BMC-Helix-ITSM-Smart-Reporting-to-BMC-Helix-Dashboards.
Before starting migration, you must understand the end-to-end process for migrating the reports:
Before you begin
Make sure that the following prerequisites are met:
- Assess the BMC Helix ITSM: Smart Reporting environment. For more information, see Assessing-the-BMC-Helix-ITSM-Smart-Reporting-environment.
- Identify the reports that you want to migrate. You can run the SQL queries to determine the reports that you want to migrate. For more information, see Assessing-the-BMC-Helix-ITSM-Smart-Reporting-environment.
- Apply the following hotfixes based on your Smart Reporting version:
- If you are using the Smart Reporting 21.3 version, apply 21.3.03 HF5.
- If you are using the Smart Reporting 21.05 version , apply 21.05.03 HF8.
- You should update your Yellowfin license to the latest version if you have Smart Reporting 20.02 or 20.08 versions.
- In the AR system server, create a user with a floating or fixed license type. This user should also have access to all the reports in Smart Reporting. Assign the following roles and permissions to the user in Smart Reporting:
Add Web Service Permission to a role and assign the role to the newly-created user. For information about creating and assigning roles and permissions, see Managing Smart Reporting user roles.
Add super user permission to the role that is assigned to the newly-created user. For more information, see Granting Content Super User permission to access and manage all content. The super user permission helps you to migrate the private reports or reports residing in a secured folder. You must add the required permissions for those reports after migrating to BMC Helix Dashboards. For more information about adding permissions, see Adding dashboard permissions.
After assigning the super user permission, the newly-created user will be able to migrate private reports and reports from the secured folders.Add the newly-created user to the default client organization. For more information, see Defining a Smart Reporting administrator for the default client organization.
Set password for the newly-created Smart Reporting user.
Change the password for the newly-created user.
For more information, see Changing the Smart Reporting super admin password after installation.
- The BMC Helix Dashboards tenant is updated to version 22.2 or later.
- OpenJDK 11 is installed on the system where you want to run the migration tool.
- JAVA_HOME path is set where you want to run the migration tool.
- We recommend using the Google Chrome browser. With this browser, the tool can migrate the report that includes a SQL query containing more than 4000 characters. The tool uses Selenium and Google Chrome to fetch the report query from BMC Helix ITSM: Smart Reporting UI because such large queries are not stored in the repository database.
- Make sure that the Home page opens after you log in to BMC Helix ITSM: Smart Reporting with a user configured in the cliconfig.properties file. If a different screen such as password change opens, change the password and log in to BMC Helix ITSM: Smart Reporting again.
- (For SSL-enabled environments) Import custom certificates from BMC Helix ITSM: Smart Reporting and BMC Helix Dashboards:
- Export all the configured certificates by using your browser in the base-64 encoded X.509 format.
- Run the following command to create a truststore file:
keytool -import -file <certficate_file_name> -alias <alias_name> -keystore truststore
Example: keytool -import -file C:\cascerts\SRRoot.cert -alias srroot -keystore truststore - Run the same command for all other certificates by changing the certficate_file_name and alias_name.
- Copy this truststore file to the same folder where the tool is extracted.
- Add the additional truststore password parameter in the file or generate it by using CLI.
To download and extract the migration tool
Log in to BMC Support Central and access the Knowledge article 000398185.
- Download the migration tool BMC_Helix_ITSM_Smart_Reporting_to_BHD_Conversion_Tool from the Attachments section of the knowledge article, and extract to a new folder.
To retrieve the list of reports for migration
If your organization has a large number of reports to be migrated, you can retrieve the list of reports in a CSV file. The report list can be retrieved either for the tabular report type or for all report types in your account. The following information is captured in the CSV file:
- Report Name
- Report ID
- Folder Name
- Subfolder Name
- Last Modified By
- Report Type
- Last Modified Date
To retrieve the list of the tabular reports
Run the following command to retrieve the list of the tabular reports in your account:
To retrieve the list of all reports
Run the following command to retrieve the list of all reports in your account:
To run the migration tool
After the migration tool is downloaded and extracted, specify the parameters of BMC Helix ITSM: Smart Reportingand BMC Helix Dashboards in the cliconfig.properties file from the extracted folder.
Create a CSV file in the extracted migration tool folder and specify the name of the reports that you want to migrate exactly the way they appear in BMC Helix ITSM: Smart Reporting.
You can get the name of the reports from the list that you retrieved in To retrieve the list of reports for migration.
If the BMC Helix Dashboards tenant contains a report with same name, specify the report ID along with the report name separated by comma in the CSV file; for example, Compliance,60932. If there are multiple reports with similar names, the migration tool appends the report ID to the report name.- Open the command prompt and run one of the following commands to generate the Smart Reporting metadata for the reports listed in the CSV file:
If you want to generate the Smart Reporting metadata in the extracted migration tool folder, run the following command:
conversioncli.bat --action=getSRmetadataIf you want to generate the Smart Reporting metadata in a different folder, run the following command:
conversioncli.bat --action=getSRmetadata -fp "<output json file location (optional param)>"
If you do not want to specify the password in the cliconfig.properties file, comment out the password parameters in the cliconfig.properties file, run the following command, and enter the passwords when prompted:
conversioncli.bat -a getSRmetadata -srap -srrpThe above commands generate the following files:
- reportmeta.json: Contains the details of each report, such as report attributes, filters, SQL, category, subcategory, report type.
You can validate the reportmeta.json file to ensure that all the reports identified in the CSV file have been successfully included for the migration. - sr_bhd_conversion.log: Contains all entries of the migration activity.
reportstatus.csv: Provides the status of each report.
- reportmeta.json: Contains the details of each report, such as report attributes, filters, SQL, category, subcategory, report type.
- Run one of the following commands to migrate reports to BMC Helix Dashboards:
If the Smart Reporting metadata is stored in the extracted migration tool folder, run the following command from that folder:
conversioncli.bat --action=createDashboardsContentIf the Smart Reporting metadata is stored in a different folder, run the following command:
conversioncli.bat --action=createDashboardsContent -fp "<output json file location (optional param)>"If you do not want to specify the password in the cliconfig.properties file, comment out the password parameters in the cliconfig.properties file. Run the following command and enter the password when prompted:
conversioncli.bat -a createDashboardsContent -bhdap
Validate the migration
After running the migration tool, check the log summary report in the sr_bhd_conversion.log file. This report provides the details about the conversion rate of the reports from BMC Helix ITSM: Smart Reporting to BMC Helix Dashboards. Take any necessary actions based on the details in the log file. We recommend that you validate the visualization, formatting, and filters in the migrated dashboards. You can manually update the dashboards if they have not been migrated appropriately. Also validate the existing cross-launch links, report schedules, and update them, if needed.
Results of the migration
After migrating the reports from BMC Helix ITSM: Smart Reporting to BMC Helix Dashboards, view the migrated reports in the BMC Helix Dashboards.
After migrating the reports to BMC Helix Dashboards, you can configure additional panels and queries on your dashboards. For more information, see Creating-and-customizing-dashboards.
Limitations of the migration tool
The migration tool has the following limitations:
Issue symptoms | Cause | Resolution |
---|---|---|
BMC Helix Dashboards fails to migrate the cross-launch URLs. | After migrating the reports, the cross-launch URLs will not be functional anymore. | Manually add the cross-launch URLs in the migrated reports by using BMC Helix Dashboards. For more information, see Adding-cross-launch-links-from-BMC-Helix-Dashboards-and-third-party-applications. |
BMC Helix Dashboards sets the predefined date and time range to 30 days after migration. | The reports in BMC Helix ITSM: Smart Reporting contain a different predefined date and time range. | Set the required date and time range by using BMC Helix Dashboards after migration. For more information, see To configure time range. |
BMC Helix Dashboards fails to display the calculated field names after migration. | The BMC Helix Dashboards fails to render the correct labels for calculated fields. | Manually set the calculated field names in BMC Helix Dashboards after migration. For more information, see Service-Management-query. |
BMC Helix Dashboards fails to display data for reports with a filter condition, and fails to display data for filters. | The report from the BMC Helix ITSM: Smart Reporting system has a filter defined for complex queries or the report contains cascading filters or calculated fields. | After migrating the reports, update the filters by using variables, and manually update the SQL query to see the correct list of values in the filters. |
BMC Helix Dashboards fails to display the field names in pie charts. | This issue occurs due to a Grafana limitation. | Edit the dashboard panels to specify the field names in pie charts. |
BMC Helix Dashboards represents multiple slices in pie chart in same color. | This issue occurs due to a Grafana limitation. | There is no workaround at this time. |
Conditional formatting and table calculations are not migrated. | The report in BMC Helix ITSM: Smart Reporting contains conditional formatting and calculation within a table. | There is no workaround at this time. |
The migration tool fails to migrate reports which are not in English locale. | The migration tool only migrates reports which are in English locale. | There is no workaround at this time. |
Troubleshooting
This section helps you troubleshoot some errors that might appear while using the migration tool:
Issue symptoms | Cause | Resolution |
---|---|---|
Report does not exist in BMC Helix ITSM: Smart Reporting. | The report name that you specified in the CSV file is not the same to the name in the BMC Helix ITSM: Smart Reporting system. | Specify the report names in the CSV file exactly as they appear in BMC Helix ITSM: Smart Reporting. |
Preconditioned Failed - Dashboard already exists with status code: 412. | A dashboard already exists in BMC Helix Dashboards with the same name. | Rename the report in BMC Helix ITSM: Smart Reporting before migration. |
Exception: Report user specified has no access to the requested report - [Error code: 66]. | The user does not have permissions to view the report in BMC Helix ITSM: Smart Reporting. | Provide necessary permissions to the user to view all reports. For more information, see Managing Smart Reporting user roles. |
Exception occurred while executing query [Error code: -2]. | This error message is displayed when the migration tool connects to the database. | You can ignore this error message. |
BMC Helix Dashboards fails to display the appropriate column names with advanced functions configured. | The specific column has an advanced function configured. | To resolve this issue:
|
BMC Helix Dashboards fails to display the appropriate column names with subqueries. | The dashboard has subqueries configured. | To resolve this issue:
|
BMC Helix Dashboards fails to display the correct order of the fields in Cross-tab reports after migration. | The reportmeta.json file changed the order of field names. | To resolve this issue:
|
The Smart Reporting metadata conversion summary displays the total number of reports without SQL query. | The BMC Helix ITSM: Smart Reporting contains large SQL queries. | There is no workaround at this time. |
The following error message is displayed: Error message: 552: The SQL database operation failed., operator does not exist: date >= bigint | The values used by the date picker and date function do not match. | Update the range template variables while using the date filter. Update the condition as follows: DATE(`HPD:Help Desk`.`Submit Date`) BETWEEN '${__from:date:YYYY-MM-DD}' AND '${__to:date:YYYY-MM-DD}' |
The DATEDIFF() function returns inappropriate values. | Epoch values are not fetched as the values are hard-coded. | While using DATEDIFF() with hard-coded date values, epoch values are expected. For the current date, you can replace the hard-coded values by the currentDate() function Example: DATEDIFF('day', '2023-09-25', `CHG:Infrastructure Change`.`Scheduled End Date`) needs to be changed to -> DATEDIFF('day', currentDate(), `CHG:Infrastructure Change`.`Scheduled End Date`) |
The following message is displayed: Data has no <name> field. Check the Query and Value field configurations. | Some column names are not supported. | Rename all the columns that are not automatically assigned the appropriate column names. The missing field might be one that was not assigned a column name by the migration utility. |
Blank drop down type filters are displayed. | In some cases, filter values are not fetched due to data size causing the filter query to time out. | Change the filter type to text box and enter the required filter value. |
Known issues
For a list of known issues pertaining to the migration tool, see Known-and-corrected-issues.