This is a result of the isolation level of your connection. The row is update locked, which prevents other processes from getting a possible 'dirty read' (e.g. reading an updated value that has not been committed, and could be rolled back)
To view your current isolation level:
SELECT CONNECTION_PROPERTY('isolation_level');
This section in the SQLAnywhere docs talks about the different isolation level settings, and how to change them. Isolation level 0, or 1 would probably allow your read to continue, but with some risk. You may also want to check out the snapshot isolation setting to see if it might suit your needs.