If you have this relationship:
LayoutsTable::Field1 = PortalTable::Field2
Specify global storage for Field1 so that the values assigned to it by one user session are kept separate from the values assigned to it by another user session.
You can also use inviisble tab controls with one empty panel and one panel with the objects you want to hide. THen you give each panel an object name and use the script step go to object to select the appropriate panel to hide or reveal your layout objects inside the tab control.
Thank you Phil
I like the idea of using panel control because this saves me form messing up with the file itself.