The reporting service has the following two types of uses:
Applications use it to push new data sources.
End users use it to build reports based on the published data sources.
Applications register data source to reporting engine with APIs internally. You can find the APIs you need to integrate these applications with Common reporting in the Developer Console.
To access the Developer Console, you must click the user avatar located at the top right corner of the page and then select the following menu options:
Developer Console
>
Application: Core
>
Service: Common-query-service
.
The following report types are specified as part of the report template creation:
JavaScript Object Notation (JSON)
Comma-separated value (CSV)
Microsoft Excel (.xlsx)
The following data sources list are out-of-the-box, and you can select any of them to create a report template:
ecam:
Cost & Asset Management Data.
Insights:
Enterprise Insights Data.
orderHistory:
Order History Data of Enterpise Marketplace.
orderedServices:
Ordered Service Data of Enterprise Marketplace.
auditLog-budget-userInfo:
Schema to query Audit Logs, Budgetary Units and User Info.
all-in-one:
This uses graphql-gateway feature for stiching schemas and responses as received from various registered remote endpoints.
The Reporting Tool uses the GraphQL engine, a customized GraphiQL user interface, and the JMESPath syntax translator. For more information, see the following links:
Common reporting tool roles in Kyndryl Modern Operations Applications
The Common Reporting Tool supports the following two roles:
Report Administrator:
create the report template and generate and download the report from the report template.
Report Viewer:
generate and download the reports from the report templates.
The Report Administrator is typically a Kyndryl field engineer with experience writing GraphQL queries, while the Report Viewer is generally a business leader who is the original requestor for a report.
The generated report is only visible to users who generated it, this means that not even the Reports Administrator has access to reports generated by other users.
The Common reporting tool roles function in a way that the Report Administrators build reports for the Report Viewers to download.
Accessing the Common Reporting Tool
To access the Common Reporting tool, click the
Main Menu
icon, located at the top left side of your screen and then, click the
Admin
drop-down menu. Then, select
Reports
.
The Reporting Management page consists of the following tabs:
A list view of Report Template titled
Report Template
.
A list view of reports generated by the user titled
Generated Reports
.
A page to add external links to save reports titled
Add External Report
.
If the user is a Report Administrator, a button to create new Report Templates.
Creating report templates with Report Builder
Creating a report template involves writing queries to the GraphQL query language specifications. For more information about these specifications, see the following link:
GraphQl.
Always run GraphQL queries with the max limit of records set to 1500 to avoid out of memory issues due to pod memory limits.
To create a report template, complete the following steps:
Click the main menu and perform the following menu selections:
Reports
>
Report Management
, and then click
Create New Template
.
Give your Report Template a name.
Specify which single data source to map to your Report Template Builder by selecting one of the available data sources.
Click the
Template Builder
button at the top of the page to proceed to the Template Builder.
Write a query in the GraphQL user interface (UI). The system provides the following features to aid you in your task: Browse through the Explorer pane on the Template Builder's right side. It consists of all data fields per the selected Data Source. You can automatically write GraphQL queries simply by selecting data fields or manually in the query section. Please make sure you define your GRAPHQL operation name before defining the query. For example, assetLineItemsWithLimit10 is the operation name defined for below query of Cost and Asset Management as a datasource.
query assetLineItemsWithLimit10 {
assetLineItems(limit:10) {
ageDays
assetName
assetType
category
cost
country
region
providerName
}
}
Click
Save
and you are prompted to respond whether you want to associate the report with an Excel template. If so, select
Yes
from the drop-down menu and upload an Excel template file. Otherwise, select
No
and click
Save
to proceed.
Generating reports from report templates
To generate reports from report templates, perform the following steps:
From the
Report Management
page, locate the specific Report Template you want to use to generate a report from the list view using the search and filter options.
Click the
Overflow menu
icon to the right of each Report Template in the list view. Then select
Generate Report
.
In the pop-up screen, specify your report name and report type and click
Generate Report
.
A pop-up notification appears indicating a successful request to generate your report.
You can monitor the status of your request from the notification section at the top right of the screen. Once your report is generated, you can download it from the link provided on the notification message.
Using Excel templates with reports
You can convert output date to required structure or format by using the Transformation Template feature. Transformation Template is also used to structure other report formats like JSON or CSV.
When generating a report in Excel format, you can use an Excel template to transform the output into something that is easily understood. This means that you can upload the Excel template to get data (reports) in required format with Excel components like with charts and tables
The transformation process uses the JMESPath query language library. For the transformation process to work, the report template must output in Excel format. For more information, see the following link:
JMESPath.
To set the report template to output in Excel format, complete the following steps:
Create the report template as usual.
In the Transformation Template section, if your query involves more than three levels, you need to reduce that because Excel only has three available dimensions (rows, columns, and sheets). This section can also be used to rename the data fields to match those present in your Excel template if needed. In the example, the data type date is renamed to CreateDate to match the Excel template.
When you have completed writing your GraphQL queries and translation formatting, click
Save
at the top right. You are then automatically prompted to specify if you want to use an Excel template while generating your report.
Select
Yes
from the drop-down menu and upload an Excel file clicking the
Choose File
button.
Click
Save
. If no file is uploaded, you cannot proceed unless you upload an excel file or choose not to use an Excel template.
Once saved, you receive a notification indicating the report template was saved/updated.
Generate the report as usual to create an Excel report based on your template.
Generating reports using report templates
Once you have created a report template, you or another user with Report Viewer role can use that template to generate a report by completing the following steps:
Click the
Actions
icon next to the report and select
Generate Report.
Input your report name
Select the report type from the list of options including, JSON, CSV, or Excel.
You receive a pop-up notification message stating your request to generate a report is in process.
Once the report is generated, you can download it from the link provided in the notification titled
Report is ready for download
. You can download the report that is in
Ready
status in the generated report.
You can download and delete your generated report's history by clicking the
Generated Report
Tab at the top of the Report Template list view.
Managing report templates
To manage a report template, click the
Actions
menu next to the Report template and select
Edit Template
. You must have the Report Administrator role to perform the following actions:
Modify your Report Template
Save your Report Template
Adding a report link
You can add a link to an external service so that you can import data from an external report. This link can import reports generated by external tools or provided at external websites such as a provider's website. To do so, complete the following steps:
Click the
Add External Report
tab at the top of the Report Template list view.
Enter a name for the link in the
Link Name
field.
Enter the URL that you want to retrieve report information from in the URL field.
Click
Save
. You then receive a notification stating your report link was successfully created.