Difference between revisions of "Diagnostic Codes Development"

From OpenEMR Project Wiki
m (Changed the download links to the CMS for both diagnostic and procedure dowload files)
Line 13: Line 13:
:Appears that some users have got this working.
:Appears that some users have got this working.
:*For standardization, propose following: '''([http://github.com/openemr/openemr/commit/f1203a12e9d010e9eeb91e026add4a51577d8ad3 THIS PART IS DONE])'''
:*For standardization, propose following: '''([http://github.com/openemr/openemr/commit/f1203a12e9d010e9eeb91e026add4a51577d8ad3 THIS PART IS DONE])'''
::*Add following sql columns to the code_types tables:
::*Add following sql columns to the code_types tables: '''([http://github.com/openemr/openemr/commit/f1203a12e9d010e9eeb91e026add4a51577d8ad3 THIS PART IS DONE])'''
:::*active (will allow placing multiple code sets without them being used unless chosen)
:::*active (will allow placing multiple code sets without them being used unless chosen)
:::*external (0 for using the codes tables to hold codeset and then 1 or greater to use an external table(s) mechanism)
:::*external (0 for using the codes tables to hold codeset and then 1 or greater to use an external table(s) mechanism)
:::*label (for displaying the code set name"
:::*label (for displaying the code set name"
::*Create an entry in code_types table(with id of 100+). See [[Code Types]] wiki page for details.
::*Create an entry in code_types table(with id of 100+). See [[Code Types]] wiki page for details. '''([http://github.com/openemr/openemr/commit/f1203a12e9d010e9eeb91e026add4a51577d8ad3 THIS PART IS DONE])'''
::*Support this in the codebase
::*Support this in the codebase '''([http://github.com/openemr/openemr/commit/f1203a12e9d010e9eeb91e026add4a51577d8ad3 THIS PART IS ALMOST DONE])'''
:::*Modularize functions and place these functions in the custom/code_types.inc.php script.
:::*Modularize functions and place these functions in the custom/code_types.inc.php script.
:*Importing codes
:*Importing codes '''THIS PART IS ALMOST DONE'''
::*Plan to import codes via the UI mechanism (like SNOMED and RXNORM)
::*Plan to import codes via the UI mechanism (like SNOMED and RXNORM)
:::*The latest raw data file packages can be downloaded from  
:::*The latest raw data file packages can be downloaded from  

Revision as of 23:45, 26 May 2012

Overview

OpenEMR currently supports ICD9 diagnostic codes by default (although the codes need to be imported via phpmyadmin). It is also important to support ICD10 and SNOMED as an option; this wiki page will track the development of this. This was started after active discussion in the icd10 sourceforge forum thread.

The vital pieces here are the 'codes' and 'code_type' sql tables. It seems a lot of the codebase relies on hard-coded 'ct_id' elements in the 'codes' table to identify the code set. However, to get things to work smoothly, one option is to consider refactoring the code to instead use join in the mysql queries in order to instead use the 'ct_key' elements in the 'code_type' table to identify the code set and is discussed on the Code Types wiki page.

ICD9

Already integrated and working on a default OpenEMR installation(although the codes need to be imported via phpmyadmin).
  • For ease of use, could consider mechanism that has these codes installed by default, but that needs to be turned "on" to use.
  • Create a mechanism to search for ICD9 codes by category.

ICD10

Article on transition from ICD9 to ICD10 in the US: Guest Article: Actionable advice on how to make tangible progress in ICD-9 to ICD-10 migration
Appears that some users have got this working.
  • active (will allow placing multiple code sets without them being used unless chosen)
  • external (0 for using the codes tables to hold codeset and then 1 or greater to use an external table(s) mechanism)
  • label (for displaying the code set name"
  • Modularize functions and place these functions in the custom/code_types.inc.php script.
  • Importing codes THIS PART IS ALMOST DONE
  • Plan to import codes via the UI mechanism (like SNOMED and RXNORM)
  • The latest raw data file packages can be downloaded from
  • See the following forum threads for ongoing progress on this project:

SNOMED

Can currently import the SNOMED datasets into the OpenEMR databasae, however it is currently not integrated with the OpenEMR codebase.
  • Create an entry in code_types table(with id of 100+). See Code Types wiki page for details.
  • Support this in the codebase

DSMIV

Appears that some users are working on this
  • Create an entry in code_types table(with id of 100+). See Code Types wiki page for details.
  • Support this in the codebase

Common Issues

Lots of places in code that need to be adjusted to allow full customizability. (I THINK THIS IS DONE)
  • Fee Sheet
  • Allow justification by non-ICD9 codes (this has been included in the 4.1 patch)
  • Only allow justification by codes within the 'Justify' option of the the primary code type.
  • And many more...