Quickly Running DDRs
Unfortunately, running a DDR is a manual process. There are some things you can do to make it a little easier. We will cover some of these in the sections below. Mac users will likely want to check out the section below on using AppleScript
Setting up a Keyboard Shortcut
On Mac OSX, use the Keyboard system preference to set a shortcut. A common option to use is Control-D. See image.
Pro Tip - Use the MBS Plugin for easier DDRs
- It only functions in FileMaker Pro Advanced, as it controls the DDR creation interface. It will not allow you to create a DDR using FileMaker Pro or FileMaker Server.
- The folder you want to export to has to exist. The provided example tries to create a folder on the desktop called "CURRENT_DDR".
- FM.RunDataDesignReport can't tell when the GUI is done exporting the DDR, so it can't cleanly continue with the script after exporting a DDR. The FM.RunDataDesignReport command has to be your last step/command.
- You could open this database at the edge of your display, and just click the Export DDR button whenever you want to export DDRs for all currently open databases.
Advantage: This requires no modification whatsoever of the target database filesDisadvantage: The DDR Exporter database will be displayed as one of the DDR'd files in FMPerception
- You could copy the script to your target database, and either reference it as a custom menu item, or set it as one of the first 10 scripts so that it can be invoked using a command-key combination.
Advantage: No extra databases in your DDR exportDisadvantage: You have to modify the target system, and leave it modified if you'd like to continue rapid generation of DDRs.
Applescript and Automator
You can use AppleScript to completely automate the process on the Mac.
Here is an Automator action you can use. When you launch it, it will ask you to install as a service, which is what you want to do.
You will need to allow Automator and Script Editor access to Accessibility in the Security System Preference. The first time the script is run it will usually prompt you to allow access.