If you use "*" as field list, the fields from BKPF will be overlapped by those of BSEG, so cleared when no record. You may be required to explicitly list required fields : k~BUKRS ... s~BUZEI etc.
In recent versions could be some
SELECT bkpf~* bseg~buzei etc
Question: What is your version (BSEG no longer a cluster table)
Regards,
Raymond