Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: MC44PST0

MC44PST0.m

Go to the documentation of this file.
  1. MC44PST0 ;ALB/JAM - MEDICAL DIAGNOSES UPDATE WITH ICD10 CODES ;3/26/12 15:45
  1. ;;2.3;Medicine;**44**;09/13/1996;Build 9
  1. ;
  1. ;This post install routine(s) contain ICD10 codes that will be mapped to medical diagnosis text in file #697.5
  1. ;
  1. EN ;Patch entry point
  1. N ZTRTN,ZTDESC,ZTIO,ZTDTH,ZTREQ,ZTSAVE
  1. D MES^XPDUTL(" ")
  1. D BMES^XPDUTL("This patch updates entries in the MEDICAL DIAGNOSIS/ICD CODES File (#697.5) with")
  1. D MES^XPDUTL("ICD10 codes.")
  1. D MES^XPDUTL(" ")
  1. D MES^XPDUTL("A MailMan message will be generated after the update is done and a report will")
  1. D MES^XPDUTL("be sent to the installer.")
  1. D MES^XPDUTL(" ")
  1. ;
  1. S ZTRTN="RPT^MC44PST0",ZTDESC="Medical Diagnosis ICD10 update MC*2.3*44",ZTIO=""
  1. S ZTDTH=$H,ZTREQ="@",ZTSAVE("ZTREQ")="" D ^%ZTLOAD
  1. Q
  1. ;
  1. RPT ;Queue entry point for Medical Diagnosis ICD10 update
  1. N COU,MCRTN,CNT,CNTD,TXT
  1. K ^TMP($J,"MCP44")
  1. L +^MCAR(697.5):$S(+$G(^DD("DILOCKTM"))>0:+^DD("DILOCKTM"),1:3) I '$T D Q
  1. .S TXT="The MEDICAL DIAGNOSIS/ICD CODES File (#697.5) is Being Edited by Another User" D LINE(TXT)
  1. .S TXT="Try installing the patch later." D LINE(TXT) D MAIL K ^TMP($J,"MCP44")
  1. D DEL
  1. S (CNT,CNTD)=0
  1. S TXT="" D LINE(TXT)
  1. S TXT="Medical Diagnosis ICD10 Code Error Message" D LINE(TXT)
  1. S TXT="----------------- ---------- -------------" D LINE(TXT)
  1. F COU=0:1:9 S MCRTN="^MC44PST"_COU D ADDX W "."
  1. F COU=10:1:22 S MCRTN="^MC44PS"_COU D ADDX W "."
  1. S TXT="" D LINE(TXT)
  1. S TXT="Total Number of Errors: "_(CNT-4) D LINE(TXT)
  1. S TXT="" D LINE(TXT)
  1. S TXT="Total ICD10 Codes mapped: "_CNTD D LINE(TXT)
  1. D MAIL
  1. L -^MCAR(697.5)
  1. K ^TMP($J,"MCP44")
  1. Q
  1. ;
  1. DEL ;Remove ICD-10 codes that are no longer valid, if patch was installed before
  1. N XX,YY,STR,ARY,DEL,RESLT
  1. ; Check if patch was installed before and delete all ICD-10 codes
  1. S DEL=$$INSTALDT^XPDUTL("MC*2.3*44",.RESLT)
  1. I '+DEL Q
  1. S XX=$O(RESLT("")) I XX="" Q
  1. S STR=RESLT(XX) I STR>3 Q
  1. ; if test version is less than or up to 3, remove ICD-10 codes
  1. S XX="" F S XX=$O(^MCAR(697.5,XX)) Q:XX="" D
  1. .S YY=0 F S YY=$O(^MCAR(697.5,XX,2,YY)) Q:'YY D
  1. ..S DX=+$G(^MCAR(697.5,XX,2,YY,0)) Q:'DX
  1. ..I $$CSI^ICDEX(80,DX)'=30 Q
  1. ..S DA(1)=XX,DA=YY
  1. ..S DIK="^MCAR(697.5,"_DA(1)_",2,"
  1. ..D ^DIK
  1. ; remove invalid codes T40.1X5A and T40.8X5A
  1. S ARY("ADV EFF MEDICAL/BIOLOGICAL SUBSTANCES NOS")="",ARY("DRUG RELATED LUPUS ERYTHEMATOSUS")=""
  1. S ARY("DRUG RELATED RHEUMATIC SYNDROMES")=""
  1. S XX="" F S XX=$O(^MCAR(697.5,XX)) Q:XX="" D
  1. .S STR=$P($G(^MCAR(697.5,XX,0)),"^") Q:STR=""
  1. .Q:'$D(ARY(STR))
  1. .S YY=0 F S YY=$O(^MCAR(697.5,XX,2,YY)) Q:'YY D
  1. ..S DX=+$G(^MCAR(697.5,XX,2,YY,0)) Q:'DX
  1. ..I +$$CODEC^ICDEX(80,DX)'=-1 Q
  1. ..S DA(1)=XX,DA=YY
  1. ..S DIK="^MCAR(697.5,"_DA(1)_",2,"
  1. ..D ^DIK
  1. Q
  1. ;
  1. ADDX ;* add ICD10 diagnosis code
  1. N MCX,MCTAG,MCXY,MCXX,MCDXT,ERRTXT,DX,SPACE
  1. S $P(SPACE," ",60)=""
  1. F MCX=1:1 S MCTAG="CODES+"_MCX_MCRTN,MCXY=$P($T(@MCTAG),";;",2) Q:MCXY="" D
  1. .S MCXX=$P(MCXY,"^"),DX=$$UP^XLFSTR($P(MCXY,"^",2))
  1. .S MCDXT=$$FIND1^DIC(697.5,"","X",MCXX) I +MCDXT<1 D Q
  1. ..S ERRTXT="Medical Diagnosis not on File" D ERRSET(ERRTXT)
  1. .D FILICD
  1. Q
  1. ;
  1. FILICD ;File ICD10 codes in File 697.5
  1. N DXIEN,MCFDA,MCERR,ERRTXT
  1. I DX="" D Q
  1. .S ERRTXT="Missing ICD10 code" D ERRSET(ERRTXT)
  1. I $$CODECS^ICDEX(DX,80)'["ICD-10" D Q
  1. .S ERRTXT="Invalid ICD-10 code" D ERRSET(ERRTXT)
  1. S DXIEN=+$$CODEN^ICDEX(DX)
  1. ;check if ICD10 code already on file
  1. I $D(^MCAR(697.5,MCDXT,2,"B",DXIEN)) Q
  1. S MCFDA(697.51,"+2,"_MCDXT_",",.01)=DXIEN
  1. D UPDATE^DIE("","MCFDA","","MCERR")
  1. I $D(MCERR) S ERRTXT="Error while attempting to file ICD10 code" D ERRSET(ERRTXT) Q
  1. S CNTD=CNTD+1
  1. Q
  1. ERRSET(ERRMSG) ; set string with error
  1. N STR
  1. S STR=$E(MCXX,1,38)_$E(SPACE,1,38-$L(MCXX))_DX_$E(SPACE,1,11-$L(DX))_ERRMSG
  1. D LINE(STR)
  1. Q
  1. LINE(TEXT) ; Add line to message global
  1. S CNT=CNT+1,^TMP($J,"MCP44",CNT)=TEXT
  1. Q
  1. ;
  1. MAIL ; Send message
  1. N XMDUZ,XMY,XMTEXT,XMSUB
  1. S XMY(DUZ)="",XMDUZ=.5
  1. S XMSUB="Medical Diagnoses ICD10 Codes Mapping Report"
  1. S XMTEXT="^TMP($J,""MCP44"","
  1. D ^XMD
  1. Q
  1. ;
  1. CODES ;
  1. ;;MYOCARDIAL INFARCTION - TRANSMURAL Q WAVE^I25.2
  1. ;;SUSPECTED CAD^I25.3
  1. ;;SUSPECTED CAD^R94.31
  1. ;;SUSPECTED CAD^I20.8
  1. ;;SUSPECTED CAD^I20.8
  1. ;;SUSPECTED CAD^I20.9
  1. ;;SUSPECTED CAD^I25.111
  1. ;;SUSPECTED CAD^I25.118
  1. ;;SUSPECTED CAD^I25.119
  1. ;;SUSPECTED CAD^I25.701
  1. ;;SUSPECTED CAD^I25.708
  1. ;;SUSPECTED CAD^I25.709
  1. ;;SUSPECTED CAD^I25.711
  1. ;;SUSPECTED CAD^I25.718
  1. ;;SUSPECTED CAD^I25.719
  1. ;;SUSPECTED CAD^I25.721
  1. ;;SUSPECTED CAD^I25.728
  1. ;;SUSPECTED CAD^I25.729
  1. ;;SUSPECTED CAD^I25.731
  1. ;;SUSPECTED CAD^I25.738
  1. ;;SUSPECTED CAD^I25.739
  1. ;;SUSPECTED CAD^I25.751
  1. ;;SUSPECTED CAD^I25.758
  1. ;;SUSPECTED CAD^I25.759
  1. ;;SUSPECTED CAD^I25.761
  1. ;;SUSPECTED CAD^I25.768
  1. ;;SUSPECTED CAD^I25.769
  1. ;;SUSPECTED CAD^I25.791
  1. ;;SUSPECTED CAD^I25.798
  1. ;;SUSPECTED CAD^I25.799
  1. ;;SUSPECTED CAD^I25.2
  1. ;;SUSPECTED CAD^I25.10
  1. ;;SUSPECTED CAD^I70.8
  1. ;;SUSPECTED CAD^I24.1
  1. ;;SUSPECTED CAD^R07.82
  1. ;;SUSPECTED CAD^R07.89
  1. ;;SUSPECTED CAD^R07.9
  1. ;;SUSPECTED CAD^I25.5
  1. ;;SUSPECTED CAD^I25.6
  1. ;;SUSPECTED CAD^I25.89
  1. ;;SUSPECTED CAD^I25.9
  1. ;;SUSPECTED CAD^I51.9
  1. ;;SUSPECTED CAD^I52.
  1. ;;SUSPECTED CAD^I51.89
  1. ;;SUSPECTED CAD^I51.5
  1. ;;SUSPECTED CAD^I72.8
  1. ;;SUSPECTED CAD^I72.9
  1. ;;SUSPECTED CAD^I46.2
  1. ;;SUSPECTED CAD^I46.8
  1. ;;SUSPECTED CAD^I46.9
  1. ;;SUSPECTED CAD^R57.0
  1. ;;SUSPECTED CAD^I50.1
  1. ;;SUSPECTED CAD^I23.4
  1. ;;SUSPECTED CAD^I51.1
  1. ;;ANGINA PECTORIS - STABLE^I20.8
  1. ;;ANGINA PECTORIS - STABLE^I20.9
  1. ;;ANGINA PECTORIS - STABLE^I25.111
  1. ;;ANGINA PECTORIS - STABLE^I25.118
  1. ;;ANGINA PECTORIS - STABLE^I25.119
  1. ;;ANGINA PECTORIS - STABLE^I25.701
  1. ;;ANGINA PECTORIS - STABLE^I25.708
  1. ;;ANGINA PECTORIS - STABLE^I25.709
  1. ;;ANGINA PECTORIS - STABLE^I25.711
  1. ;;ANGINA PECTORIS - STABLE^I25.718
  1. ;;ANGINA PECTORIS - STABLE^I25.719
  1. ;;ANGINA PECTORIS - STABLE^I25.721
  1. ;;ANGINA PECTORIS - STABLE^I25.728
  1. ;;ANGINA PECTORIS - STABLE^I25.729
  1. ;;ANGINA PECTORIS - STABLE^I25.731
  1. ;;ANGINA PECTORIS - STABLE^I25.738
  1. ;;ANGINA PECTORIS - STABLE^I25.739
  1. ;;ANGINA PECTORIS - STABLE^I25.751
  1. ;;ANGINA PECTORIS - STABLE^I25.758
  1. ;;ANGINA PECTORIS - STABLE^I25.759
  1. ;;ANGINA PECTORIS - STABLE^I25.761
  1. ;;ANGINA PECTORIS - STABLE^I25.768
  1. ;;ANGINA PECTORIS - STABLE^I25.769
  1. ;;ANGINA PECTORIS - STABLE^I25.791
  1. ;;ANGINA PECTORIS - STABLE^I25.798
  1. ;;ANGINA PECTORIS - STABLE^I25.799
  1. ;;ANGINA PECTORIS - STABLE^I20.1
  1. ;;ANGINA PECTORIS - STABLE^I20.8
  1. ;;ANGINA PECTORIS - STABLE^R07.9
  1. ;;ANGINA PECTORIS - STABLE^I25.9
  1. ;;ANGINA PECTORIS - STABLE^I25.5
  1. ;;ANGINA PECTORIS - STABLE^I25.6
  1. ;;ANGINA PECTORIS - STABLE^I25.89
  1. ;;ANGINA PECTORIS - UNSTABLE^I20.8
  1. ;;ANGINA PECTORIS - UNSTABLE^I20.9
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.111
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.118
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.119
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.701
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.708
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.709
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.711
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.718
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.719
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.721
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.728
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.729
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.731
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.738
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.739
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.751
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.758
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.759
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.761
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.768
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.769
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.791
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.798
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.799
  1. ;;ANGINA PECTORIS - UNSTABLE^I20.1
  1. ;;ANGINA PECTORIS - UNSTABLE^I20.8
  1. ;;ANGINA PECTORIS - UNSTABLE^R07.9
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.5
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.6
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.89
  1. ;;ANGINA PECTORIS - UNSTABLE^I25.9
  1. ;;MYOCARDITIS^I40.0
  1. ;;MYOCARDITIS^I40.1
  1. ;;MYOCARDITIS^I40.8
  1. ;;MYOCARDITIS^I40.9
  1. ;;MYOCARDITIS^A36.81
  1. ;;MYOCARDITIS^B33.22
  1. ;;MYOCARDITIS^A39.52
  1. ;;MYOCARDITIS^I09.0
  1. ;;MYOCARDITIS^I40.0
  1. ;;MYOCARDITIS^A52.06
  1. ;;MYOCARDITIS^I40.8
  1. ;;HYPERTENSIVE HEART DISEASE^A18.84
  1. ;;HYPERTENSIVE HEART DISEASE^D15.1
  1. ;;HYPERTENSIVE HEART DISEASE^I10.
  1. ;;HYPERTENSIVE HEART DISEASE^I11.0
  1. ;;HYPERTENSIVE HEART DISEASE^I11.9
  1. ;;HYPERTENSIVE HEART DISEASE^I15.0
  1. ;;HYPERTENSIVE HEART DISEASE^I15.1
  1. ;;HYPERTENSIVE HEART DISEASE^I15.2
  1. ;;HYPERTENSIVE HEART DISEASE^I15.8
  1. ;;HYPERTENSIVE HEART DISEASE^I15.9
  1. ;;HYPERTENSIVE HEART DISEASE^I43.
  1. ;;HYPERTENSIVE HEART DISEASE^N26.2
  1. ;;HCM - OBSTRUCTIVE^A18.84
  1. ;;HCM - OBSTRUCTIVE^I43.
  1. ;;HCM - NON-OBSTRUCTIVE^A18.84
  1. ;;HCM - NON-OBSTRUCTIVE^I43.
  1. ;;HCM - PROVOCABLE OBSTRUCTION^A18.84
  1. ;;HCM - PROVOCABLE OBSTRUCTION^I43.
  1. ;;CARDIOMYOPATHY - DILATED^A18.84
  1. ;;CARDIOMYOPATHY - DILATED^I43.
  1. ;;CARDIOMYOPATHY - DILATED^I42.6
  1. ;;CARDIOMYOPATHY - DILATED^I51.7
  1. ;;CARDIOMYOPATHY - INFILTRATIVE/RESTRICTIVE^A18.84
  1. ;;CARDIOMYOPATHY - INFILTRATIVE/RESTRICTIVE^I43.
  1. ;;MITRAL STENOSIS^I05.0
  1. ;;MITRAL STENOSIS^Q23.2
  1. ;;MITRAL STENOSIS^I08.0
  1. ;;MITRAL STENOSIS^I08.0
  1. ;;MITRAL STENOSIS^I05.2
  1. ;;MITRAL STENOSIS^I05.8
  1. ;;MITRAL STENOSIS^I05.9
  1. ;;MITRAL STENOSIS^I34.0
  1. ;;MITRAL STENOSIS^I34.1
  1. ;;MITRAL STENOSIS^I34.2
  1. ;;MITRAL STENOSIS^I34.8
  1. ;;MITRAL STENOSIS^I34.9
  1. ;;MITRAL STENOSIS^I08.9
  1. ;;MITRAL STENOSIS^I09.9