my guess is you've encountered a "bad" dictionary relationship. By which I mean, the child table is linking to the parent table, but on fields other than the parent table primary key.
let's go through the steps;
Table A has a primary key, on field A.
Browse on Table A uses the primary key, so the RowId of the table contains field A.
Now (I suspect in your case) your child browse on table B is linked to the table A, but NOT on field A. Since only field A is included in the Row Id you need to do more work to load the rest of the record of table A before the filter can be applied.
Two solutions;
a) get your database layout right OR
b) in the child browse procedure, in the generateBrowse routine, load the parent record (priming the Field A frmo the session value) then copy the other fields to the session queue.
cheers
Bruce