Hi,
I don't see anything wrong with you code.
Best way to test is, debug in one screen and see what contents are in the internal table and in another check the contents of database table through se11 with the given selection criteria.
Another important thing is you can avoid into corresponding fields and it improves performance.
Regards
Sajid