Re: With Transaction in FileMaker Pro
Re: With Transaction in FileMaker Pro
- Subject: Re: With Transaction in FileMaker Pro
- From: Bill Cheeseman <email@hidden>
- Date: Wed, 29 Mar 2006 15:29:21 -0500
- Thread-topic: With Transaction in FileMaker Pro
on 2006-03-29 1:47 PM, Matt Neuburg at email@hidden wrote:
> On Wed, 29 Mar 2006 09:11:59 -0500, Bill Cheeseman
> <email@hidden> said:
>> In the classic Mac OS, FileMaker Pro was one of the few applications that
>> supported the Begin Transaction command (or a With Transaction block).
>>
>> I can't make it work in FileMaker Pro 8 under Mac OS X. Can anybody?
>
> I'm pretty sure that the tests for the transactions in FileMaker performed
> for the scripts described in my book were performed with FileMaker Pro 8.
> Remember, you have to wrap the transaction block inside the tell block, and
> you have to keep manually deleting the word "transaction" from the end block
> before compiling because of the bug in FMP's dictionary (it tries to grab
> "end transaction" as a command, so that AS can't see it as a control
> structure). See p. 297 in the new edition of my book for more info.
I wrote up the requirements to put the With Transaction block inside the
Tell block and to manually delete "transaction" 5 or 6 years ago on my Web
site. See the "Doing Business With Transactions" article in the "Tips"
section of www.applescriptsourcebook.com. My current inquiry was triggered
by an effort to update that old Tip for Mac OS X.
I read and experimented with the script in your 2d edition early this
morning, and I'm not satisfied that it proves With Transaction works in
FileMaker Pro 8. As I reported on my Web site, applications that don't
implement With Transaction simply ignore a With Transaction clause, which is
what I think FileMaker Pro 8 is doing in your script.
The only way to know for sure whether With Transaction works in an
application is to try to do what the With Transaction clause is supposed to
prevent -- namely, make a change to the database from outside the With
Transaction block while the With Transaction block is executing. One way to
do this is shown in my "Transaction Ferret" script, in the "Scripts" section
of my Web site. Try to run a second With Transaction clause while the first
With Transaction clause is still open. Another way is to try to have another
user on a network change the database while you have a With Transaction
block of your own running.
Trying the former on FileMaker Pro 8 in Mac OS X, it blithely lets the
second With Transaction clause access the database while the first With
Transaction clause is still running. FileMaker on Mac OS 9 wouldn't allow
that.
--
Bill Cheeseman - email@hidden
Quechee Software, Quechee, Vermont, USA
http://www.quecheesoftware.com
PreFab Software - http://www.prefab.com/scripting.html
The AppleScript Sourcebook - http://www.AppleScriptSourcebook.com
Vermont Recipes - http://www.stepwise.com/Articles/VermontRecipes
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Applescript-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden