The "crows feet" that makes your relationships look many to many are controlled by the field options you specify for the fields used in the relationship.
Fields defined as auto-entered serial numbers or with "unique values" specified will show a single line. If it's just a straight data field with no such options, Filemaker has no way to know that the field is a primary key.
The full sentence is "include only related values starting from...." What table occurrence did you select in the "starting from" drop down?
From what table occurrence did you select fields for your value list. How the relationship "lines" that link these two table occurrences are set up will control what values can appear in the value list.
I want to create a value list for the portal in the Portfolio layout that displays values from PortfolioExhibitJoin. The TOs involved are Portfolios, PortfolioExhibitJoin, and ExhibitData2. Using values from first field ExhibitData2::ExhibitID, also displaying values from ExhibitData2::ExhibitTitle, showing only the values from the second field. The first time I tried it, I included all values, forgetting that there would be multiple students.
To confirm the picky details:
- You have the PortfolioExhibitJoin::ExhibitID field formatted to use this value list.
- You've set up the value list to list values from: Field 1: ExhibitData 2::ExhibitID; Field 2: ExhibitData 2::ExhibitTitle.
- And you've selected Include Only Related Values starting from: PortfolioExhibitJoin.
That match what you've selected in this value list here?
If so, this won't work as you have built this so that the snake eats its tail here. Your value list is requires a value in PortfolioExhibitJoin::ExhibitID before there is a value list to filter the values to just one exhibitID yet there won't be a valid value in this field until you select a value from the value list...
The problem seems to be in step three. I need to limit the value list so it only shows a single student's files. When a new portfolio page is created, the student ID is copied to ID#. I tried limiting the values to those in Portfolios, but it would only show the old exhibits. When I made a new one, it did not appear in the portal's value list. I also tried limiting the values to PersonalStudentData, but then there were <no values defined>.
I would greatly appreciate any suggestions you might have.
Could a given student have more than one record in Exhibit Data?
It looks like it should be divided into two tables, one for personal info such as Student ID, First name, last name and one for your exhibit data. That way, you'd have one record for each student, but possibly multiple exhibit data records for that student without needing to repeatedly enter Student name information.
Working from your existing table occurrences, there's no relationship set up that will work for you in this fashion.
Add another Table Occurrence of Exhibit data and link it to Portfolios by ID#.
Then your value list can list values from this new table occurrence, with "include only related values starting from Portfolios" specified.
Oh yes, and you'll need to use a script or auto-enter method to make sure each new record in Exhibit data gets the correct student ID number.
This should also enable me take care of a number of unnecessarily repeated fields in rest of database.
Thanks again for your help.
I thought this was done, but it is not.
I am trying to limit outcomes by student major, which is defined in each exhibit. I have created major IDs and outcome IDs. However, when I relate the new TOs by MajorID, no list is formed. I tried relating them by major name, and the proper list formed. However, it was not able to create new portal records in the join table. I can modify the existing join table record, but the same outcomes show up throughout the solution despite the exhibit.
I would very much appreciate any help you could render.
From what layout/table context are you doing this?
Keep in mind that your Outcomes table (going by the above screen shot which may be out of date), is only linked to ExhibitData. It's not linked to Exhibit Data 3 any more than an occurrence of Exhibit Data was linked to Portfolios by Student ID number until we added one for this purpose.
I have updated the relationship table at the top of this discussion.
ExhibitData has the following TOs: ExhibitData 2, ExhibitData 3, ExhibitDataVList, and ExhibitDataVList 2.
Outcomes has the following TOs: Outcomes 2 and OutcomesVL.
The value list giving me problems uses values from
OutcomesVL::OutcomeID, also displaying OutcomesVL::ShortObjective, including only related values starting from ExhibitDataVList 2.
I set up a portal filter: ExhibitDataVList 2::ExhibitID = ExhibitOutcomeJoin::ExhibitID. Only the outcomes related to the exhibits are displayed, and I am able to add new ones. However, the current ExhibitID is not passed along to the join table. The ID of the first exhibit belonging to that student is instead copied to ExhibitID in the join table.
Thanks for any ideas you might have.
I just discovered something odd: In the original Table, the ExhibitIDs are different: unique for each record, which is how they are supposed to be. However, if that field displays material from another TO, all the ExhibitID values are the same.
I thought the TO values were the same as long as they referred to the same table.
Thanks in advance.
If Two TO's have the same data source table, then they are both drawing values from the same table. You'll need to investigate to figure out why this doesn't appear to be the case here.
If you uploaded a new screen shot to your original post, I'm not able to see it here. (You can do that by clicking Edit Post.)
What I can't tell from your last two posts is what layout you are on when you set this up nor what TO that layout is based on. The layout's TO is the most frequently correct TO to specify as a conditional value list's "starting from TO", though there are exceptions to this rule of thumb.
I selected one of the ExhibitData TOs and Selected tables with the Same Source Table: no surprises. When the ExhibitID field is set to display data from ExhibitData, each record has a unique identifier. When the ExhibitID field is set to any other related TO, all ExhibitID values for a student's exhibits are the same. Nothing I've found so far indicates why they wouldn't match.
I edited my first post. You should be able to see the new graphic.
The current issues are with the layout ExhibitData, whose table is ExhibitData. The layout which does not recognize the right ExhibitID is ExhibitOutcomeJoin, which is also the name of the table.
Again, the value list used in the portal on the ExhibitData layout seems to be behaving. The join table is getting the wrong values from TO ExhibitData3.
"When the ExhibitID field is set to any other related TO, all ExhibitID values for a student's exhibits are the same. Nothing I've found so far indicates why they wouldn't match."
Does the ExhibitID field display as ::ExhibitID in one case and as ExhibitID in the other when you are in layout Mode? (Without Sample Data specified in the View menu.) If so, you are specifiying a field from a related table and this will then display data from a completely different record. Keep in mind that the whole point of having different TO's is to control how data from one table relates to another. Specify a different TO with the same data source table and you'll be linking to the same table, but now you are using a different set of relationships which can then link to entirely different records.
Still don't see any difference in the uploaded graphic. Maybe it's my browser as it is behaving very poorly since last night's Windows update.
From what I can see of your relationship map, ExhibitOutcomeJoin does not link to ExhibitData but to ExhibitData 3. Thus, in most cases, you should refer to ExhibitData 3 instead of ExhibitData. If I understand how you've set things up, your value list should specify ExhibitData 3, the relationships should also link a TO of Outcomes to ExhibitData 3 with your value list listing values from that TO of Outcomes:
ExhibitData 3::ExhibitMajor = OutcomesVL::MajorName, list values from OucomesVL, starting from ExhibitData 3