bruceR Posted June 16, 2004 Posted June 16, 2004 The attached file demonstrates simple integration of unix shell scripting with FileMaker. It takes a list of values, sorts them, finds the unique values, and counts the occurrences of each unique value, and presents the top 5 to you. By itself this is a minor trick but it has interesting implications for reporting and other applications. It requires a Mac running OSX. When you try it, try using PartNumber as the selected field for your query. Note that the file will also summarize values from a second file if you have any other database open. The applescript looks like this: choose from list (get name of every field) set whichfield to item 1 of result set theData to field whichfield of document 1 set AppleScript's text item delimiters to ASCII character 10 Set shellStuff to " | sort | uniq -c | sort -rn | head -5" do shell script "echo " & quoted form of (theData as text) & shellstuff display dialog result SaleData.zip
bruceR Posted June 20, 2004 Author Posted June 20, 2004 This is a very powerful, fast, versatile technique that can substantially simplify report generation. Get summary data almost instantly from ANY open database without writing scripts or layouts in the target database.
Mandu Posted August 22, 2004 Posted August 22, 2004 VERY slick! I learned some neat Applescript tricks here. Know any other Filemaker > BSD > Filemaker tricks? :-)
bruceR Posted August 22, 2004 Author Posted August 22, 2004 Yup. How about exporting your data to a specified file name? Go To Layout [someLayout] Copy All records Perform applescript copy cell "gFileName" to fileName -- assumes you have pre-populated it -- with your desired flle name -- don't put this field on the layout -- you are copying records from Do shell script "pbpaste > ~/desktop/" & fileName & ".txt"
Mandu Posted August 23, 2004 Posted August 23, 2004 Sweet! I notice that it makes use of certain special ASCII characters in some cases - translating LF/CR to VT (x0b) and using GS (x1d) for some purpose I haven't figured out yet (repeating field separator?) As long as those things aren't lost completely in the process, though, I'm happy. :-) Very nice. Thanks!
Recommended Posts