ICD, rxNorm and Snomed data loads

arnabnaha wrote on Tuesday, June 05, 2012:

Hi…
Can anybody tell me…how to use the ICD 10 codes…actually I cant find any code in Administration ->Services. where to get the ICD 10 codes and how to put it in the database? Please help!

Dr. Arnab Naha

bradymiller wrote on Tuesday, June 05, 2012:

Hi,

The code to import the ICD10 codes is not yet in the official codebase. You’ll need to commit this patch to your codebase (note this is still in development, so only suggest doing this on a testing instance of OpenEMR):
http://github.com/bradymiller/openemr/commit/470875602d2550037c9eff37c7e4bcd1a0506d61

Then following instructions in:
contrib/icd10/README

-brady
OpenEMR

bradymiller wrote on Tuesday, June 12, 2012:

Hi Mac,

Sounds like we have a good plan with the ICD9/ICD10 importing stuff. I know we agreed to create rolling tables for the dx/proc ICD9/ICD10 codes that are imported (ie. rather than drop the tables, simply keep adding codes) in order to avoid deprecated code descriptions getting lost when making reports in the future, which seems ideal. Something I just realized is that it may need some thought on how to incorporate this into the searching functions, which are in the custom/code_types.inc.php at the code_set_search() function (as an aside supporting it in the lookup_code_descriptions() will be easy). My initial thoughts are that the searching mechanism shouldn’t even need to use the previous code revisions since this is where search for codes to add (whereas the lookup_code_descriptions() function does want to have the previous revisions available), so if knew where the most recent revision of codes started at in the table (for example, the id of the first row of the new newest revision) then can use this in the query. Could either store this somewhere or instead simply create a “bookmark” row in the table separating each revision, which can be searched for quickly before running the main search query  (I like the bookmark row idea, since then don’t need to add yet another mechanism/table). Or perhaps there is a better solution that you or anybody else knows of?

-brady
OpenEMR

mcaloon wrote on Tuesday, June 12, 2012:

Brady,
    I am thinking along the lines of the icd 10 tables that we want to track (dx and sg) will have a “revision” column (SERIAL perhaps) that is incremented when each new load is completed. This revision column can always be interrogated for the largest value to get the “current” values.

Mac

p.s. select splat from icd_tbl where revision = (select max(revision) from icd_tbl)

mcaloon wrote on Tuesday, June 12, 2012:

To clarify:

1.) insert new data load records with NULL value in revision
2.) get new revision value
3.) target table with new revision value where revision is NULL

bradymiller wrote on Tuesday, June 12, 2012:

Hi Mac,

Sounds like a good plan. Might as well do the same with ICD9 stuff (if plan to also make those tables rolling).

-brady

bradymiller wrote on Saturday, June 16, 2012:

Hi,

Just committed code to sourceforge to support ICD10/SNOMED code use in the CDR Rules Editor. Still some more integration work to do:
http://www.open-emr.org/wiki/index.php/Diagnostic_Codes_Development#Common_Issues

-brady
OpenEMR

bradymiller wrote on Saturday, June 16, 2012:

Hi,

Since my OpenEMR billing knowledge is not too great, was hoping to get the following code reviewed/tested:
http://github.com/bradymiller/openemr/commits/feesheet-billingsql-justify-ct_1

This code allows storage of the code type in the justify column of billing table (inputted in the Fee Sheet). This then needs to be removed when processing for X12/HCFA creation, which I did. Just want to make sure not missing any other places this is used. (the point of this is to support other code types, such as ICD10/SNOMED, as justifiers)

thanks,
-brady
OpenEMR

bradymiller wrote on Wednesday, June 20, 2012:

Hi,

For code integration work of ICD10/SNOMED, just committed code to sourceforge to support placements of code_type labels in the justify column of the billing table.

I have another much more rather extensive commit in order to add a code_type column to the ar_activity table, which is still in the early testing phase: http://github.com/bradymiller/openemr/commits/code-type-ar_activity_2

Again, been having to learn this billing stuff as I go, so please check out the code to see if I’ve done anything bad.

thanks,
-brady
OpenEMR

mcaloon wrote on Thursday, June 21, 2012:

Hellot,
   Getting close to comitting a “jquerified” version of the external data load utility. The left nav will have a single entry and I’ve added some UI features that hopefully are examples of how other UI components might leverage jquery and its poweful capabilities. The server side code is more modular and simple as it is servicing the new UI components. I’ve also added  a placeholder for the DSMIV database as well…
Mac

jcahn2 wrote on Friday, June 22, 2012:

Just to thicken the gravy - here’s a message from CMS.  Took their release schedule from the auto industry  :>) 

"The 2013 ICD-10-PCS files have been posted on the 2013 ICD-10 PCS and GEMs web page. This includes the 2013 Index and Tabular files, guidelines, code titles, addendum to reference manual, and slides. The 2013 ICD-10-PCS files contain information on the new procedure coding system, ICD-10-PCS, that is being developed as a replacement for ICD-9-CM, Volume 3.

http://www.cms.gov/Medicare/Coding/ICD10/2013-ICD-10-PCS-GEMs.html

The 2013 General Equivalent Mappings (GEMs), Reimbursement Mappings, and Reference Manual will be posted at a later date. "

mcaloon wrote on Friday, June 22, 2012:

jcahn2,
    I will take a look at these new ICD10 file postings. This will be a good test case for the new import code. I am pretty sure (unless they changed the layouts) that the ICD10 load processing will import these files as is. We’ll see. :slight_smile:

Mac

mcaloon wrote on Thursday, June 28, 2012:

I am making progress on the release testing for the new UI stuff and I took the time to test the ICD9 upgrade from CMS29 to CMS30. It appears no changes have taken place on the diagnostic codes but there was one new procedure code added. I am testing the approach we agreed upon a couple of weeks ago on how the historical records will be kept through time so as not to impact any historical reporting among other analytic type queries one might come up with…. hope to post to the hub soon…

Mac

bradymiller wrote on Saturday, June 30, 2012:

Hi,

Now have an extensively tested proposed commit for adding a code_type column to the ar_activity table:
http://github.com/bradymiller/openemr/commits/code-type-ar_activity_4
(in order to support non-CPT4 service codes in the future)

The only thing I have not been able to test is the ERA uploading (some minimal changes in interface/billing/sl_eob_process.php script). Was hoping to get one of the following:
Can somebody test it?
OR
Can I get an example basic ERA upload file, so can test myself?

thanks,
-brady
OpenEMR

bradymiller wrote on Tuesday, July 03, 2012:

Hi,

Testing of above commit looks very good, so just committed it to sourceforge. This now opens the door to the following code commit proposal, which will essentially allow coding and creating claims with any combination of ICD9/ICD10/SNOMED codes and the ability to add any other coding system rather easily in a modular fashion:
http://github.com/bradymiller/openemr/commits/Add-Flex-Proc-Codes_2
(Please review; the new code is the first commit on the list)

The best way to test the functionality of this stuff is to import the ICD9/ICD10 codes, which require Mac’s above code which is still not in the main codebase. I have created a github branch here that combines my commit above with Mac’s most recent revision of the ICD9/ICD10/SNOMED code importer.

This project is nearing completion. Just need to get Mac’s import mechanism finished up along with a couple more minor issues to deal with that are tracked here:
http://www.open-emr.org/wiki/index.php/Diagnostic_Codes_Development#Common_Issues

Mac, is there an ETA on the next code import revision (don’t feel rushed or anything, just trying to plan the release cycle; let us know if need help/resources to finish it).

-brady
OpenEMR

bradymiller wrote on Tuesday, July 03, 2012:

forgot to post the link to branch above that combines my commit with Mac’s most recent import code commit. here it is: http://github.com/bradymiller/openemr/commits/Add-Flex-Proc-Codes_2-import_6-1

mcaloon wrote on Tuesday, July 03, 2012:

Brady,  finishing up my testing of the new single page jquery based interface and tracking code table revisions through time for historical reporting purposes. ETA for hub post is 2012-07-10 as i want ensure database code is correct and all the loads work as expected. Hope to be on the call today, we can discuss…

Mac

mcaloon wrote on Tuesday, July 03, 2012:

Brady,  finishing up my testing of the new single page jquery based interface and tracking code table revisions through time for historical reporting purposes. ETA for hub post is 2012-07-10 as i want ensure database code is correct and all the loads work as expected. Hope to be on the call today, we can discuss…

Mac

bradymiller wrote on Friday, July 06, 2012:

Hi,

Plan to commit this to sourceforge soon:
http://github.com/bradymiller/openemr/commit/0393f824d149507c7bccc961cbccbeaeefdacbd1
Description:
Flexible Procedure/Service codetypes
-Place an index on the code_type column in the codes table
-Increase size of code_type column in the codes table (smallint)
-Increase size of code_type column in the billing table (varchar(15))
-Increase size of modifier column in the codes and ar_activity table (varchar(12))
-Place code_types (inactive) for CPTII,ICD9-SG and ICD10-PCS (Change the labels of
  the current ICD dx code types and table search methods to clarify)
-Documented the custom/code_types.inc.php script with DocBlock comments
-Cleaned up the queries in the custom/code_types.inc.php script

The thing I wanted to make sure is that the following code set labels are ok, since these won’t be very easy to change after these are committed:
ICD9 Diagnosis
ICD9 Procedure/Service
CPT4 Procedure/Service
HCPCS Procedure/Service
CVX Immunization
DSMIV Diagnosis
ICD10 Diagnosis
ICD10 Procedure/Service
SNOMED Diagnosis

-brady
OpenEMR

bradymiller wrote on Saturday, July 07, 2012:

Hi,
Committed above and now have the following commit for review:
https://github.com/bradymiller/openemr/commit/5b59fedb0e8090050926fc930cbbce10e83a09d1
Description:
-Improve flexibility of which code types are used in claims
-Additionally, improved support for code types are justified but have no fees (such as CPTII).

-brady
OpenEMR