|
Bridge - VixWin
In Program
Links, enable the Gendex VixWin link. You should then be able to click on the new button
at the top of the appropriate module.
Gendex VixWin

You will see that the bridge is called the "new" VixWin bridge. This is a direct
bridge that uses the command line. The old bridge used an intermediate program called QuikLink. That
bridge is still functional for offices that have been using it successfully, but the new
bridge is simpler.
An example of the command line function that we use would be:
c:\vixwin\vixwin -I 123ABC -N Bill^Smith
Everything after the c:\vixwin\vixwin is the "command" that is sent
to VixWin.
This follows the technical specs shown below which were provided by Gendex. Note that
we do not pass the P parameter, so the storage path that you set in VixWin will be the one
that is used because we do not overwrite that preference.
Patient ID: We do pass the I parameter, and this is how VixWin knows which patient we are referring
to. If you have been using Open Dental from the start, this won't be a problem. But
if you had a conversion done, then you will need to pay close attention to the patient ID's. First,
look in the screenshot above. In the middle is a big white box with a label above it that
says "Additional Properties". Double click on the one listed property. If
the value is 0, then you are using the Open Dental PatNum as the patient ID. But if the
value is 1, you are using the Open Dental ChartNumber as the patient ID. Both the PatNum
and the ChartNumber are visible in the patient edit window. The ChartNumber is rarely used
because a ChartNumber must be manually entered for each patient. It is critical that the
patient ID's in VixWin exactly match the patient IDs (most likely PatNums) in Open Dental. If
they don't match for some reason, then you have to determine why. You have to either change
all the IDs in VixWin, or start using the ChartNumber in Open Dental.
Contrary to what the technical specs below might say, Open Dental doesn't "own" or "store"
the patient images. VixWin is entirely responsible for handling the acquisition, organization,
and storage of images. All that Open Dental does is to trigger VixWin to open the correct
patient. Once VixWin is open to the correct patient, Open Dental does not get involved and
knows nothing about the individual images.
Technical Specs
Here are all the relevant excerpts from the Gendex website:
http://www.gendex.com/downloads/manuals/Manual_VixwinPlatinum_En.pdf
Page 14:
Database
To configure the database:
From the menu bar:
1. Click Options and select Preferences.
2. Click the Database tab.
3. Select an Operating Mode:
• Bridge – Activates the VixWin bridge to the Practice Management (PM) software
that will be used. In Bridge mode, the Practice Management software owns and
stores the patient database.
Note: If you need information about Practice Management (PM) software, contact
your Practice Management Provider.
• Stand Alone – VixWin will store the patient data and images on the selected database
drive.
4. If the operating mode selected is Stand Alone, click the Database drive arrow and
select the drive where the patient/image database will be physically located:
• Disk “C” local if the patient database will be stored on the local computer.
• The appropriate shared network drive, if the patient database will be stored on the
network.
5. If the operating mode selected is Bridge Mode, click the Image drive arrow and select
the drive where the patient/image database will be physically located.
Page 30:
Standalone Mode
To start your VixWin Platinum software when configured in Standalone mode:
1. Open VixWin Platinum from Start ? All Programs ? Gendex Imaging or
click the VixWin icon on the desktop:
2. Wait a few seconds until the Patient Folder window appears.
3. Continue to the Accessing and Creating a New Patient section in this
manual.
Bridge Mode
Note: Properties related to the dental Practice Management software are set up independently
from VixWin. The Bridge mode feature enables communication between the imaging
software and the Practice Management software. Refer to your Practice Management
software user manual for more information.
In Bridge mode, the Practice Management software owns and stores the patient database.
To start your VixWin Platinum software when configured in Bridge mode:
1. Click on the link in the Practice Management software to launch the VixWin program.
2. Wait a few seconds until VixWin Platinum opens and the patient name appears in the
title bar.
3. Continue to the Creating and Managing Mounts – for Full mouth View section in this
manual.
From some other source:
VixWin accepts the following command line parameters in bridge mode:
<VIXWIN PATH> -I <Patient ID> [<OPTIONAL>]
Example:
c:\vixwin\vixwin -I 123ABC -N Bill^Smith -P C:\VxImages
NEEDED:
-I Patient ID : max 64 alphanumeric characters)
OPTIONAL:
-N Patient's Name : Name^Surname
-P Storage Path The drive letter will be over-written with that configured in the VixWin's
preferences
NOTE 1: Use the printable ASCII character set. No spaces allowed.
NOTE 2: The maximum combined length of the command-line arguments (including spaces and the
program name itself) is 256 characters.
NOTE 3: If the image storage pathname is not sent then VixWin uses the last one received
(default is C:\Vximages).
NOTE 4: The directory structure for the storage pathname must be created by the calling program.
VixWin will only create single level directories.
A user on our forum posted the following details about the bridge on 8/15/09 (slightly edited)
VixWin has two modes (options --> preferences --> 'bridge mode' | 'stand alone mode') and someone decided they should store and retrieve data from two separate directories, VXDATA and VXIMAGES, respectively. So when in 'bridge mode' the program can't find images generated in 'stand alone mode' and vice-versa. This makes conversions a bit of a challenge.
In a round-about way, OpenDental is responsible for naming the VixWin files, but OpenDental doesn't do this on purpose. The VixWin program (when running in 'bridge mode') simply assumes that whatever variable is passed is intended as the file name......... so OpenDental passes a PatNum and VixWin names the resulting file with that number.
Specifically, VixWin names the file 'xxPatNum00.TIF (or .....01.TIF, 02.TIF, etc. according to image number for that patient). the initial xx in the file name here denotes left padding to make the file name 8 digits long, the last two digits representing the image number for that patient.
for example, the first image for PatNum 12345 will be 01234500.TIF and the second image for PatNum 123 would be 00012302.TIF
There are two other corresponding files named xxPatNum00.TVW and xxPatNumFM.dat that are created at the same time and hold metadata that isn't critical to the program's function.
This means that in order to "attach" an existing image to an OD patient number, the associated files (.dat, .TIF, and .TVW) all have to be renamed AND moved in order to be recognized by the 'bridge mode'
program, using the PatNum provided via the OD bridge.
VixWin also generates a DBF file that indexes all the images by patient name, etc. This proved useful in moving and renaming files.
What I did was generate a script that finds all VixWin files where the patient name is identical to the way it is in OpenDental, and then move and rename the corresponding files. Because some VixWin images had names misspelled and others used nicknames, etc., this script only caught about 80%, still it helped to link the majority of 'stand alone' images to the 'bridge mode' program that recognizes OD's handoff.
This is an example script (written in Python with apologies to the teeth-gnashing among you), but a similar script will work with your favorite language. Oh, I first loated the .DBF data into MySQL to simplify the process.
#!/usr/bin/python
import MySQLdb
import shutil
db = MySQLdb.connect("server","username","password","OpenDental" )
cursor = db.cursor()
cursor.execute("
SELECT
CONCAT(vix.PTSN,'00.TIF') AS old_name,
LPAD(CONCAT(UCASE(pat.PatNum),'00.TIF'),12,0) AS new_name
FROM patient pat, VixWin vix
WHERE ((UCASE(pat.LName) = UCASE(vix.SNAM)) and (UCASE(pat.FName) = UCASE(vix.NAME)))
")
database_rows = cursor.fetchall()
db.close()
old_dir = "X:/VXDATA/"
new_dir = "X:/VXIMAGES/"
for old_name, new_name in database_rows:
try:
shutil.move(old_dir + old_name, new_dir + new_name)
except Exception as e:
print "Exception moving %r to %r: %s" % (old_name, new_name, e)
|