1 Reply Latest reply on Mar 26, 2015 12:27 PM by philmodjunk

    Relationship operator question



      Relationship operator question


      Funny, I just noticed that you can change the operator between a relationship.  Can someone give me a brief explanation of how this is beneficial? Or direct me to that information.  I am particularly interested in the "x" or "all rows" - "cartesian product" operator.

        • 1. Re: Relationship operator question

          The Cartesian join operator matches any record in table 1 to all records i table 2. So if you put a portal to Table 2 on your Table 1 layout, you'll see all records from table 2 i the portal--no matter what record you are on.in that layout. You can even delete the match fields used to define the relationship and the relationship will still work.

          Some developers use a Cartesian join as the relationship for a portal where then then use a portal filter expression to control what records appear in the portal. This enables you to list records in the portal by "rules" that can't be set up in Manage | Database | Relationships such as this portal filter: PatternCount ( PortalTable::Title ; LayoutTable:SearchText ). This is a method to use with caution, however, as performance can suffer greatly when working with large numbers of records in the portal's table.

          The other operators should be fairly self explanatory. I recommend setting up a sample file and experimenting with these operators to get an understanding of how you might use them.

          Filtered Portals based on the X operator are one technique found in "Adventures in FileMaking #2 - Enhanced Value Selection".