>>>>1. Add records to buffered view/CA (not directly to the table)
>>>>2. made all validations BEFORE trying to insert
>>>>3. Lock the file
>>>>4. get new id
>>>>5. replace ID field in all view records with new one
>>>>6. Update the Table
>>>>7. UNLOCK file
>>>
>>>Boris,
>>>It's "committed" situation, isn't it? See my second reply.
>>>Cetin
>>
>>You talk about gaps, isn't it?
>>but the gaps will happen only if the user deletes the record(s), not when insert and He/She decide to cancel operation.
>>That is because ID is generated when user press SAVE not during the edit process.
>
>Not just with deletes, if I need ID before commit (thus before save).
>Cetin
Yes, but my suggestion was: new Id should be generated ONLY when the user press SAVE. No ID before that :-) No print enabled before save ;-)
Against Stupidity the Gods themselves Contend in Vain - Johann Christoph Friedrich von Schiller
The only thing normal about database guys is their tables.