FmPro Script Diff compares, edits, searches and stores FileMaker ScriptMaker scripts. Changed scripts are compared on a line-by-line basis and displayed with color coded tags to the left of each modified line.
Search & Replace may be performed on variable names, Tablename::Fieldnames, Table Occurrences and text strings throughout an entire group of scripts. Updated scripts can then be pasted directly into the ScriptMaker window within FileMaker Advanced.
Transferring scripts between FileMaker Advanced and FmPro Script Diff is done by copying & pasting the scripts via the clipboard. No DDR Export is required. Even large numbers of scripts are transferred to/from FileMaker within seconds.
Here are some key features of "FmPro Script Diff":
· Colorized Line by Line Diff Results - Identically named but differing scripts are analyzed on a line-by-line basis. Changes are highlighted in color to make it easy to see whether individual lines have been Added, Deleted or Changed. Changed text within each line is also highlighted.
· High Performance Diff Feature - A checksum is calculated for the text of each script as it is transferred from the clipboard into FmPro Script Diff. The Diff process first compares the checksums between scripts having the same name. If the checksums match, the scripts are considered to be identical, thus a line-by-line comparison is not required. This technique improves the performance of the Diff process because typically only a few scripts within an entire database will be modified between revisions. The line-by-line comparison functionality processes the output results from the UNIX diff utility, which only requires about 200mSec to complete for a typical script.
· Easily Find Changed Scripts - Quickly display only the modified scripts within a large group of scripts by using the Diff screen menu item Changed Scripts. If you have dozens or even hundreds of scripts, it can be a significant time saver to filter the Diff results to display only the Changed, New, Deleted or Unchanged scripts.
· Search & Replace Text Within Scripts - How long would it take to manually find and replace a piece of text like a customer name or product name within dozens or even hundreds of scripts? FmPro Script Diff can perform these types of search and replace tasks within a few seconds. Search & Replace can be performed on variable names, Tablename::Fieldnames, Table Occurrences and text strings throughout an entire group of scripts. Updated scripts can then be pasted directly into FileMaker Advanced. All script attributes including Script Name, Script ID and Include in Menu status are retained when transferring scripts via the clipboard.
· TAB to Highlighted Text - When a script is clicked in search mode, the search text is highlighted in yellow in the Script Text display field. Pressing the TAB key automatically advances to the next occurrence of the found text within the field. This timesaving feature is also used for the Script Errors display, which shows script errors highlighted in red. For Diff results, the field automatically scrolls and highlights the first changed line of text, and pressing the TAB key advances to the next changed line.
· Quickly Browse Scripts - Each script is displayed in a format which is similar to the FileMaker script printout format. Script step names and comments are displayed in bold, options are plaintext, and Tablename::Fieldnames are underlined. Disabled instructions are displayed in italic text. Complex script steps with many options are displayed in a multi-line format, without requiring the opening of modal dialog boxes within ScriptMaker. Import and Export field lists are especially easy to read as a list of fields with Match/Import/Export parameters.
· Share Scripts Among Developers - The XML source for any group of selected scripts can be exported and transferred between developers working on a project. This file can be archived for historical purposes or imported by other developers into their own copy of FmPro Script Diff.
· Script Error Check Feature - As each script is copied from the clipboard it is converted from XML into human-readable text and checked for errors. This error checking feature is a straightforward check to verify the existence of tablenames, fieldnames, find requests and export file parameters. Depending upon the programming techniques being used, every missing item which is flagged as an error may not actually require changes to the script. The errors found within the scripts should be considered to be items to review in order to verify script completeness. This review process can be done rather quickly by Tabbing thru each of the errors to review the code. Very little manual scrolling is required to perform this type of code review.
· Edit XML Definition for Scripts - The Script XML field allows developers to browse and modify the XML definition for any ScriptMaker script. Changes are automatically saved to the embedded database when clicking outside the Script XML field. The XML is re-parsed into human-readable text and checked for errors. Every parameter of a script (including Script ID, Script Name etc) or individual script step can be modified by editing the script XML definition. Scripts can also be generated by external tools and pasted into the Script XML field, for pasting back into FileMaker Advanced.
· Script Grouping Feature - ScriptMaker scripts can be pasted into three different screens within FmPro Diff. These three screens (Database1, Database2, Script Repository) enable developers to make comparisons between scripts, have scratchpad work areas and a centralized storage area for commonly used scripts. Diff comparisons are done by pasting groups of scripts into the Database1 and Database2 screens. All scripts located within these two groups are compared to each other and the results are displayed on the Diff screen. The Database1 and Database2 screens can also be used as scratchpad work areas, in order to limit the affect of Search & Replace tasks. Search & Replace tasks only affect the scripts located within the screen where they are performed.
· Script Repository Feature - The Script Repository screen can be considered a longer term storage location where commonly used scripts may be stored in one convenient location. Scripts can be copied between each screen by using the same copy and paste mechanism used to transfer scripts between FmPro Script Diff and FileMaker Advanced.
· Persistent and Robust Storage - FmPro Script Diff utilizes a high performance SQLite3 embedded database for storage of all imported scripts and preferences within the application. This database is capable of storing up to 2TB of data. All changes to the stored scripts are immediately written into this embedded database file. Diff results are also stored in order to provide persistent storage of these results, and to allow filtering of the Diff results list. SQLite database maintenance on the embedded database is automatically performed each time FmPro Script Diff is closed.
· Easily Print Diff Results and Scripts - Colorized Diff results, Script Text and Script Error text can be printed in color or saved as a PDF file on both platforms.
· Copy Whole Scripts or Script Steps to Clipboard - The normal mode for copying scripts onto the clipboard copies the entire script definition with all included script steps. Holding down the Shift key when copying scripts onto the clipboard copies only the individual script steps. This method enables the pasting of script steps into an existing ScriptMaker script. All of the individual script steps for the first script selected in FmPro Script Diff are pasted at once onto the clipboard.
· Paste Whole Scripts or Script Steps into FmPro Script Diff - FmPro Script Diff recognizes the difference between whole scripts or individual script steps located on the clipboard. If individual script steps are found on the clipboard, these script steps get put into a new script named 'Untitled ??' within FmPro Script Diff, where the ?? is replaced with an incrementing integer.
· Available for Mac OS X and Windows - FmPro Script Diff is licensed for an economical price per developer and both Mac OS X and Windows versions are provided for each license.
· FileMaker Advanced 9.0 or later
· Only 5 scripts of unlimited length can be processed.
What's New in This Release: [ read full changelog ]
· Added support for FileMaker 12 script steps.
· Fixed an issue with scripts within groups not being imported via the clipboard.