The locking mechanism you're describing is not ISAM-A but
LOKSER. When enabled (typically in the miame.ini), files open RANDOM are locked for exclusive use, while those opened RANDOM'FORCED are shared. The error FILE IN USE (37) occurs when one user has a file open opened exclusive and another tries to open it, or when you try to open a file exclusive and one or more other users already have it open for shared access.
For files open RANDOM'FORCED, record level locks are placed by using READL instead of READ. (WRITE unlocks a record previously locked with READL, and WRITEL is used to lock/write/unlock a record that was not previously read, i.e. when adding new records to a file.)
Under A-Shell, LOKSER is implemented via the native operating system file locking system. Unfortunately, unlike the case with XLOCK and FLOCK locks (which are entirely controlled by A-Shell), system locks are not that easy to monitor or remove. In the Linux environment, you can use LOKUTL (which wraps around the not-quite-universal
lslk Linux shell command) to get a list of locks, but I'm not aware of any standard Windows equivalent. However, the Windows Computer Management utility does provide a view of Open Files. And most Window Server editions will also allow you to terminate sessions. But that's a pretty blunt instrument for management multi-user conflicts like this.
CASH.DAT is most like the cash receipts file, and it would be typical of AlphaACCOUNTING to require exclusive use, i.e. only one person entering cash receipts at a time. So you are convinced that some rogue user has the CASH.DAT file open and you want to force it to be closed, your best bet is probably to us SYSTAT to identify which programs/users are running, and based on that (and knowledge of the application, which in your case might be tricky to acquire), figure out which user to either call on the phone, or if necessary, to terminate using the KILL command. Note that any locks owned by a process will be freed by the OS when the process terminates.
This won't help after the fact, but if you want to get an understanding of which files are opened by which programs, you might want to add the TRACE=FOPENS option to the miame.ini (or use SET TRACE FOPENS ON at the dot, which will log all file opens and closes to the ashlog.
Another tip, which is probably too extreme to be practical, but good to know, is that if you disable LOKSER, then there won't be any such file locking. So if you're having problems with file locking even in single-mode, that might suggest that the application wasn't actually written to use LOKSER, in which case disabling might make sense. But in that case you're asking for trouble if multiple users access it at the same time, unless you become convinced that the app is actually using XLOCK or FLOCK instead. (You can use the XCALL TRACE, or QUTL, to monitor XLOCK/FLOCK operations, and there is also a RW TRACE which will show you whether the app is use READL/WRITEL or simply READ and WRITE, and thus whether it is build around the LOKSER framework or not.)