How to resolve the ERROR DBMAN 305: Error in reading the data of the InfoProvider

The issue is generally encountered when a query is executed in SAP BW. The query throws this error and does not display any data.

Issue:

Query based on a multiprovider is executed. Below error message is displayed:

error-reading-infoprovider

Root cause:

Query is not able to find SIDs for the data. This usually happens when we try to built a query on a DataStore Object having the setting “Never Create SIDs”.

Also a query on a Multiprovider which contains at least one DSO with the setting “Never Create SIDs” will throw this error.

Resolution:

Go to the Multiprovider, find the DSO with the setting “Never Create SIDs”. Change the setting to “SID generation during Reporting” or “SID generation during Activation”. Save and activate your DSO. Activate your Multiprovider.

Re execute your BEx query. The BEx query displays data without throwing any error.

Please Note: The setting “SID generation during Activation” should only be checked if we want to built queries on the DSO which will be used regularly by the users. In such cases, use a cube instead of DSO as cube has star schema which is optimized for reporting if your database is ORACLE. If you are on HANA, this rule doesn’t hold valid. This setting will increase the activation time of  your DSO during the data load process.

The setting “SID generation during Reporting” will create SIDs on the DSO data once the query is executed. This is optimal setting for one time adhoc queries based on the DSO. This setting will not hamper the data load times but it may create some time lapse in reports if the DSO has millions of records.