Question about INIT.

ForeverBlue
ForeverBlue Member Posts: 54
hi,

I create a form that user will input some data and a button to record into a table. in the button I have the following code.

record.init;
record.name := name;
record.address := address;
..... ....
... ...

record.insert;
commit;

The Table primary key is a field name ID and it's integer. I have set the property AutoIncrement = Yes and on the form level I have set AutoSplitKey = yes.

now the problem is after i save the first record, change the value on the form try to save it as a new record, it will give me a error of primary key is already exist. Correct me if I am wrong, I thought INIT will create a new record with new primary key?

Comments

  • bbrown
    bbrown Member Posts: 3,268
    INIT does not clear the primary key.
    There are no bugs - only undocumented features.
  • ForeverBlue
    ForeverBlue Member Posts: 54
    hmmmm
    I move record from global to the button's OnPush local and fix the problem.
  • bbrown
    bbrown Member Posts: 3,268
    Yes, that would work since your record variable would go out of scope each time the OnPush code ends. Also that hard commit is not needed if this is all in the OnPush trigger.
    There are no bugs - only undocumented features.
  • kriki
    kriki Member, Moderator Posts: 9,121
    Check here (http://www.mibuso.com/howtoinfo.asp?FileID=22) for some info on INIT (and other info).
    Regards,Alain Krikilion
    No PM,please use the forum. || May the <SOLVED>-attribute be in your title!