One of our developers pointed out that he runs CGI-DRG on his Windows 7 PC and that others could as well.
Our customer service head was doubtful that this is a solution for most users, since it requires installing a web server on the PC first. But we let the developer write up his solution so we could post it in case it is more widely interesting than Customer Service thinks. This is the tech blog after all.
To run CGI-DRG on a PC, you need to do three things:
- install a web server on the PC (just do this once)
- install CGI-DRG (need a new one every year)
- install MASKS (need a new one every year)
INSTALL THE WEB SERVER (ONE TIME)
If you have IT support, perhaps they can put a "personal web server" (PWS) on your PC for you; just remember that your PWS has to be able to run CGI scripts.
(A PWS should not be too much of a security issue since it should be configured to only provide service to the PC itself, not over the network.)
If you have to install it yourself, it isn't too big a deal. I choose the Abyss Web Server from Aprelium because it is highly reviewed, it is free and it worked the first time: http://www.aprelium.com/abyssws/
In order to write these instructions, I started with a fresh Windows 7 machine and did the following:
- Download the free PWS installation appropriate to your O/S from here: http://www.aprelium.com/abyssws/download.php (I chose the Windows link, the first one.) This downloaded abwsx1.exe, which contained both 32-bit and 64-bit versions. Not sure which one you need? Don't panic, Microsoft tells you how to find out here: http://support.microsoft.com/kb/827218 But it did not matter for me, the installer correctly chose 32-bit automatically.
- Run the installer (abwsx1.exe) and take all the defaults. I chose to have the web server start on user login because I don't want to have to start it up myself when I need it, but I am irrationally afraid of making it a windows service. Do whatever makes sense to you.
- The Windows 7 firewall complained about something. I agreed to the default and most strict option.
- I confirmed that the Abyss Web Server was up and running by entering http://127.0.0.1/ into my local browser; 127.0.0.1 is the IP address of the local machine. I got back the default Abyss Web Server web page, so I knew that all was well.
- Now we need to allow this PWS to run CGI scripts; first, we create the directory in which to put the CGI scripts: c:\Abyss Web Server\htdocs\cgi-bin". In other words, you are adding a subdirectory "cgi-bin" to the existing directory "c:\Abyss Web Server\htdocs".
- Now the only slightly tricky part: giving this directory permission to run scripts. You go to this URL and follow the prompts: http://127.0.0.1:9999
- choose a language (English, French or Arabic)
- set up web server credentials
- use the web server credentials to log in
- hit the "configure" button in the blue "Hosts" box
- choose Aliases, then Add
- Virtual path="/cgi-bin", Real path="C:\Abyss Web Server\htdocs\cgi-bin"
- hit OK
- choose Scripting Parameters add a new script path for "/cgi-bin"
- hit Restart and wait until the console returns
INSTALL CGI-DRG (EVERY YEAR)
I am not sure how customers get CGI-DRG: I get it as cgi-drg.exe. I put that file into c:\Abyss Web Server\htdocs\cgi-bin; I like to use the command line like this:
c>\users\dev> copy cgi-drg.exe "c:\Abyss Web Server\htdocs\cgi-bin"
but you can use the Windows Explorer or whatever you want to put cgi-drg.exe into that directory.
INSTALL THE MASKS (EVERY YEAR)
You can use the standard DRGGroupers.com installer to install the masks file, in which case if you take the default, it (they) will go into "c:\program files\mandh\masks" so I will assume that did that or copied the masks file into that directory.
RUN CGI-DRG (WHENEVER YOU WANT)
Once all three installs are done, to run CGI-DRG you enter the following URL into the browser of your choice:
Note that CGI-DRG automatically detects all the versions that you have bought and will give you the ability to choose which one you want for any individual DRG assignment session.
What could be simpler?
Almost forgot, here is what it looks like: