As you know, VBRP is Billing Item table. For a billing document, there could be multiple entries existing in this table depending on the number of Items. Hence you are getting multiple entries for same billing document number.
As you are joining more than 3 tables, it might create a performance issue when you move to Production environment due to large volume of data.(And you have only one where condition-fkdat)
Try changing your select query using FOR ALL ENTRIES for your requirement.