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

AQAOCOD9.m

Go to the documentation of this file.
  1. AQAOCOD9 ; IHS/ORDC/LJF - MAINTAIN CODE RANGES IN TABLE ;
  1. ;;1.01;QAI MANAGEMENT;;OCT 05, 1995
  1. ;IHS/ORDC/LJF; copy of DEL subrtn of rtn ^ATXCODE1
  1. ; ;4.2;Taxonomy;;MAR 19, 1991
  1. ; changes: changed namespacing from ATX to AQA
  1. ; added check of AQAOICD to determin if using ICD9 or ICD0
  1. ;
  1. DEL ;ENTRY POINT - SECTION FOR DELETING CODES FROM TABLE
  1. I '$D(AQAOTBL) G X2
  1. S AQAODONE=0
  1. S AQAOVAL="" F S AQAOVAL=$O(AQAOTBL(AQAOVAL)) Q:AQAOVAL="" D GETCASE,DELPROC Q:AQAODONE
  1. X2 Q
  1. DELPROC ;CASE SPECIFIC DEL PROCESSING
  1. G @("DEL"_AQAOCASE)
  1. DEL2 ;;
  1. I AQAOICD=0 G DEL2A ;IHS/ORDC/LJF code for ICD0
  1. I AQAO("HI")=AQAOTBL(AQAOVAL) K AQAOTBL(AQAOVAL)
  1. E S AQAOTBL($O(^ICD9("BA",AQAO("HI"))))=AQAOTBL(AQAOVAL) K AQAOTBL(AQAOVAL)
  1. S AQAODONE=1
  1. Q
  1. DEL2A ;; for procedures
  1. I AQAO("HI")=AQAOTBL(AQAOVAL) K AQAOTBL(AQAOVAL)
  1. E S AQAOTBL($O(^ICD0("BA",AQAO("HI"))))=AQAOTBL(AQAOVAL) K AQAOTBL(AQAOVAL)
  1. S AQAODONE=1
  1. Q
  1. DEL3 ;;
  1. DEL6 ;;
  1. I AQAOICD=9 S AQAOTBL($O(^ICD9("BA",AQAO("HI"))))=AQAOTBL(AQAOVAL) K AQAOTBL(AQAOVAL)
  1. I AQAOICD=0 S AQAOTBL($O(^ICD0("BA",AQAO("HI"))))=AQAOTBL(AQAOVAL) K AQAOTBL(AQAOVAL) ;IHS/ORDC/LJF code for ICD0
  1. S AQAODONE=1
  1. Q
  1. DEL4 ;;
  1. DEL5 ;;
  1. DEL7 ;;
  1. DEL8 ;;
  1. K AQAOTBL(AQAOVAL)
  1. I AQAOCASE'=8,AQAOCASE'=5 S AQAODONE=1
  1. Q
  1. DEL10 ;;
  1. DEL11 ;;
  1. DEL12 ;;
  1. D @$S($E(AQAOTBL(AQAOVAL))?1N:"NUMBER",1:"LETTER")
  1. S AQAOTBL(AQAOVAL)=AQAO("NEWHI")
  1. I AQAOCASE=10 S AQAODONE=1
  1. Q
  1. DEL9 ;;
  1. D @$S($E(AQAOTBL(AQAOVAL))?1N:"NUMBER",1:"LETTER")
  1. I AQAOICD=9 S AQAOTBL($O(^ICD9("BA",AQAO("HI"))))=AQAOTBL(AQAOVAL)
  1. I AQAOICD=0 S AQAOTBL($O(^ICD0("BA",AQAO("HI"))))=AQAOTBL(AQAOVAL)
  1. S AQAOTBL(AQAOVAL)=AQAO("NEWHI")
  1. S AQAODONE=1
  1. Q
  1. DEL1 ;;
  1. DEL13 ;;
  1. Q
  1. ;
  1. ;
  1. GETCASE ; SUBROUTINE TO DETERMINE AQAOCASE # FROM INPUT CODE RANGE
  1. S AQAO("TLOW")=AQAOVAL,AQAO("THI")=AQAOTBL(AQAOVAL)
  1. D CASEA:AQAO("TLOW")]AQAO("LOW"),CASEB:AQAO("LOW")=AQAO("TLOW"),CASEC:AQAO("LOW")]AQAO("TLOW")
  1. K AQAO("TLOW"),AQAO("THI")
  1. Q
  1. ;
  1. ;
  1. CASEA ;
  1. I AQAO("HI")]AQAO("TLOW") S AQAOCASE=$S(AQAO("THI")]AQAO("HI"):3,AQAO("HI")=AQAO("THI"):4,1:5)
  1. E S AQAOCASE=$S(AQAO("TLOW")]AQAO("HI"):1,1:2)
  1. Q
  1. CASEB ;
  1. S AQAOCASE=$S(AQAO("THI")]AQAO("HI"):6,AQAO("HI")=AQAO("THI"):7,1:8)
  1. Q
  1. CASEC ;
  1. I AQAO("THI")]AQAO("LOW") S AQAOCASE=$S(AQAO("THI")]AQAO("HI"):9,AQAO("HI")=AQAO("THI"):10,1:11)
  1. E S AQAOCASE=$S(AQAO("LOW")=AQAO("THI"):12,1:13)
  1. Q
  1. NUMBER ;
  1. I AQAOICD=0 G NUMBER2 ;IHS/ORDC/LJF code for procedures
  1. S AQAO("CODE")=AQAO("LOW")-5 F Q:AQAO("LOW")]$O(^ICD9("BA",AQAO("CODE")_" ")) S AQAO("CODE")=AQAO("CODE")-5
  1. S AQAO("CODE")=$O(^ICD9("BA",AQAO("CODE")_" ")) F S AQAO("NEWHI")=AQAO("CODE"),AQAO("CODE")=$O(^ICD9("BA",AQAO("CODE"))) Q:AQAO("CODE")=AQAO("LOW")
  1. Q
  1. NUMBER2 ; CODE FOR PROCEDURES
  1. S AQAO("CODE")=AQAO("LOW")-5 F Q:AQAO("LOW")]$O(^ICD0("BA",AQAO("CODE")_" ")) S AQAO("CODE")=AQAO("CODE")-5 ;IHS/ORDC/LJF code for ICD0
  1. S AQAO("CODE")=$O(^ICD0("BA",AQAO("CODE")_" ")) F S AQAO("NEWHI")=AQAO("CODE"),AQAO("CODE")=$O(^ICD0("BA",AQAO("CODE"))) Q:AQAO("CODE")=AQAO("LOW") ;IHS/ORDC/LJF code for ICD0
  1. Q
  1. LETTER ;
  1. I AQAOICD=9 S AQAO("LET")=$E(AQAO("LOW"))_" " F S AQAO("NEWHI")=$S($L(AQAO("LET"))>2:AQAO("LET"),1:AQAO("LOW")),AQAO("LET")=$O(^ICD9("BA",AQAO("LET"))) Q:AQAO("LET")=AQAO("LOW")
  1. I AQAOICD=0 S AQAO("LET")=$E(AQAO("LOW"))_" " F S AQAO("NEWHI")=$S($L(AQAO("LET"))>2:AQAO("LET"),1:AQAO("LOW")),AQAO("LET")=$O(^ICD0("BA",AQAO("LET"))) Q:AQAO("LET")=AQAO("LOW") ;IHS/ORDC/LJF code for ICD0
  1. S AQAO("LET")=$E(AQAO("LOW"))_" " F S AQAO("NEWHI")=$S($L(AQAO("LET"))>2:AQAO("LET"),1:AQAO("LOW")),AQAO("LET")=$O(@(AQAOFL_"(""BA"","_AQAO("LET")_")")) Q:AQAO("LET")=AQAO("LOW")
  1. Q