4 Replies Latest reply on Jan 31, 2010 7:29 AM by LaRetta_1

    Adding relationships invalidates other relationships



      Adding relationships invalidates other relationships

      Description of the issue

      Filemaker Product(s) involved:FileMaker Pro Advanced 10.0v3 Operating System(s) involved:MacOS X 10.6.2Windows XP SP3 Detailed description of the issue:I have a fairly complex set of table occurrences and relationships in development for a commercial product. Progress has been greatly impeded because adding (or otherwise altering) relationships to existing table occurrences will invalidate other relationships. The symptoms of this include the appearance of  or  or the disappearance of data from fields of layouts that previously showed valid data. I have been able to get the now non-working relationships restored by "twiddling" with the relationship and relationships around it. By "twiddling", I mean: 1) double clicking the relationship in the Manage Database Relationships window, 2) adding an additional criterion to the relationship, and the 3) deleting the just added criterion. This "twiddling" does not change the definition of the relationship. This procedure seems to work best if applied from the graph branches inward (where the root is the layout table occurrence).  However, the "twiddling" can cause other relationships to go bad and thus I have cascading failures in other fields and sometimes on other layouts. As a result, a somewhat minor change can require hours of random seeming recovery effort. (I have become very diligent about SVN commits.)  If I had to guess I would say that this is a symptom of a bug in a graph-following algorithm meant to update the relationship re-evaluation triggers due to the relationship edits (but I'm not a DB tool developer.) Is this a known problem from anyone?   Exact steps to reproduce the issue:Wish I knew. 

        • 1. Re: Adding relationships invalidates other relationships

          I've got some pretty complex graphs on a few of my DB's (have to print them on 11 x 17 paper to get it all on one page.) and haven't seen any such problems. 


          Are the cases where your relationships are failing direct table occurrence to table occurrence relationships or are they cases where filemaker has to trace a relationship across more than one "in between" table occurrence?




          TO to TO relationship:


          Table1::Key = Table2::key


          Relationships spanning multiple TO's:


          Table1::Key = Table2::key = Table3::key


          Where data in table 1 fails to correctly link to data shown in table 3.

          • 2. Re: Adding relationships invalidates other relationships

            I can see problems in both -- I do have some relationships that go through 5 or 6 links. (These get displayed in portals, of course.)


            I am emulating Object Oriented Design according some of the advice on the Web, so most records are an extension of a base Entity record, the serial number of which serves to tie together extensions of Objects. 

            • 3. Re: Adding relationships invalidates other relationships

              This turns out to have been a corrupted database. Invoking "Recover" from the "File" menu yielded a correct file, even though the recovery log claims that no changes were made (and the "Check Consistency" claims there were no problems).


              • 4. Re: Adding relationships invalidates other relationships

                Recover should only be used to retrieve data.  Once a file has been recovered, it should never be used again.  You should instead go to a backup copy of your file (to a point before the file was damaged).  We have been imploring FileMaker to make this clear in their documentation and stance.  There are threads about it where they admit (in posts here) that one should never use a recovered file but it isn't obvious to the regular user.


                Just as the logs didn't indicate damage that it fixed, it can not indicate damage that it can't fix.  It is simply not to be trusted.  If you continue working in a recovered file, you can find it out too late and you will have to trash the file and go backwards anyway.  Better to do it now than after you've continued working in it for another six months.