Help with getters & setters in PL/SQL
Getters and Setters implies retrieving the data for one row and changing the data for one row.  It sounds like you are planning to call a get procedure for each row you want in the file level table and then for each of those rows loop through getting the corresponding data from the batch level table etc.  

My suggestion is that you write one SQL statement that selects all the data you need from the file level table joining in the data you need from the batch level table.

I don't know anything about BI Publisher, so based on your comment, none of this may apply. Perhaps someone familiar with BIP can say whether these parameters could be bound into the query to allow the query to determine what data should be returned.  A PL/SQL method may be required for this application, but it needn't be more than a wrapper for your SQL.