MoneyWorks Automation provides MoneyWorks with the ability to communicate with other programs on the same computer1, allowing MoneyWorks to be interrogated by other systems, and data to be submitted by these systems to MoneyWorks.
It was provided because we realised that MoneyWorks cannot be all things to all people, and that there are things people need that MoneyWorks does not provide, but that other systems do.
Automation is designed to facilitate data exchange in real time with other systems running on the same desktop, and hence its use is platform-specific. If you are manipulating data within a MoneyWorks document, it is preferable to use MWScript.
Using automation allows you to do things like:
- integrate MoneyWorks into Excel for reporting and budgeting
- have external consolidation routines for multiple MoneyWorks documents;
- interact with a FileMaker Pro database;
- automate the import of invoices and price books from suppliers (although this can probably be more easily accomplished using MWScript);
Because it needs to communicate with other applications running outside of MoneyWorks, Automation is platform specific. Thus you will need to develop different automation solutions to achieve the same result on Mac and Windows.
To create extensions using MoneyWorks automation you need (on Windows) a COM enabled development system such as vbScript, .net, VB, Delphi, RealBasic. On Mac you need to be able to send and receive AppleEvents—AppleScript is an ideal solution for simple scripting, RealBasic for more complex systems.
In addition there are free plug-ins available for MoneyWorks Automation for FileMaker Pro. These provide cross-platform compatibility (i.e. a single database solution should run on both Mac and Windows).
The basic Automation operations are:
Open: Open or connect to the specified file or MoneyWorks server.
Close: Close the currently open document or connection
Export: Export a selection of records from the specified table using an optional search.
Import: Import one or more records into MoneyWorks, optionally updating any existing records.
Evaluate: Evaluate a MoneyWorks Expression.
DoReport: Run a nominated MoneyWorks report with the specified parameters.
For more information on MoneyWorks Automation, see:
1 If you want to communicate with systems on a different computer, or over the internet, use the MoneyWorks REST APIs. ↩