Sounds like you're manipulating the data in your load from SAP or during your save to QVD, possibly in your load from QVD. A straight forward set of instructions wouldn't do that, IMO. Can you share some of the code you're using?
The 2 records in question look like this in the source BW table so the WHERE clause is being met for both:-
But in QlikView the E is dropped from one of them:-
It really has me puzzled. I have dropped a few of the fields from the view in these screen shots, but basically the two records exist in BW with only 2 fields that have a different value... the Material Code (one ends in E) and the EAN/UPC field has a different value. All other fields are the same value.
Something I'd recommend checking - remove the DROP TABLE section of your QVD loader, and check the data as originally loaded into QV (before it enters a QVW) by viewing it there in a listbox. That should give you an idea of whether the correct data ever made its way into QV or not.
Are you loading from the exact same table as you're viewing in your table viewer? Using the exact same query? Perhaps your "Table" is actually a view or query that appends the 'E' somehow. If you can pull the SQL out of the table viewer, you should be able to compare these.