The error 'Insufficient Disk Space' is misleading - it actually means that there has been a general failure to write to the database. There are many ways this may occur, including (but not limited to):


-- Free Space Multiple of 4GB. There is a rare/weird quirk of the Borland Database Engine which may result in it reporting 'insufficient disk space' when the drive space available is at or near a multiple of 4GB. This is discussed further here: https://cc.embarcadero.com/Item/21475


-- Locked Files. The other Medilink clients/server may have locked the data files you are trying to write to. This is may be caused by other applications like back-ups or anti-virus, or may be caused by poor performance of one or more workstations (i.e. one workstation is very slow to write and continually locks data files, causing other workstations to have errors when they try and access it).


-- Environmental. In some cases there will be a general write failure due to a hardware/software/network error. The database engine cannot automatically recover from this, nor does it really know the specifics of the issue in any great detail, it will just show an error. If this is happening regularly there will likely be other failures too, and a general IT provider should investigate the issue more thoroughly.


-- Permissions. Users may not have permission to write to some or all of the files in the Medilink database. Check the permissions of the Medilink data folder on the server and include the read/write permission to the user(s) affected.


-- Hard drive Full. This is uncommon these days, although was very common when the database engine was created which is why 'Insufficient Disk Space' was chosen as the general write failure message. Check the free space of the hard drive on the server that has the Medilink data, to see if it is full. If it is, get a bigger hard drive and move Medilink to it.


-- Database Rules. There may be rules on database indices or keys that stipulate that certain fields or compound keys are unique or adhere to some other condition. This should happen during specific actions only, and the Medilink developers would need to investigate to what is the cause of the error. For example, if it happens only when you are receipting payments, it may be an issue with the indices in the BANKING.DB table. (Note for troubleshooting: mostly this will show itself as a 'Key Violation' error, but sometimes the error shown will be the general write fail error regardless.)


-- Block Size. The database engine (Paradox) has a size limit depending on the size of the table 'block size'. By default, the block size is 2048, which gives a maximum of 128MB. This error may show itself as 'Table Full' (but as before, the general write fail error may show in some cases). The best way to detect if this has occurred is to look at the Medilink data folder and sort by size, any *.DB file over 128MB may be affected. Use UTILITIES\PXREST.EXE to change the block size to a higher value (note, you will need everyone out of Medilink to do this). Another option is to truncate/archive old data to make the tables smaller (this requires discussion with Medilink, and is outside of our standard support agreements).