2 Replies Latest reply on May 11, 2012 8:05 AM by davidjhayden

    FileMaker 12 ESS Problems

    davidjhayden

      We have a script that has been in use since FileMaker 10 that publishes a subset of local FileMaker data to a remote MySQL database via script across a relationship. Since converting to FileMaker 12 the data is pushed to the external table, but when the local record is committed by moving to another record, the remote data reverts.

       

      To simplify, let's say remote table Remote has two fields: ID and Title and the Local table Local has the same two fields, and a relationship between the ID fields.

       

      The user changes the value in Local::Title and fires a sync script with the following step:

       

      Set Field [Remote::Title; Local::Title]

       

      On the MySQL side I see the data temporarily change, but when I navigate the local FileMaker record away the MySQL data reverts. My sense is that there's some kind of cache/locking issue going on here, but I'm at a loss. If I place the remote field on the local layout and manually update it, it sticks.

       

      Help?

        • 1. Re: FileMaker 12 ESS Problems
          timwhisenant

          David,

           

          Is there any field validation going on at the Remote table?? It sounds like the record isn’t passing validation. Something to check, since failed validation will revert the record silently in a scripted process.

           

           

           

          Tim

          • 2. Re: FileMaker 12 ESS Problems
            davidjhayden

            Hi Tim:

             

            Thanks for your post -- turns out that while field validation in the strictest sense wasn't the problem, it did send me down the right path!

             

            It looks like there's new behavior in FM 12 re: ESS and incompatible characters.  In this case the issue was "curly quotes".  My clients have a habit of copying and pasting long narrative text from MS Word, and often don't correct curly quotes before publishing to a remote MySQL DB that provides a back end to parts of their web site.  Pre-FM 12, the "bad" characters would get succesfully pushed to MySQL, but then would render improperly (usually little diamonds with question marks) when called via PHP to the web pages.  The NEW behavior in FM 12 seems to be to fail validation and revert the MySQL record, so the record changes do not stick.

             

            Have added a custom function to a number of fields in this particular solution that strips out curly quotes using an "Always Replace by Calculation" setting on the problem fields; could also have just stripped in the Set Field script steps, but decided that I hate the curly quotes enough that I'd rather stop them at the gate.

             

            Anyway, thanks Tim!

             

            Dave