FAQ: Using Quicken when you want to keep your data file on a server
Unknown
Member
You should not try to access your Quicken data file directly from a server because Quicken is not designed to handle that situation and the data file can get corrupted. What's more in recent versions of Quicken the performance is terrible over a network connection, even a 1 G/bps wired connection.
So what should you do if you want to share a file on the server?
0
Comments
-
You ought to put quotes around the data file paths in case the user has spaces or other problematic characters in the name. For example, "Rocket's Data.QDF" will break the script unless "%SERVER_DIR%%DATA_FILE%" and "%TMP_DIR%%DATA_FILE%" are in quotes.
Edit: Thanks. Better now.Quicken user since version 2 for DOS, now using QWin Premier (US) on Win10 Pro.
0 -
Basically the answer is copy it to a temp file, work on it, and copy it back to the server. But this gets tricky when more than one person is going to use the data file because they can overwrite each others work if they do this both at the same time.
So the longer answer is to use a command script to do the copying using a file to signal that the other user has the file locked (two users can not change Quicken at the same time, there is no way to "sync changes").
Below is a script that will do this for you. You need to use a text editor like Notepad, and create a file Quicken.cmd, and copy and paste the text below into it. After that you will want to change the set commands to apply for your setup. Make sure everyone using the data file uses the same script. The only thing that can change from user to user is TMP_DIR and PROG_FILES_DIR.
Also as few side notes. If you create a shortcut to Quicken.cmd you can right click on that shortcut and select Properties and change the Run from Normal Window to Minimized. Also if something goes wrong with Quicken (crash), if you close Quicken.cmd in the task bar before Quicken closes this will prevent the bad copy of the Quicken data file from being copied back to the server. But if you do that make sure that you delete the lock file on the server. (UPDATED Script to quote path names, thanks RJS) . (UPDATED Script so that if Quicken crashes, the data file is not copied back to the server, but the lock file is removed)
@echo off
set DATA_FILE=MYDATA.qdf
set SERVER_DIR=\\NAS-PCQuicken
set TMP_DIR=c:\tmp
set PROG_FILES_DIR=C:\Program Files (x86)
set LOCK_FILE=%SERVER_DIR%\Quicken.lock
IF EXIST %TMP_DIR% GOTO :SKIP_MKDIR
mkdir %TMP_DIR%
IF %ERRORLEVEL% == 0 GOTO :NEXT
start /wait cmd /C "ECHO Error creating '%TMP_DIR%' && PAUSE"
goto :END
:SKIP_MKDIR
IF NOT EXIST %LOCK_FILE% GOTO NOT_LOCKED
start /wait cmd /C "ECHO %SERVER_DIR%\%DATA_FILE% is LOCKED && PAUSE"
goto :END
:NOT_LOCKED
echo lock > %LOCK_FILE%
copy %SERVER_DIR%\%DATA_FILE% %TMP_DIR%\%DATA_FILE%
"%PROG_FILES_DIR%\Quicken\qw.exe" %TMP_DIR%\%DATA_FILE%
IF %ERRORLEVEL% == 0 GOTO :TRYCOPY
del "%LOCK_FILE%"
GOTO :END
:TRYCOPY
copy %TMP_DIR%\%DATA_FILE% %SERVER_DIR%\%DATA_FILE%
IF %ERRORLEVEL% == 0 GOTO :NEXT
start /wait cmd /C "ECHO Error copying Quicken data file (maybe locked). && PAUSE"
goto :TRYCOPY
:NEXT
del %TMP_DIR%\%DATA_FILE%
del %LOCK_FILE%
:END0
This discussion has been closed.