Re: Undocumented syntax, works great, but it is driving me nuts. Where did it come from? Why can't I find reference to it?

Author: Mike yearwood

Posted: 2008-06-26 at 08:48:52

> Message: 7

> Date: Thu, 26 Jun 2008 07:37:07 -0400

> From: "Gil Hale" <gil@gilhale.com>

> Subject: Undocumented syntax, works great, but it is driving me nuts.

> Where did it come from? Why can't I find reference to it?

> To: profoxtech@leafe.com

> Message-ID: <NDBBLHFMCDKPEGPOIIAPOEJGAAAB.gil@gilhale.com>

> Content-Type: text/plain; charset="us-ascii"

>

> Good Day, All!

>

> I am using some very old VFP3 code as the underpinnings for a new project

> (very stable code, still in use daily all around the country), and came

> across a command using a syntax I can't find in either the VFP9 help file or

> VFP7 Hacker's Guide electronic documentation. It looks a bit clunky

> compared to how I implement the command in my current code, but I do believe

> it was set up the way shown below as I was writing against an ORACLE

> read/write cursor back then (now a VFP table) and was having problems with

> the ODBC driver when it came to trying to record data into the target cursor

> without doing some strange shuffling around. Anyway, here is what it looks

> like:

>

> .

> .

> .

>

> SELECT xiSORCursor

> mThisRecord = RECNO('xiSORCursor')

>

> REPLACE cVIN with mVIN, ;

> cAdvisor WITH mAdvisor, ;

> cSORNum with mSORNum, ;

> cCancelDat with mCancelDat, ;

> cCustNum with mCustNum, ;

> RECORD mThisRecord

> .

> .

> .

>

> The syntax question involves my use of the "RECORD mThisRecord" part of the

> REPLACE command. I cant find any reference to tacking that onto the REPLACE

> command, yet it still compiles in VFP9 and runs fine. So, this is more of a

> "curiosity thing" than a "it is broken, now what?" matter. I do not want to

> remove that unknown part of the code, as it is working fine and had to have

> been put there by myself long ago for a pretty good reason.

>

> Thanks for the anticipated shedding of light!

>

>

> Regards,

>

> Gil

>

>

> Gilbert M. Hale

> New Freedom Data Resources, Inc.

> Pittsford, NY

> 585-359-8085 - Office (Rolls To Cellular)

> 585-202-4341 - Cellular/VoiceMail

> gil@gilhale.com

Hi Gil

In a trigger, that syntax will attempt to move the record pointer,

which will fire the trigger, etc. etc. :) Since you are already on the

record you are trying to update, your best approach is to drop the

RECORD clause.

Mike Yearwood

©2008 Mike yearwood