| 1 | EC725U32 ;ALB/GTS/JAP/GT - EC National Procedure Update; 4/02/2005
 | 
|---|
| 2 |  ;;2.0; EVENT CAPTURE ;**74**;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 |  ;;A4265 ALCOHOL WIPES^SP503^A4265
 | 
|---|
| 61 |  ;;A4363 SKIN PROTECTIVE BARRIER^SP504^A4363
 | 
|---|
| 62 |  ;;A465 ADHESIVE REMOVER WIPES^SP505^A4365
 | 
|---|
| 63 |  ;;A5119 SKIN PROTECTIVE WIPES^SP506^A5119
 | 
|---|
| 64 |  ;;A7501 TRACH VALVE W DIAPHRAGM^SP507^A7501
 | 
|---|
| 65 |  ;;A7502 DIAPHRAGM VALVE REPL^SP508^A7502
 | 
|---|
| 66 |  ;;A7503 HMES FILTER HOLDER OR CAP^SP509^A7503
 | 
|---|
| 67 |  ;;A7504 HMES FILTER^SP510^A7504
 | 
|---|
| 68 |  ;;A7505 HMES VALVE HOUSING^SP511^A7505
 | 
|---|
| 69 |  ;;A7506 HMES ADHESIVE DISC^SP512^A7506
 | 
|---|
| 70 |  ;;A7507 HMES HOLDER WITH FILTER^SP513^A7507
 | 
|---|
| 71 |  ;;A7508 HMES HOUSING WITH ADHESIVE^SP514^A7508
 | 
|---|
| 72 |  ;;A7509 HMES SYSTEM^SP515^A7509
 | 
|---|
| 73 |  ;;A7520 LARYNGECTOMY TUBE NON-CUFF^SP516^A7520
 | 
|---|
| 74 |  ;;A7521 LARYNGECTOMY TUBE CUFFED^SP517^A7521
 | 
|---|
| 75 |  ;;A7523 TRACH SHOWER PROTECT^SP518^A7523
 | 
|---|
| 76 |  ;;A7524 TRACH STENT/STUD/BUTTON^SP519^A7524
 | 
|---|
| 77 |  ;;A7527 TRACH TUBE PLUG/STOP^SP520^A7527
 | 
|---|
| 78 |  ;;A9280 ALTERING DEVICE NOC^SP521^A9280
 | 
|---|
| 79 |  ;;L8499 UNLISTED MISC PROSTH SERVICE^SP522^L8499
 | 
|---|
| 80 |  ;;L8511 TRACH INSERT, INDWELL REPL^SP523^L8511
 | 
|---|
| 81 |  ;;L8512 GEL CAP TRACH VOICE PROSTH^SP524^L8512
 | 
|---|
| 82 |  ;;L8513 TRACH PROSTH CLEANING DEV^SP525^L8513
 | 
|---|
| 83 |  ;;L8514 REPL TEPDIALATOR^SP526^L8514
 | 
|---|
| 84 |  ;;L8515 GEL CAP APPLICATION^SP527^L8515
 | 
|---|
| 85 |  ;;L8615 COCHLEAR IMPLANT HEADSET^SP528^L8615
 | 
|---|
| 86 |  ;;L8616 COCHLEAR MICROPHONE REPL^SP529^L8616
 | 
|---|
| 87 |  ;;L8617 COCHLEAR IMPLANT COIL REPL^SP530^L8617
 | 
|---|
| 88 |  ;;L8620 CI BATTERY, LITHIUM^SP531^L8620
 | 
|---|
| 89 |  ;;L8621 CI BATTERY ZINC AIR^SP532^L8621
 | 
|---|
| 90 |  ;;L8622 CI BATTERY ALKALINE^SP533^L8622
 | 
|---|
| 91 |  ;;S0250 COMP GERIATRIC ASSESSMENT^SP534^S0250
 | 
|---|
| 92 |  ;;S0257 COUNSELING ADV DIRECTIVES^SP535^S0257
 | 
|---|
| 93 |  ;;S0315 DISEASE MGMT PROG INITIAL^SP536^S0315
 | 
|---|
| 94 |  ;;S0316 DISEASE MGMT FOLLOWUP^SP537^S0316
 | 
|---|
| 95 |  ;;S0317 DISEASE MGMT PER DIEM^SP538^S0317
 | 
|---|
| 96 |  ;;S0618 AUDIOMETRY FOR HEARING AID^SP539^S0618
 | 
|---|
| 97 |  ;;S9092 CANALITH REPOSITIONING^SP540^S9092
 | 
|---|
| 98 |  ;;QUIT
 | 
|---|
| 99 | NAMECHG ;* change national procedure names
 | 
|---|
| 100 |  ;
 | 
|---|
| 101 |  ;  ECXX is in format:
 | 
|---|
| 102 |  ;   NATIONAL NUMBER^NEW NAME
 | 
|---|
| 103 |  ;
 | 
|---|
| 104 |  N ECX,ECXX,ECDA,DA,DR,DIC,DIE,X,Y,STR
 | 
|---|
| 105 |  D MES^XPDUTL(" ")
 | 
|---|
| 106 |  D BMES^XPDUTL("Changing names in EC NATIONAL PROCEDURE File (#725)...")
 | 
|---|
| 107 |  D MES^XPDUTL(" ")
 | 
|---|
| 108 |  F ECX=1:1 S ECXX=$P($T(CHNG+ECX),";;",2) Q:ECXX="QUIT"  D
 | 
|---|
| 109 |  .I $D(^EC(725,"D",$P(ECXX,U,1))) D
 | 
|---|
| 110 |  ..S ECDA=+$O(^EC(725,"D",$P(ECXX,U,1),0))
 | 
|---|
| 111 |  ..I $D(^EC(725,ECDA,0)) D
 | 
|---|
| 112 |  ...S DA=ECDA,DR=".01////^S X=$P(ECXX,U,2)",DIE="^EC(725," D ^DIE
 | 
|---|
| 113 |  ...D MES^XPDUTL(" ")
 | 
|---|
| 114 |  ...D MES^XPDUTL("   Entry #"_ECDA_" for "_$P(ECXX,U,1))
 | 
|---|
| 115 |  ...D BMES^XPDUTL("      ... field (#.01) updated to  "_$P(ECXX,U,2)_".")
 | 
|---|
| 116 |  .I '$D(^EC(725,"D",$P(ECXX,U,1))) D
 | 
|---|
| 117 |  ..D MES^XPDUTL(" ")
 | 
|---|
| 118 |  ..S STR="Can't find entry for "_$P(ECXX,U,1)
 | 
|---|
| 119 |  ..D BMES^XPDUTL(STR_" ...field (#.01) not updated.")
 | 
|---|
| 120 |  Q
 | 
|---|
| 121 |  ;
 | 
|---|
| 122 | CHNG ;name changes -national code #^new procedure name
 | 
|---|
| 123 |  ;;NU014^MDS CARE PLAN DOC,10M
 | 
|---|
| 124 |  ;;NU033^IP NUT.ED.GP,1-3PTS,30M
 | 
|---|
| 125 |  ;;NU034^IP NUT.ED.GP,4-6PTS,30M
 | 
|---|
| 126 |  ;;NU035^IP NUT.ED.GP,7-9PTS,30M
 | 
|---|
| 127 |  ;;NU036^IP NUT.ED.GP,10-13PTS,30M
 | 
|---|
| 128 |  ;;NU037^IP NUT.ED.GP,14-17PTS,30M
 | 
|---|
| 129 |  ;;NU038^IP NUT.ED.GP,18-20PTS,30M
 | 
|---|
| 130 |  ;;NU039^IP NUT.ED.GP,21-25PTS,30M
 | 
|---|
| 131 |  ;;NU040^IP NUT.ED.GP,>25PTS,30M
 | 
|---|
| 132 |  ;;NU042^INTERDISC IND VISIT 15M
 | 
|---|
| 133 |  ;;NU043^DISCUSS W/OTHR HC PROV 5M
 | 
|---|
| 134 |  ;;NU077^OPT NUT.ED.GP,1-3PTS
 | 
|---|
| 135 |  ;;NU078^OPT NUT.ED.GP,4-6PTS
 | 
|---|
| 136 |  ;;NU079^OPT NUT.ED.GP,7-9PTS
 | 
|---|
| 137 |  ;;NU080^OPT NUT.ED.GP,10-13PTS
 | 
|---|
| 138 |  ;;NU081^OPT NUT.ED.GP,14-17PTS
 | 
|---|
| 139 |  ;;NU082^OPT NUT.ED.GP,18-20PTS
 | 
|---|
| 140 |  ;;NU083^OPT NUT.ED.GP,21-25PTS
 | 
|---|
| 141 |  ;;NU084^OPT NUT.ED.GP,>25PTS
 | 
|---|
| 142 |  ;;SP432^TRACHEOSTOMY MASK
 | 
|---|
| 143 |  ;;SP433^TRACH TUBE COLLAR/HOLDER
 | 
|---|
| 144 |  ;;SP069^VERTICAL CHANNEL RECORDING
 | 
|---|
| 145 |  ;;SP430^L8618 CI TRANSMIT CABLE RPL
 | 
|---|
| 146 |  ;;SP434^A4623 TRACH INNER CANNULA
 | 
|---|
| 147 |  ;;QUIT
 | 
|---|