DATA_BUFFER_EXCEEDED error when calling RFC_READ_TABLE?
DATA_BUFFER_EXCEEDED
only happens if the total width of the fields you want to read exceeds the width of the DATA
parameter, which may vary depending on the SAP release - 512 characters for current systems. It has nothing to do with the number of rows, but the size of a single dataset.
So the question is: What are the contents of the FIELDS
parameter? If it's empty, this means "read all fields." CDHDR
is 192 characters in width, so I'd assume that the problem is CDPOS
which is 774 characters wide. The main issue would be the fields VALUE_OLD
and VALUE_NEW
, both 245 Characters.
Even if you don't get developer access, you should prod someone to get read-only dictionary access to be able to examine the structures in detail.
Shameless plug: RCER contains a wrapper class for RFC_READ_TABLE
that takes care of field handling and ensures that the total width of the selected fields is below the limit imposed by the function module.
Also be aware that these tables can be HUGE in production environments - think billions of entries. You can easily bring your database to a grinding halt by performing excessive read operations on these tables.
PS: RFC_READ_TABLE
is not released for customer use as per SAP note 382318, and the note 758278 recommends to create your own function module and provides a template with an improved logic.
Use BBP_RFC_READ_TABLE instead