This document is based on my experience with two issues we faced in two different production environments. This issue we faced with BW 3.x and 7.x objects.
Issue1 – In PSA we received some error records which were showing # value but which can be seen only in edit mode of record. In the cube data was failing in activating in some of the data packets. This issue started after support pack upgrade in one of over production environment. Earlier error data records used to move to PSA fledge and we used to edit and correct. After support pack upgrade those records stopped moving into PSA fledge.
SAP suggested us to implement following SAP note.
1734721 – Improved error handling in RSAR_TRFC_DATA_RECEIVED
Issue resolved by making following change in the Infopackage
Post above setting of Consistency check in transfer rule error data records started moving into PSA fledge. This setting can be done if we face issue with 3.x data flow objects.
Issue 2- We faced issue in another environment where DSO activation was failing continuously in 7.x data flow. Data was getting loaded successfully but it was failing during activation.
Above error was occurring due to non printable charaters generating due to usage of key like Alt,Tab etc.
We tried two function modules.
SCP_REPLACE_STRANGE_CHARS and SF_SPECIALCHAR_DELETE .
The function module worked in our case which changes character to .(Dot) value and you can enhance further to replace these dot.
Also you can put following ABAP code in your field routine to resolve your issue of data loads/activation due to non printable charaters.
replace all occurrences of regex ‘[^[:print:]]+(?!$)’ in Result with ` `.
replace all occurrences of regex ‘[^[:print:]]+$’ in Result with ”.
There are other methods we tried as follows
1. 1. Setting in error handling in case of Infopacakages
2. 2. Setting of error DTPs to get error data records in error PSA.