Locking only works correctly every 2nd time

I've got a TTable object on a MDI-Child. Every time I create a new MDI-Child
a record is locked.
If I try to lock a record which is already locked by another MDI-Child, the
locking should fail.

My problem:
If I try to lock a already locked record the first time, it works (locking
fails). But if I try
to lock it a second time, it works ! After that, I've got two MDI-Childs
locked the same record!
This results in errors, if you edit both, of course.
You can repeat locking the same record continously and every 2nd time
locking fails and works

My workaround:
Adding seperate TDatabase and  TSession object to the MDI-Child for the
TTable. So for every
MDI-Child a seperate SessionName und Local_Alias is created.

My Question:
Where's the error ? In my opinion it should work without my workaround.

Delphi 4

Patrick Schmidt