| 1 | EC725U20 ;ALB/GTS/JAP/JAM - EC National Procedure Update; 12/19/02 | 
|---|
| 2 | ;;2.0; EVENT CAPTURE ;**48**;8 May 96 | 
|---|
| 3 | ; | 
|---|
| 4 | ;this routine is used as a post-init in a KIDS build | 
|---|
| 5 | ;to modify the EC National Procedure file #725 | 
|---|
| 6 | ; | 
|---|
| 7 | ADDPROC ;* add national procedures | 
|---|
| 8 | ; | 
|---|
| 9 | ;  ECXX is in format: | 
|---|
| 10 | ;   NAME^NATIONAL NUMBER^CPT CODE^FIRST NATIONAL NUMBER SEQUENCE | 
|---|
| 11 | ;   LAST NATIONAL NUMBER SEQUENCE | 
|---|
| 12 | ; | 
|---|
| 13 | N ECX,ECXX,ECDINUM,NAME,CODE,CPT,COUNT,X,Y,DIC,DIE,DA,DR,DLAYGO,DINUM | 
|---|
| 14 | N ECADD,ECBEG,ECEND,CODX,NAMX,ECSEQ,LIEN,STR,CPTN,STR | 
|---|
| 15 | D MES^XPDUTL(" ") | 
|---|
| 16 | D BMES^XPDUTL("Adding new procedures to EC NATIONAL PROCEDURE File (#725)...") | 
|---|
| 17 | D MES^XPDUTL(" ") | 
|---|
| 18 | S ECDINUM=$O(^EC(725,9999),-1),COUNT=$P(^EC(725,0),U,4) | 
|---|
| 19 | F ECX=1:1 S ECXX=$P($T(NEW+ECX),";;",2) Q:ECXX="QUIT"  D | 
|---|
| 20 | .S NAME=$P(ECXX,U,1),CODE=$P(ECXX,U,2),CPTN=$P(ECXX,U,3),CODX=CODE | 
|---|
| 21 | .S CPT="" | 
|---|
| 22 | .I CPTN'="" S CPT=$$FIND1^DIC(81,"","X",CPTN) I +CPT<1 D  Q | 
|---|
| 23 | ..S STR="   CPT code "_CPTN_" not a valid code in CPT File." | 
|---|
| 24 | ..D MES^XPDUTL(" ") | 
|---|
| 25 | ..D BMES^XPDUTL("   ["_CODE_"] "_STR) | 
|---|
| 26 | .S ECBEG=$P(ECXX,U,4),ECEND=$P(ECXX,U,5),NAMX=NAME | 
|---|
| 27 | .I ECBEG="" S X=NAME D FILPROC Q | 
|---|
| 28 | .F ECSEQ=ECBEG:1:ECEND D | 
|---|
| 29 | ..S ECADD="000"_ECSEQ,ECADD=$E(ECADD,$L(ECADD)-2,$L(ECADD)) | 
|---|
| 30 | ..;S NAME=NAMX_ECADD,X=NAME,CODE=CODX_ECADD | 
|---|
| 31 | ..I $E(CODX,1,3)'="RCM" S NAME=NAMX_ECSEQ,X=NAME,CODE=CODX_ECADD | 
|---|
| 32 | ..E  S NAME=NAMX_$E(ECADD,2,99),X=NAME,CODE=CODX_$E(ECADD,2,99) | 
|---|
| 33 | ..D FILPROC | 
|---|
| 34 | S $P(^EC(725,0),U,4)=COUNT,X=$O(^EC(725,999999),-1),$P(^EC(725,0),U,3)=X | 
|---|
| 35 | Q | 
|---|
| 36 | ; | 
|---|
| 37 | FILPROC ;File national procedures | 
|---|
| 38 | I '$D(^EC(725,"D",CODE)) D | 
|---|
| 39 | .S ECDINUM=ECDINUM+1,DINUM=ECDINUM,DIC(0)="L",DLAYGO=725,DIC="^EC(725," | 
|---|
| 40 | .S DIC("DR")="1////^S X=CODE;4////^S X=CPT" | 
|---|
| 41 | .D FILE^DICN | 
|---|
| 42 | .I +Y>0 D | 
|---|
| 43 | ..S COUNT=COUNT+1 | 
|---|
| 44 | ..D MES^XPDUTL(" ") | 
|---|
| 45 | ..S STR="   Entry #"_+Y_" for "_$P(Y,U,2) | 
|---|
| 46 | ..S STR=STR_$S(CPT'="":" [CPT: "_CPT_"]",1:"")_" ("_CODE_")" | 
|---|
| 47 | ..D BMES^XPDUTL(STR_"  ...successfully added.") | 
|---|
| 48 | .I Y=-1 D | 
|---|
| 49 | ..D MES^XPDUTL(" ") | 
|---|
| 50 | ..D BMES^XPDUTL("ERROR when attempting to add "_NAME_" ("_CODE_")") | 
|---|
| 51 | I $D(^EC(725,"DL",CODE)) D | 
|---|
| 52 | .S LIEN=$O(^EC(725,"DL",CODE,"")) | 
|---|
| 53 | .D MES^XPDUTL(" ") | 
|---|
| 54 | .D BMES^XPDUTL("   Your site has a local procedure (entry #"_LIEN_") in File #725") | 
|---|
| 55 | .D BMES^XPDUTL("   which uses "_CODE_" as its National Number.") | 
|---|
| 56 | .D BMES^XPDUTL("   Please inactivate this local procedure.") | 
|---|
| 57 | .K Y | 
|---|
| 58 | Q | 
|---|
| 59 | NEW ;national procedures to add;;descript^nation #^CPT code^beg seq^end seq | 
|---|
| 60 | ;;ADVERSE EVENT TRACK 1^AE001 | 
|---|
| 61 | ;;ADVERSE EVENT TRACK 2^AE002 | 
|---|
| 62 | ;;ADVERSE EVENT TRACK 3^AE003 | 
|---|
| 63 | ;;ADVERSE EVENT TRACK 4^AE004 | 
|---|
| 64 | ;;ADVERSE EVENT TRACK 5^AE005 | 
|---|
| 65 | ;;HH REF VA PAID CNH^HH125 | 
|---|
| 66 | ;;HH REF END VA PAID CNH^HH126 | 
|---|
| 67 | ;;GROUP AUDIOMETRIC TEST^SP077^92559 | 
|---|
| 68 | ;;REMOVE FOREIGN BODY, LEVEL 1^SP488^69200 | 
|---|
| 69 | ;;REMOVE FOREIGN BODY, LEVEL 2^SP489^69200 | 
|---|
| 70 | ;;REMOVE FOREIGN BODY, LEVEL 3^SP490^69200 | 
|---|
| 71 | ;;DIAG ANALYSIS COCHL IMPLANT, LEV 1^SP491^92603 | 
|---|
| 72 | ;;DIAG ANALYSIS COCHL IMPLANT, LEV 2^SP492^92603 | 
|---|
| 73 | ;;DIAG ANALYSIS COCHL IMPLANT, LEV 3^SP493^92603 | 
|---|
| 74 | ;;SUBSEQUENT REPROGRAM, LEVEL 1^SP494^92604 | 
|---|
| 75 | ;;SUBSEQUENT REPROGRAM, LEVEL 2^SP495^92604 | 
|---|
| 76 | ;;SUBSEQUENT REPROGRAM, LEVEL 3^SP496^92604 | 
|---|
| 77 | ;;EVAL NSG DEVICE, LEVEL 1^SP478^92605 | 
|---|
| 78 | ;;EVAL NSG DEVICE, LEVEL 2^SP479^92605 | 
|---|
| 79 | ;;EVAL NSG DEVICE, LEVEL 3^SP480^92605 | 
|---|
| 80 | ;;THERAPEUTIC SERV NSG DEV, LEVEL 1^SP481^92606 | 
|---|
| 81 | ;;THERAPEUTIC SERV NSG DEV, LEVEL 2^SP482^92606 | 
|---|
| 82 | ;;THERAPEUTIC SERV NSG DEV, LEVEL 3^SP483^92606 | 
|---|
| 83 | ;;EVAL SG DEVICE, FIRST HOUR^SP484^92607 | 
|---|
| 84 | ;;EVAL SG DEVICE, EACH ADDL 30 MIN^SP485^92608 | 
|---|
| 85 | ;;MOTION FLUOR SWALLOW EVAL^SP486^92611 | 
|---|
| 86 | ;;FIBEROPTIC LARYNG SENSORY TEST^SP487^92614 | 
|---|
| 87 | ;;QUIT | 
|---|
| 88 | NAMECHG ;* change national procedure names | 
|---|
| 89 | ; | 
|---|
| 90 | ;  ECXX is in format: | 
|---|
| 91 | ;   NATIONAL NUMBER^NEW NAME | 
|---|
| 92 | ; | 
|---|
| 93 | N ECX,ECXX,ECDA,DA,DR,DIC,DIE,X,Y,STR | 
|---|
| 94 | D MES^XPDUTL(" ") | 
|---|
| 95 | D BMES^XPDUTL("Changing names in EC NATIONAL PROCEDURE File (#725)...") | 
|---|
| 96 | D MES^XPDUTL(" ") | 
|---|
| 97 | F ECX=1:1 S ECXX=$P($T(CHNG+ECX),";;",2) Q:ECXX="QUIT"  D | 
|---|
| 98 | .I $D(^EC(725,"D",$P(ECXX,U,1))) D | 
|---|
| 99 | ..S ECDA=+$O(^EC(725,"D",$P(ECXX,U,1),0)) | 
|---|
| 100 | ..I $D(^EC(725,ECDA,0)) D | 
|---|
| 101 | ...S DA=ECDA,DR=".01////^S X=$P(ECXX,U,2)",DIE="^EC(725," D ^DIE | 
|---|
| 102 | ...D MES^XPDUTL(" ") | 
|---|
| 103 | ...D MES^XPDUTL("   Entry #"_ECDA_" for "_$P(ECXX,U,1)) | 
|---|
| 104 | ...D BMES^XPDUTL("      ... field (#.01) updated to  "_$P(ECXX,U,2)_".") | 
|---|
| 105 | .I '$D(^EC(725,"D",$P(ECXX,U,1))) D | 
|---|
| 106 | ..D MES^XPDUTL(" ") | 
|---|
| 107 | ..S STR="Can't find entry for "_$P(ECXX,U,1) | 
|---|
| 108 | ..D BMES^XPDUTL(STR_" ...field (#.01) not updated.") | 
|---|
| 109 | Q | 
|---|
| 110 | ; | 
|---|
| 111 | CHNG ;name changes -national code #^new procedure name | 
|---|
| 112 | ;;SP114^VOICE PROSTHESIS TREAT, LEVEL 1 | 
|---|
| 113 | ;;SP130^MEDICAL OPINION | 
|---|
| 114 | ;;SP329^VOICE PROSTHESIS TREAT, LEVEL 2 | 
|---|
| 115 | ;;SP330^VOICE PROSTHESIS TREAT, LEVEL 3 | 
|---|
| 116 | ;;SP440^CLINICAL SWALLOWING EVAL, LEVEL 2 | 
|---|
| 117 | ;;SP441^CLINICAL SWALLOWING EVAL, LEVEL 3 | 
|---|
| 118 | ;;SP447^THERAPEUTIC SERV, SG DEV, LEVEL 1 | 
|---|
| 119 | ;;SP453^ENDOSCOPIC SWALLOW STUDY-FEES | 
|---|
| 120 | ;;SP454^ENDOSCOPIC SWALLOW STUDY FEEST | 
|---|
| 121 | ;;SP455^MOTION FLUORO SWALLOW STUDY | 
|---|
| 122 | ;;SP463^THERAPEUTIC SERV SG DEV, LEVEL 2 | 
|---|
| 123 | ;;SP464^THERAPEUTIC SERV SG DEV, LEVEL 3 | 
|---|
| 124 | ;;SW020^OPTPSYSOCTX/PSYTHER GRP(1-5),90MIN | 
|---|
| 125 | ;;QUIT | 
|---|