On Dec 14, 2012, at 11:12 AM, Bill Steele <[log in to unmask]> wrote: > 8 keys. You'd think it could manage that. > > On Dec 13, 2 012, at 1:42 PM, Emmanuel LEVY <[log in to unmask]> wrote: > >> Do your records include many many keys? >> >> We were hit by a limit on the number of "keys" that AppleScript can store, those "keys" including the records' keys, all the variables' names and all the handlers' names. >> >> This is easily tested: >> >> -------- >> display dialog "ready to bug?" >> repeat with i from 1 to 10000 >> try >> run script "set r to {|" & i & "|:1}" >> on error -- Internal Table Overflow: your app is no longer usable, quit ASAP >> display dialog i >> exit repeat >> end try >> end repeat >> -------- >> >> Emmanuel >> >> On Dec 13, 2012, at 7:28 PM, Bill Steele wrote: >> >>> I have a script that reads a series of Filemaker records, doing some processing and writing out a file based on each one. As it goes along it accumulates some information (title, abstract, filename, etc.) about each item in an Applescript record; at the end it read throughout the recoed and writes out a summary -- essentially a table of contents. >>> >>> All fine until we upgraded to Mountain Lion. Now it reads two or three records and then hangs in the middle of the next one. At first I though one of the Filemaker records was corrupted, but switching them around doesn't change the results. It seems as if Applescript is saying "Hey, I can only do so much of this and then I have to quit." The information read in from the Filemaker record presumably is overwritten each time, as it's assigned to the same Applescript variable. The best idea I can come up within that Applescript can only store so much information ion its own record. Or that the stuff being read in *doesn't* feet flushed. >>> >>> Ran the same script on a machine running Tiger. No problems. >>> >>> Any ideas? I got around some hangs by re-writing my scripts to work outside applescript in the shell here is a sample from my filemaker button applescript call the terminal and execute the heavy lifting script in bash or perl. display dialog " Run SomeScript in /usr/local/bin " buttons {"YES", "NO", "BAILOUT"} default button 3 --If user is great if result = {button returned:"YES"} then tell application "Terminal" do script "/usr/local/bin/myscript.sh" -- opens a new window display dialog " keep window open ? " buttons {"YES", "NO", "BAILOUT"} default button 3 if result = {button returned:"YES"} then --close window 1 else if result = {button returned:"NO"} then close window 1 --If user is a exit else display dialog "Excuse me pal!" end if end tell --If user is no else if result = {button returned:"NO"} then display dialog "whats yer deal" --If user is a exit else display dialog "Excuse me pal!" end if