Skip to Content
Author's profile photo Sreenivasulu Dasari

Safety belt for SAP BW as data source

Hi All,


I am explaining about safety belt and it’s importance.

Safety belt is used to restrict and protects against large result-set of data retrieval from SAP BW as data source, which may be requested by the customer by entering slip-up prompts values while running the report. Retrieval of larger result-set of data could cause high memory consumption and decrease the system performance.

To avoid these issues, safety belt can be activated and need to be correctly set according to the system sizing, and no mass data requests should be processed that could exceed the safety belt limit.

To avoid the below error messages while running the reports, should not increase the safety belt value.

    • BW System QBW: Result too large,
    • Failed to execute query: ‘java.lang.NumberFormatException: For input string
    • Large reports not displaying rows but data exists
    • MDDataSetBW.GetCellData  in webI reports

Safety belt value Increasing might have negative impact on the system performance and, if too high, cause out-of-memory dumps.  Instead of increasing safety belt values suggest end users webI is an ad-hoc interactive analysis tool not a data dump tool and if end-user need to explore with more than 1 or 2 million records we should suggest to use SAP Business Objects Explorer.

Please find the below document for “selecting the Right SAP Business Objects BI Client Product based on your business requirements for SAP BW Customers”

http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/2046e5d7-2894-2e10-c6a0-ca59dbd72b0a?QuickLink=index&…


So safety belt needs to be used cautiously and in sync with available system resources. If using BW Java with the same ABAP back-end, this parameter will also impact front-end.


To activate and reconfigure safety belt login to BW system, Run the T.code SE38 –> enter the program SAP_RSADMIN_MAINTAIN then execute.

/wp-content/uploads/2014/07/2_490988.png

Enter the Object: BICS_DA_RESULT_SET_LIMIT_MAX and value as 100000 then execute.

/wp-content/uploads/2014/07/1_490989.png

If the object (BICS_DA_RESULT_SET_LIMIT_MAX) is already maintained in the Table (RSADMIN) and try to insert another value for same object then will get the below failed message.


/wp-content/uploads/2014/07/3_490990.png

so it means Table(RSADMIN) have some value and if you want to update with new values you need to select radio button update and then execute.

/wp-content/uploads/2014/07/4_490995.png

Then will able to see the new settings values.

/wp-content/uploads/2014/07/5_490994.png

To cross check the object values maintained correctly or not

Go to T.code:SE16 -> RSADMIN -> enter the objects BICS_DA_RESULT_SET_LIMIT_DEF and BICS_DA_RESULT_SET_LIMIT_MAX

/wp-content/uploads/2014/07/6_491060.png

Now the safety belt is activated and set BICS_DA_RESULT_SET_LIMIT_DEF and BICS_DA_RESULT_SET_LIMIT_MAX as value 1000000 and protects against large results-set data that may be requested by the customer by entering miscellaneous prompts value while running the report.

Hope this will be helpful.

Thanks,

Sreeni



Assigned Tags

      8 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Andy Silvey
      Andy Silvey

      Hi Sreenivasulu,

      thanks for publishing this article, BI Safety Belt is a very useful important tool which I have seen successfully used at several customers.

      To compliment your article I am also adding the most relevant OSS Notes:

           1710626 - BEx Web 7.3x Safety belts and memory availability assurance .

           1622134 - Safety belt Results quantity is too large (Excel PDF)

           1127156 - Safety belt Result set is too large

      Best regards,

      Andy.

      Author's profile photo Sreenivasulu Dasari
      Sreenivasulu Dasari
      Blog Post Author

      Thank you Andy for your feedback.

      Author's profile photo Former Member
      Former Member

      Hi Sreeni,

      Thank you very good source of informattion

      Author's profile photo Krishna Chaitanya
      Krishna Chaitanya

      Thanks for sharing 🙂

      Author's profile photo Jacqueline Rahn
      Jacqueline Rahn

      Good information Sreeni,

      Thanks for posting.

      Author's profile photo Rama Shankar
      Rama Shankar

      Good Blog - Thanks Sreeni.

      I think that one more point has to be considered before making this Global setting change for BICS in BW backend. This is related to high data volumes where Webi results can be off if source data is filtered . i.e: If we set the value to 100,000 and Webi runs a Bex query that has data for 150,000 in BW but only retrieves 100,000 then the webi output is actually going to be missing 50,000 records. Is my statement correct? Please advise.

      Author's profile photo Rama Shankar
      Rama Shankar

      Hi Sreeni: I did some testing in the system and found that Webi will not return any data in the above example that I put forth when more than 100K records are retrieved from BW instead webi report will display error message which is cool! I will train my users to put in a narrower selection when they see this message. This will happen often with GL detail data.

      Author's profile photo Corey Hallisey
      Corey Hallisey

      Does the BW Safety Belt govern Microsoft’s Power BI tool as well?  Does it restrict the amount of data a Power BI Query can generate by calling a BEx Query?

      Or do only SAP reporting tools read/abide by the safety belt once it gets defined?

      We have an issue where sometimes our Power BI report developers kick off a “bad query” (no filter criteria etc.) and it causes the BW server they’re connecting to to run out memory, which in turn impacts process chains and other things.

      Just trying to find out a good mechanism to govern our Power BI report authors a bit from the system side.

      Thanks in advance for answering my question…or even if someone can point me in the direction of Power BI – BW info.

      Cheers!

      -Corey From Canada