cancel
Showing results for 
Search instead for 
Did you mean: 

SAP Analytics Cloud - error extracting Employee Times report from Business ByDesign

sssridhar
Explorer
236

Hi,

Selected the Employee Times report to create a new model. As soon as select the report and select ok, receiving the following error. "The report Employee Times : Overtime requires a mandatory filter and cannot be accessed. Please recreate the report" , Can extract other reports and only reports Employee Times not working.

Attached the screenshot of the error.

Thanks, Sridhar

View Entire Topic
olga_bittner2
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi all,

The report contains the key figure group "Employee Times: Overtime Overview" (technical ID: HCMTLMU01_GRI_13 ) which is of type Grid. This key figure group cannot be supported by OData, and as a consequence, it cannot be called from SAC, since this integration is using OData.

To solve this, the report can be copied and the key figure group should be removed. Instead, please select key figures only (no key figure groups).

Note that when building custom reports on the data source "Employee Times", you should always use the "Key Date" characteristic and set it up as a variable. This will ensure optimal performance in your report.

Kind regards

Olga

BEKOStan
Active Participant
0 Kudos

Hello olga.bittner2 ,

thank you for this information. Completely new to me.

Do you know where this is documented? At the moment, I'm trying to get DataSource HCMTLMU01 into SAC via OData API for DataSources but it's more or less trial and error and no profund understanding what exactly is wrong/happening (I get lots of UUIDs for example and don't know why).

If you know of HOWTOs or Best Practices (even outdated ones) concerning extending ByD by SAC, I would be very thankful for such informations.

Best regards

Andreas

olga_bittner2
Product and Topic Expert
Product and Topic Expert

hi Andreas,

I find a good way of troubleshooting this is to query the respective report / data source through OData in a browser first, before creating an SAC query. I tried this with the report "Employee Times: Overtime Overview", and got an error message saying "mandatory filter is missing". This led me to the following KBAs:

https://launchpad.support.sap.com/#/notes/2419785

https://launchpad.support.sap.com/#/notes/2336518

The second one explains about key figure groups.

I also did a quick search on UUIDs being returned via OData when querying data sources and found this:

https://launchpad.support.sap.com/#/notes/2991040 (basically saying that in data sources, this is correct, but if you query a report you will get the text instead of the UUID).

I find the following blogs quite helpful:

https://blogs.sap.com/2015/03/10/odata-for-sap-business-bydesign-analytics/ (about OData in ByD in general)

https://blogs.sap.com/2017/09/27/extending-sap-bydesign-analytics-using-sap-analytics-cloud/ (about ByD - SAC specifically)

A few more general points when it comes to data sources and OData (you may be aware of them already of course):

  • How to set up the connection from SAC to ByD for data sources: https://launchpad.support.sap.com/#/notes/2913312
  • When maintaining the user details in the connection, enter the technical user from the ByD communication arrangement.
  • The $skip parameter is only supported in OData / data sources if the data is non-aggregated. This means that certain fields need to be included in the list of fields that you request. However, when SAC sends a request to BYD, it automatically adds paging to enhance the performance of the request. So, if a data source has more than 100 records, SAC will create pages: $top=1000 first, then $skip=1000&$top=1000 , then $skip=2000&$top=1000 etc. This will run into errors in SAC unless you specify certain fields. Check https://launchpad.support.sap.com/#/notes/2905293 and https://launchpad.support.sap.com/#/notes/2732213 for reference.
  • Some data sources contain a lot of data when the usual filters of a report are not available. Alternatively, sometimes data can only be retrieved when certain selections are set - this happens in a report through mandatory selections, but in a data source you might run into issues. In those cases, a filter should be set in the OData query. Examples would be financial data sources which often require selections (i.e. filters in OData) on the company & set of books, or in HCM data sources which may need a restriction on the calendar day for example.

Hope some of this is helpful.

Kind regards

Olga

    BEKOStan
    Active Participant
    0 Kudos

    Dear olga.bittner2 ,

    thank you very much for those provided links. Especially all the 'launchpad'-links are gold for me. The 2 'blogs' by Heusermann/Kraus were already known to me. I think I will deep dive into this knowledge in the next few days.

    I really appreciate this shared knowledge

    best regards

    Andreas