Hi Aldevinas,
Like I explained in first reply, specifying zero keys is only used when checking if a record was already loaded or not. If record was loaded then ReadFirstMain returns true otherwise it returns false.
Usually when you are trying to load record from register, you would specify key value and number of keys/indexes in ReadFirstMain which is not the case in this example.
I hope that cleared it out.
Best regards,
David D.