>>>>>Fabio,
>>>>>
>>>>>Please read the problem defintion one more time. The SPT cursor is made updatable using technique similar to the one outlined in Vald's blog (so essentially it becomes a remote view).
>>>>>
>>>>>After that we do simple append blank (on insert, doesn't matter) and then tableupdate.
>>>>>
>>>>>My question is how can I get the ID in this particular scenario.
>>>>>
>>>>
>>>>
>>>>IF TABLEUPDATE(.F.)
>>>> LOCAL newid
>>>> newid=cast(null as i)
>>>> SQLEXEC(CURSORGETPROP("ConnectHandle"),"SELECT ?@m.newid = SCOPE_IDENTITY()")
>>>>ENDIF
>>>>
>>>>
>>>We're using a similar approach, but I don't think it's reliable.
>>
>>Why?
>
>What if something happens in between?
What can happen?
The SQL session is exclusive,
and therefore your application must have the control of what can happen.