Cloud Reporting User Guide

Attention: SAP Field Service Management documentation is now available at the SAP Help Portal. On 31 December 2020, docs.coresystems will no longer be available. Until that time, documentation will NOT be updated in docs.coresystems.

Introduction

SAP Reporting allows you to design and build reports for your SAP FSM account. You can get a list of service calls created in the last 30 days in a nice PDF form.

You can generate any of the embedded reports using any of the client applications or by using the SAP FSM Data API directly. We also encourage you to create your own custom reports using Jaspersoft Studio and SAP Report Designer.

Latest Supported Version of Jaspersoft Studio: 6.15.0


Limitations

Please note the following reporting limitations:

We currently have a hard limit for reports of the following:

  • 5 minutes, or
  • 1000 pages

Any report that exceeds one of these limits cannot be retrieved from any of our applications, e.g. mobile or A&R.


Definitions

Report Design A report design represents some parts of the final report. It defines what data will be included in the report and how that data will be arranged.
Report Template A set of artifacts used to produce the final report. Report templates contain one or more report designs, style files, translation files and images.
Report A document generated based on a report template, using the data from your account.

Prerequisites

Before proceeding with this user guide you should have a good understanding of JasperReports. We recommend reading JasperReports Tutorial, which covers most of the basics. Basic knowledge of SAP FSM Data API is also needed.

You can also check some videos with tutorials.


Building Reports

Reports can be built from the client applications or by directly calling the SAP FSM Data API.


Building Reports with Client Applications

You can use any of the SAP client applications to build a report of your choice. If at least one report template is defined for a given object type, the Build Report button will be displayed. Some report templates define parameters which can be used to define the data or the final look of the report.


Building Reports using the API

The SAP FSM Data API delivers a set of web services for building reports. A report can be built out of an existing report template only.

HTTP URL

POST https://host[:port]/api/reporting/v1/build

HTTP Headers

Property Value
Content-Type Defines in which format the parameters will be send. Either ‘application/json’ or ‘multipart/form-data’.

HTTP Body (application/json)

{
  "reportTemplate": string, // the cloud ID (non-embedded templates) or the name of the report (embedded templates)
  "reportLanguage": string, // language of the report
  "reportParameters": { // report parameters passed to the reporting engine; can be used to specify the checklist instance or to pass some values to queries inside the report definition; this object must comply with the json schema stored in the parameters schema field
     string: object,
     ...
  }
}

HTTP Body (multipart/form-data)

reportTemplate=String&reportLanguage=String&reportParameters.key1=String&reportParameters.key2=String

Example (application/json)

{   "reportTemplate": "sales",   "reportLanguage": "en",   "reportParameters": {
"objectId": "01a143bc5d8a49de8e26cc8deec34ad8",
"objectType": "SALESORDER",
"showPrices": true   } }

Example (multipart/form-data)

reportTemplate=sales&reportLanguage=en&reportParameters.objectId=01a143bc5d8a49de8e26cc8deec34ad8&objectType=SALESORDER&showPrices=true

Embedded Report Templates

Every SAP FSM account comes with a set of embedded report templates covering the most common use cases. Currently those templates can’t be modified or deleted by users.

Embedded report templates can be modified by the SAP support team only.

Name Object Types Description
checklist Checklist Standard checklist reports combining information for a given checklist instance and referenced checklist template
sales Sales Order, Sales Quotation Standard sales document report
serviceCall Service Call Standard service call report

Creating Report Templates

Report templates contain report designs, style files, translation files and images. All artifacts can be created manually or mastered using Jaspersoft Studio.

Jaspersoft Studio is a free, open source, eclipse-based report designer. Report Designer is a free plugin for Jaspersoft Studio which adds support for SAP Reporting Together they deliver the most simple way of creating report templates.

In Jaspersoft Studio you create report designs, choose data sources and define the data using queries. The data source can represent any data, but most often it is a relational database. In SAP you never have direct access to the underlying database (security and permission concerns). Thus the data access has to be defined on top of SAP FSM Data API.


Report Parameters

Report parameters are useful for passing data to the report engine during the build phase. A report can have zero or more parameters. You can define them in the Outline window when using the Design view.



Alternatively, you can use the Source view. Parameter declaration is as simple as follows:

<parameter name="parameter1" class="java.lang.String"/>

Depending on the type of parameter, SAP client applications may ask the user for a value. Currently, SAP Reporting supports the following classes of parameters:

  • java.lang.Boolean
  • java.util.Date
  • java.lang.Double
  • java.lang.Float
  • java.lang.Integer
  • java.lang.String

Report Query String (CoreSQL)

The CoreSQL queries are similar to SAP FSM Data API calls. They define what data needs to be retrieved from your SAP FSM account. You can define only one query string per report design. You can use subreports to group different kinds of data.

Imagine a URL to retrieve a checklist instance with a given ID using the SAP FSM Data API call:

https://eu1.dc.coresystems.com/api/data/v4/ChecklistInstance?query=id="34a88076d28b4de99a2dcf68c029193f"&dtos=ChecklistInstance.12

A CoreSQL query doing the same thing might look like this:

ChecklistInstance ? query = id = "34a88076d28b4de99a2dcf68c029193f" & dtos = ChecklistInstance.12

This CoreSQL query omits all server and connection information as well as credentials from the web service URL. For more examples and documentation, please refer to SAP FSM Data API.

Some query parameter values are only known during the build process. You can use report