11 Replies Latest reply on Apr 4, 2014 9:22 AM by philmodjunk

    Problem Setting a Global Variable with 256 KB of Data

    User11784

      Summary

      Problem Setting a Global Variable with 256 KB of Data

      Product

      FileMaker Pro

      Version

      FileMaker Pro 13 - FileMaker Pro 13 Advanced - FileMaker Go 13

      Operating system version

      Windows 7 SP1 - Mac OS X 10.9

      Description of the issue

      I have found a problem setting global variables from a field where the field contains 262145 or more lower ASCII characters (equivalent to 256 KB of data).

      The same erroneous behaviour occurs in
      - FileMaker Pro 13
      - FileMaker Pro 13 Advanced
      - FileMaker Go 13

      The behaviour has been tested on the following OS
      - Windows 7 SP1
      - Mac OS X 10.9

      The same behaviour can be seen whether the the file is hosted on a server or opened locally.

      A file detailing the problem can be downloaded from here (https://www.dropbox.com/s/pentlqkzuw13aaj/ipad%20test.fmp12).

      The file contains 2 fields (in a table named 'resource')
      - global_test_1
      - global_test_2

      And scripts that set 2 global variables
      - Set Variable [$$global_1; Value:resource::global_test_1]
      - Set Variable [$$global_2; Value:resource::global_test_2]

      If we set variable 1 and then variable 2 when global_test_1 contains 262144 characters or less then the variables are set as follows
      - $$global_1 = global_test_1
      - $$global_2 = global_test_2

      If we set variable 1 and then variable 2 when global_test_1 contains 262145 characters or more then the variables are set as follows
      - $$global_1 = global_test_2
      - $$global_2 = global_test_2

      In other words $$global_1 is given the same value as $$global_2.

      $$global_1 is given the correct value when it is set but it doesn't retain the value after $$global_2 is set.

      In the downloaded file
      - Click 'Set Data 256 KB' to set field 1 to 262144 character A's and field 2 to 100 character B's
      - Click 'Set Data 256 KB +1' to set field 1 to 262145 character A's and field 2 to 100 character B's

      Steps to reproduce the problem

      Download the file from (https://www.dropbox.com/s/pentlqkzuw13aaj/ipad%20test.fmp12). This file has 2 fields on the left and 2 merge variables on the right (each field/variable has a character count at its top right).

      - Click 'Set Data 256 KB +1' to set field 1 to 262145 character A's and field 2 to 100 character B's
      - Click 'Set 1' button to set $$global_1 to global_test_1
      - Click 'Set 2' button to set $$global_2 to global_test_2

      Expected result

      $$global_1 = 262145 character A's
      $$global_2 = 100 character B's

      Actual result

      $$global_1 = 100 character B's
      $$global_2 = 100 character B's

      Exact text of any error message(s) that appear

      No error messages

      Workaround

      Set the data into text fields with Global storage switched on