I have an old solution that I want to revamp for FM14/15. It is a list of test samples, sample locations, and sample removals. In the original file I had the user enter all the samples in manually (or import from Excel). Then they would create a new installation for each sample or a new removal for a sample. The problem with this is that I can install multiple (in most instances 12+) samples in a location. Ideally I'd like to have a list show on the installation layout that the user can scroll through and select the sample(s) they want to install. Similar for the removal layout.
I was thinking that I would create a new join table that has a list of all samples, then copies the primary key for the installation when selected and the primary key for the removal when selected for that. I would change my installation table to be just a list of locations and dates (and other info/notes), which would supply the primary key.
To populate the list on the installation layout I would create a portal that points to this join table. When I exit the add sample layout I would update the join table with any new samples, removing any duplicates. I would then hide any records where the installation primary key is non blank, so they can select from available samples. I'd also have some logic that tests to see if the primary key already exists so the layout knows whether to default to adding samples or displaying them (with a button bar at the top to let the user select form display or add if new samples will be installed).
In the portal I would show the sample info (name, description, etc.) and a button that appears as a blank box (available) or box with check mark (if selected).
My question is, is this the best way to accomplish this? Is there another way? Realize I have several hundred samples in this list, so displaying all of them is not possible. I need a list I can scroll or search (maybe both).
P.S. While this is on a desktop I would also want to be able to do this in a mobile setting too so I can select samples at the time of installation.