Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.databases.filemaker > #2983

Re: Can't Use a Portal Across a Join Table

From Helpful Harry <HelpfulHarry@BusyWorking.com>
Newsgroups comp.databases.filemaker
Subject Re: Can't Use a Portal Across a Join Table
Date 2018-02-07 09:15 +1300
Organization Aioe.org NNTP Server
Message-ID <p5d2dg$ucg$1@gioia.aioe.org> (permalink)
References <1njn967.145z0ggmlvmeN%csampson@inetworld.net> <1njprta.gec6x98mrufwN%csampson@inetworld.net>

Show all headers | View raw


On 2018-02-06 10:12:24 +0000, Charles H. Sampson said:
> Helpful Harry <HelpfulHarry@BusyWorking.com> wrote:
>> On 2018-02-03 19:36:39 +0000, Charles H. Sampson said:
>>> Charles H. Sampson <csampson@inetworld.net> wrote:
>>>> 
>>>> I'm back to trying to understand the FMP way of implementing a
>>>> many-to-many relationship. To do this, I'm using the example in the
>>>> online FileMaker help. Three tables: Students, Classes, and Enrollments.
>>>> Enrollments is the join table between Students and Classes.
>>>> 
>>>> As suggested, I have created a portal from the Students table to the
>>>> Classes table, presumably through the Enrollments table. I have checked
>>>> the box to allow creation of an Enrollments table by means of the
>>>> relationship from Students to Enrollments. (I want to be able to create
>>>> an enrollment by using the portal.) I have not checked the box to allow
>>>> creation of a classes record by means of the relationship from
>>>> Enrollments to Classes. (Students are not allow to sign up for
>>>> non-existant classes, thereby creating the class.)
>>>> 
>>>> Now I'm at the same place that I was in another post. I'm when I go into
>>>> browse mode with the layout that contains the portal, the portal is just
>>>> a white box. Nothing can be entered into it.
>>> 
>>> I think I might have this figured out. The "trick" (technique) is to
>>> create new records by using a layout that shows records from the join
>>> table - the Enrollments table in this example. That seems a little
>>> unnatural but not entirely. I wanted to be able to sign up a student for
>>> his classes; in other words, using a layout that  shows the record for
>>> that student. It isn't entirely unnatural to say that I have to create
>>> enrollment records instead, maybe all for one student, maybe for lots of
>>> students.
>> 
>> I should have picked that up earlier when you originally said: "I have
>> created a portal from the Students table to the Classes table".
>> 
>> It's not possible in *any* version of FileMaker to double-jump a
>> relationship, and for this example you don't need to anyway. The whole
>> reason for the Enrolments table is to store the enrolment records that
>> link a Student to a Class.
>> 
>> Maybe it's due to the Americanism "sign up a student for a class",
>> instead of "enrol a student in a class".
>> 
>> It's also why I don't like the terminology "Many to Many" because t's
>> misleading and often used incorrectly. As I think I said in an earlier
>> reply, this example database is really better thought of as:
>> 
>>      - One to Many: each student record is related to many enrolment records
>> and  - One to One:  Each enrolement record is related to one class record
>> 
>> That's why two separate Relationships have to be defined.
> 
> Thanks yet again for another tutorial on the Filemaker way of doing
> things, a concept that I continue to struggle with. I'm being mislead,
> at least in a Filemaker context, by my experience with Borland's Reflux
> Plus, which implemented many-to-many relationships. I assume that they
> did this by means of hidden join tables. Do you have any idea how common
> this is in the database world?

No idea. Last time I used anything other than FileMaker Pro was decades 
ago, and even then it was only briefly mucking about with flat 
databases in things like 4th Dimension, FoxPro, etc. and the disgusting 
Access rubbish by Microsoft

For this particular "Students & Classes" example, you potentially don't 
need the extra Enrolments Table. You could relate each Student Record 
to many Classes directly. The main benefit of the Enrolments Table is 
so you can easily print off reports such as Class' Student Name Lists / 
Attendance Registers all in one go, rather than one at a time for each 
class from the Students Table. (Technically you could do Name Lists 
from the Classes Table by using an extra Field to gather all the names 
or by simply a printing the Portal, but printing Portals or long Fields 
isn't a great idea for an unknown number of rows or when going over 
multiple pages.)

Helpful Harry  :o)

Back to comp.databases.filemaker | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

Can't Use a Portal Across a Join Table csampson@inetworld.net (Charles H. Sampson) - 2018-01-21 13:55 -0800
  Re: Can't Use a Portal Across a Join Table Helpful Harry <HelpfulHarry@BusyWorking.com> - 2018-01-22 18:53 +1300
  Re: Can't Use a Portal Across a Join Table Helpful Harry <HelpfulHarry@BusyWorking.com> - 2018-01-22 18:57 +1300
  Re: Can't Use a Portal Across a Join Table ursus.kirk@gmail.com - 2018-01-22 10:13 +0100
    Re: Can't Use a Portal Across a Join Table Helpful Harry <HelpfulHarry@BusyWorking.com> - 2018-01-25 09:26 +1300
  Re: Can't Use a Portal Across a Join Table csampson@inetworld.net (Charles H. Sampson) - 2018-02-03 11:36 -0800
    Re: Can't Use a Portal Across a Join Table Helpful Harry <HelpfulHarry@BusyWorking.com> - 2018-02-04 10:02 +1300
      Re: Can't Use a Portal Across a Join Table csampson@inetworld.net (Charles H. Sampson) - 2018-02-06 02:12 -0800
        Re: Can't Use a Portal Across a Join Table Helpful Harry <HelpfulHarry@BusyWorking.com> - 2018-02-07 09:15 +1300

csiph-web