New to VistA - general availability of Lexicon?

76 views
Skip to first unread message

DrJim

unread,
May 31, 2012, 3:42:08 PM5/31/12
to Hardhats
I am new to VistA. I found a link to the CPRS_Demo.asp. I was very
impressed.

I have been developing a database for research in podiatric medicine.
Our development system is Visual FoxPro.

I am particularly interested in the "Problem List Lexicon Search" tool
that allows the user to select a problem and its associated ICD-9-CM
code. Is it possible to interface to that tool from a Visual FoxPro
app running on a PC under Windows 7?

Thanks,
Jim

David Whitten

unread,
May 31, 2012, 7:20:56 PM5/31/12
to hard...@googlegroups.com
I don't think there will be any legal issue in using VistA's Clinical Lexicon, since it is public domain.
The CPT codes are owned by the AMA, but you didn't ask about them, and the Clinical Lexicon can
work without them.  The VistA lexicon can be accessed from MUMPS code, and I believe there is an RPC call to do this already. 

Select OPTION: INQUIRE TO FILE ENTRIES
OUTPUT FROM WHAT FILE: REMOTE PROCEDURE//
Select REMOTE PROCEDURE NAME: `247  ORQQPL PROBLEM LEX SEARCH
ANOTHER ONE:
STANDARD CAPTIONED OUTPUT? Yes//   (Yes)
Include COMPUTED fields:  (N/Y/R/B): NO// BOTH Computed Fields and Record Number
 (IEN)

NUMBER: 247                             NAME: ORQQPL PROBLEM LEX SEARCH
  TAG: LEXSRCH                          ROUTINE: ORQQPL1
  RETURN VALUE TYPE: ARRAY
 DESCRIPTION:
 Get a list from clinical lexicon for display in list or combo box
INPUT PARAMETER: FLAG                   PARAMETER TYPE: LITERAL
 DESCRIPTION:
 BACK/FORE FLAG
INPUT PARAMETER: NUM                    PARAMETER TYPE: LITERAL
 DESCRIPTION:
 MAX NUMBER OF LIST ELEMENTS
 RETURN PARAMETER DESCRIPTION:
 LSTARY

GTM>ZP LEXSRCH^ORQQPL1:LEXSRCH+19
LEXSRCH(LIST,FROM,N,VIEW,ORDATE)        ; Get candidate Problems from LEX file
        N LEX,VAL,VAL1,COD,CIEN,SYS,MAX,NAME
        S:'+$G(ORDATE) ORDATE=DT
        S:'$G(N) N=100
        S:'$L($G(VIEW)) VIEW="PL1"
        D CONFIG^LEXSET("GMPL",VIEW,ORDATE)
        D LOOK^LEXA(FROM,"GMPL",N,"",ORDATE)
        ... PLUS MORE ...

The main issue will be making sure you can get a TCP/IP connection established from your Fox Pro system to call the subroutine. Can you make http-based REST calls from Fox Pro? It is possible through several mechanisms (MDWS, M2WEB, & EWD to name three)  to call a MUMPS subroutine from a web-interface.

Hope this helps,
David

DrJim

unread,
Jun 1, 2012, 1:14:23 PM6/1/12
to Hardhats
David,

Thank you so much for your very detailed reply.

I have never worked with MUMPS, and we don't have MUMPS or VistA for
that matter, installed on any of our computers.

Hmmmm....

1. The code that you just provided would produce a file (or files?)
containing what exactly?
2. You mention a TCP/IP connection from FoxPro to a VistA system? That
would seem to indicate that I could access a VistA system that was not
on one of our computers. Could you clarify that?

Thanks again for your quick response.

Jim

Sam Habiel

unread,
Jun 1, 2012, 8:36:15 PM6/1/12
to hard...@googlegroups.com
Jim,

I don't recommend using the VISTA-based Lexicon... not unless you will
be writing a fully fledged clinical application. Integrating with
VISTA is a lot of work and a very big learning curve.

I would suggest using UMLS instead...
http://www.nlm.nih.gov/research/umls/ You can load it into MySql or
Oracle. You may even be able to get it into FoxPro.

FYI: ICD-9-CM has always been available as public domain from the
NCHS: http://www.cdc.gov/nchs/icd/icd9cm.htm

Sam

DrJim

unread,
Jun 7, 2012, 1:50:42 PM6/7/12
to hard...@googlegroups.com
Hi Sam,

I just applied for a UMLS license. Seems like that will take a few days before I can see if it will prove useful.

In the meantime, I went to the CDC site to investigate their ICD9-CM resources. I was able to download ICD9-CM from their site, but the files are all in RTF format. Great for humans to read, but not very useful for entering into a computer database.

I did note that they offer the ICD9-CM files on CDROM. The files are in "Folio InfoBase" format. And, I believe that the CDROM has a reader for that format. But, I doubt that the reader will really help me to get the ICD9-CM data into my database.

Do you have any suggestions?

thanks,
Jim

>> > To unsubscribe, send email to Hardhats+unsubscribe@googlegroups.com
>
> --
> http://groups.google.com/group/Hardhats
> To unsubscribe, send email to Hardhats+unsubscribe@googlegroups.com

David Whitten

unread,
Jun 7, 2012, 4:22:44 PM6/7/12
to hard...@googlegroups.com
Sam might be right that it would be easier to load the stuff directly into your system.

I was thinking that a simple query TCP/IP interface to a virtual machine running VistA
might be simpler for you.  I know RTF files can be saved from wordpad.exe as text files.

I  haven't looked at the file yet, but if it is formatted in a consistent way, the text file should
be able to be input into your system.  I don't know how technically proficient you feel.

I would be doubtful about the "Folio Infobase" CD unless you know it can generate a text
form, or there already is a text form on the CD too.

David

To unsubscribe, send email to Hardhats+u...@googlegroups.com

Benjamin Irwin

unread,
Jun 11, 2012, 8:53:43 AM6/11/12
to Hardhats
Jim,

I have been working with the ICD-10 import using the "order" file from
the CDC. It is in list format and much easier to work with.

The following link is the routine used for the import process. It is
fairly simple.

http://wbvista.info/VDOCS/Routines/I/ICD10CM2012.php

There may be an ICD-9 "order" file that you could use to import the
ICD-9 information that you are looking for.

http://www.cdc.gov/nchs/icd/icd9cm.htm#ftp

Thanks,

Ben
> >>http://www.nlm.nih.gov/**research/umls/<http://www.nlm.nih.gov/research/umls/>You can load it into MySql or
> >> Oracle. You may even be able to get it into FoxPro.
>
> >> FYI: ICD-9-CM has always been available as public domain from the
> >> NCHS:http://www.cdc.gov/nchs/icd/**icd9cm.htm<http://www.cdc.gov/nchs/icd/icd9cm.htm>
>
> >> Sam
> >> >> LEXSRCH(LIST,FROM,N,VIEW,**ORDATE)        ; Get candidate Problems
> >> from LEX
> >> >> file
> >> >>         N LEX,VAL,VAL1,COD,CIEN,SYS,MAX,**NAME
> >> >>         S:'+$G(ORDATE) ORDATE=DT
> >> >>         S:'$G(N) N=100
> >> >>         S:'$L($G(VIEW)) VIEW="PL1"
> >> >>         D CONFIG^LEXSET("GMPL",VIEW,**ORDATE)
> >> >>         D LOOK^LEXA(FROM,"GMPL",N,"",**ORDATE)
> >> >>         ... PLUS MORE ...
>
> >> >> The main issue will be making sure you can get a TCP/IP connection
> >> >> established from your Fox Pro system to call the subroutine. Can you
> >> make
> >> >> http-based REST calls from Fox Pro? It is possible through several
> >> >> mechanisms (MDWS, M2WEB, & EWD to name three)  to call a MUMPS
> >> subroutine
> >> >> from a web-interface.
>
> >> >> Hope this helps,
> >> >> David
>
> >> >> On Thu, May 31, 2012 at 3:42 PM, DrJim <drjimwal...@gmail.com> wrote:
> >> >> > I am new to VistA. I found a link to the CPRS_Demo.asp. I was very
> >> >> > impressed.
>
> >> >> > I have been developing a database for research in podiatric
> >> medicine.
> >> >> > Our development system is Visual FoxPro.
>
> >> >> > I am particularly interested in the "Problem List Lexicon Search"
> >> tool
> >> >> > that allows the user to select a problem and its associated ICD-9-CM
> >> >> > code. Is it possible to interface to that tool from a Visual FoxPro
> >> >> > app running on a PC under Windows 7?
>
> >> >> > Thanks,
> >> >> > Jim
>
> >> >> > --
> >> >> >http://groups.google.com/**group/Hardhats<http://groups.google.com/group/Hardhats>
> >> >> > To unsubscribe, send email to Hardhats+unsubscribe@**
> >> googlegroups.com <Hardhats%2Bunsu...@googlegroups.com>
>
> >> > --
> >> >http://groups.google.com/**group/Hardhats<http://groups.google.com/group/Hardhats>
> >> > To unsubscribe, send email to Hardhats+unsubscribe@**googlegroups.com<Hardhats%2Bunsubscribe@googlegroups .com>

DrJim

unread,
Jun 14, 2012, 11:38:52 AM6/14/12
to hard...@googlegroups.com
Thank you all for your suggestions.

I have found that the CMS site has the ICD9-CM codes & descriptions in an Excel file. Looks to me like it would be straightforward to import that into VFP.

Do you see any problems with that?

Thanks,
Jim
>
> >> > --
> >> >http://groups.google.com/**group/Hardhats<http://groups.google.com/group/Hardhats>
> >> > To unsubscribe, send email to Hardhats+unsubscribe@**googlegroups.com<Hardhats%2Bunsubscribe@googlegroups .com>
>
> >  --
> >http://groups.google.com/group/Hardhats
> > To unsubscribe, send email to Hardhats+unsubscribe@googlegroups.com

David Whitten

unread,
Jun 14, 2012, 12:10:04 PM6/14/12
to hard...@googlegroups.com
I would be rather surprised that Visual Fox Pro (VFP) could not import an Excel csv file into one of its tables.  If it is an xls file, you might have to load it into Excel and then save as a csv file.

I don't know if the codes and descriptions also include inactivation dates and version numbers, but if they don't you will probably find you will need them as time passes.


r...@rcresearch.us

unread,
Jun 14, 2012, 3:21:59 PM6/14/12
to hard...@googlegroups.com
Csv might be a problem. I think that Tab separated or nul separated might
be butter in that there may be commas in the free text fields of the
definitions. Just a thought.


> I would be rather surprised that Visual Fox Pro (VFP) could not import an
> Excel csv file into one of its tables. If it is an xls file, you might
> have to load it into Excel and then save as a csv file.
>
> I don't know if the codes and descriptions also include inactivation dates
> and version numbers, but if they don't you will probably find you will
> need
> them as time passes.
>
> On Thu, Jun 14, 2012 at 11:38 AM, DrJim <drjim...@gmail.com> wrote:
>
>> Thank you all for your suggestions.
>>
>> I have found that the CMS site has the ICD9-CM codes & descriptions in
>> an
>> Excel file. Looks to me like it would be straightforward to import that
>> into VFP.
>>
>> Do you see any problems with that?
>>
>> Thanks,
>> Jim
>>
>>
>> On Monday, June 11, 2012 8:53:43 AM UTC-4, Ben Irwin wrote:
>>>
>>> Jim,
>>>
>>> I have been working with the ICD-10 import using the "order" file from
>>> the CDC. It is in list format and much easier to work with.
>>>
>>> The following link is the routine used for the import process. It is
>>> fairly simple.
>>>
>>> http://wbvista.info/VDOCS/**Routines/I/ICD10CM2012.php<http://wbvista.info/VDOCS/Routines/I/ICD10CM2012.php>
>>>
>>> There may be an ICD-9 "order" file that you could use to import the
>>> ICD-9 information that you are looking for.
>>>
>>> http://www.cdc.gov/nchs/icd/**icd9cm.htm#ftp<http://www.cdc.gov/nchs/icd/icd9cm.htm#ftp>
>>> > >>http://www.nlm.nih.gov/****research/umls/<http://www.nlm.nih.gov/**research/umls/>
>>> <http://www.nlm.**nih.gov/research/umls/<http://www.nlm.nih.gov/research/umls/>>You
>>> can load it into MySql or
>>> > >> Oracle. You may even be able to get it into FoxPro.
>>> >
>>> > >> FYI: ICD-9-CM has always been available as public domain from the
>>> > >> NCHS:http://www.cdc.gov/nchs/**icd/**icd9cm.htm<http://www.cdc.gov/nchs/icd/**icd9cm.htm>
>>> <http://www.**cdc.gov/nchs/icd/icd9cm.htm<http://www.cdc.gov/nchs/icd/icd9cm.htm>>
>>> > >> >> LEXSRCH(LIST,FROM,N,VIEW,****ORDATE) ; Get candidate
>>> Problems
>>> > >> from LEX
>>> > >> >> file
>>> > >> >> N LEX,VAL,VAL1,COD,CIEN,SYS,MAX,****NAME
>>> > >> >> S:'+$G(ORDATE) ORDATE=DT
>>> > >> >> S:'$G(N) N=100
>>> > >> >> S:'$L($G(VIEW)) VIEW="PL1"
>>> > >> >> D CONFIG^LEXSET("GMPL",VIEW,****ORDATE)
>>> > >> >> D LOOK^LEXA(FROM,"GMPL",N,"",****ORDATE)
>>> > >> >> >http://groups.google.com/****group/Hardhats<http://groups.google.com/**group/Hardhats>
>>> <http://groups.**google.com/group/Hardhats<http://groups.google.com/group/Hardhats>>
>>>
>>> > >> >> > To unsubscribe, send email to Hardhats+unsubscribe@**
>>> > >> googlegroups.com
>>> <Hardhats%2Bunsubscribe@**googlegroups.com<Hardhats%252Buns...@googlegroups.com>>
>>>
>>> >
>>> > >> > --
>>> > >> >http://groups.google.com/****group/Hardhats<http://groups.google.com/**group/Hardhats>
>>> <http://groups.**google.com/group/Hardhats<http://groups.google.com/group/Hardhats>>
>>>
>>> > >> > To unsubscribe, send email to Hardhats+unsubscribe@**googleg**
>>> roups.com
>>> <http://googlegroups.com><Hardhats%**2Bunsu...@googlegroups.com>
>>> >
>>> > > --
>>> > >http://groups.google.com/**group/Hardhats<http://groups.google.com/group/Hardhats>
>>> > > To unsubscribe, send email to
>>> Hardhats+unsubscribe@**googlegroups.com<Hardhats%2Bunsu...@googlegroups.com>

DrJim

unread,
Jun 14, 2012, 4:29:31 PM6/14/12
to hard...@googlegroups.com
I was able to import the Excel file from CMS into VFP. I massaged it a bit before the import: changing the format of the code to include a decimal pointer after the first 3 chars, and then adding a column for a primary key. I exported it from Excel as a tab-delimited text file, and was able to import that into VFP. Works like a charm. 

Again, thank you all for your help.

Jim


Reply all
Reply to author
Forward
0 new messages