| [623] | 1 | IBCEP8 ;ALB/TMP - Functions for NON-VA PROVIDER ;11-07-00 | 
|---|
|  | 2 | ;;2.0;INTEGRATED BILLING;**51,137,232,288,320,343,374**;21-MAR-94;Build 16 | 
|---|
|  | 3 | ; | 
|---|
|  | 4 | EN ; -- main entry point | 
|---|
|  | 5 | N IBNPRV | 
|---|
|  | 6 | K IBFASTXT | 
|---|
|  | 7 | D FULL^VALM1 | 
|---|
|  | 8 | D EN^VALM("IBCE PRVNVA MAINT") | 
|---|
|  | 9 | Q | 
|---|
|  | 10 | ; | 
|---|
|  | 11 | HDR ; -- header code | 
|---|
|  | 12 | K VALMHDR | 
|---|
|  | 13 | Q | 
|---|
|  | 14 | ; | 
|---|
|  | 15 | INIT ; Initialization | 
|---|
|  | 16 | N DIC,DA,X,Y,DLAYGO,IBIF,DIR,DTOUT,DUOUT | 
|---|
|  | 17 | K ^TMP("IBCE_PRVNVA_MAINT",$J) | 
|---|
|  | 18 | S DIR("A")="(I)NDIVIDUAL OR (F)ACILITY?: ",DIR(0)="SA^I:INDIVIDUAL;F:FACILITY" D ^DIR K DIR | 
|---|
|  | 19 | I $D(DUOUT)!$D(DTOUT) S VALMQUIT=1 G INITQ | 
|---|
|  | 20 | S IBIF=Y | 
|---|
|  | 21 | ; | 
|---|
|  | 22 | I IBIF="F" D | 
|---|
|  | 23 | . S VALM("TITLE")="Non-VA Lab or Facility Info" | 
|---|
|  | 24 | . K VALM("PROTOCOL") | 
|---|
|  | 25 | . S Y=$$FIND1^DIC(101,,,"IBCE PRVNVA NONIND MAINT") | 
|---|
|  | 26 | . I Y S VALM("PROTOCOL")=+Y_";ORD(101," | 
|---|
|  | 27 | ; | 
|---|
|  | 28 | S DIC="^IBA(355.93,",DIC("DR")=".02////"_$S(IBIF'="F":2,1:1) | 
|---|
|  | 29 | S DIC("S")="I $P(^(0),U,2)="_$S(IBIF'="F":2,1:1) | 
|---|
|  | 30 | S DLAYGO=355.93,DIC(0)="AELMQ",DIC("A")="Select a NON"_$S(IBIF="I":"-",1:"/OTHER ")_"VA PROVIDER: " | 
|---|
|  | 31 | D ^DIC K DIC,DLAYGO | 
|---|
|  | 32 | I Y'>0 S VALMQUIT=1 G INITQ | 
|---|
|  | 33 | S IBNPRV=+Y | 
|---|
|  | 34 | D BLD | 
|---|
|  | 35 | INITQ Q | 
|---|
|  | 36 | ; | 
|---|
|  | 37 | BLD ; Build/Rebuild display | 
|---|
|  | 38 | N IBLCT,IBCT,IBLST,IBPRI,IBIEN,Z,Z1,Z2 | 
|---|
|  | 39 | K @VALMAR | 
|---|
|  | 40 | S (IBLCT,IBCT)=0,Z=$G(^IBA(355.93,IBNPRV,0)) | 
|---|
|  | 41 | S IBCT=IBCT+1 | 
|---|
|  | 42 | S Z1=$J("Name: ",15)_$P(Z,U) D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 43 | I $P(Z,U,2)=2 D | 
|---|
|  | 44 | . S IBCT=IBCT+1 | 
|---|
|  | 45 | . S Z1=$J("Type: ",15)_$S($P(Z,U,2)=2:"INDIVIDUAL PROVIDER",1:"OUTSIDE OR OTHER VA FACILITY") D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 46 | . S IBCT=IBCT+1 | 
|---|
|  | 47 | . S Z1=$J("Credentials: ",15)_$P(Z,U,3) D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 48 | . S IBCT=IBCT+1 | 
|---|
|  | 49 | . S Z1=$J("Specialty: ",15)_$P(Z,U,4) D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 50 | . S IBCT=IBCT+1 | 
|---|
|  | 51 | . S Z1=$J("NPI: ",15)_$$NPIGET^IBCEP81(IBNPRV) D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 52 | . S IBCT=IBCT+1 | 
|---|
|  | 53 | . S IBPRI=$$TAXGET^IBCEP81(IBNPRV,.IBLST) | 
|---|
|  | 54 | . S Z1=$J("Taxonomy Code: ",15)_$P(IBPRI,U) | 
|---|
|  | 55 | . I $D(IBLST) S Z1=Z1_" ("_$S($P(IBLST(IBLST),U,3)=1:"Primary",1:"Secondary")_")" | 
|---|
|  | 56 | . D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 57 | . S IBIEN="" | 
|---|
|  | 58 | . F  S IBIEN=$O(IBLST(IBIEN)) Q:IBIEN=""  D | 
|---|
|  | 59 | .. I IBIEN=IBLST Q | 
|---|
|  | 60 | .. S IBCT=IBCT+1 | 
|---|
|  | 61 | .. S Z1=$J("",15)_$P(IBLST(IBIEN),U)_" ("_$S($P(IBLST(IBIEN),U,3)=1:"Primary",1:"Secondary")_")" | 
|---|
|  | 62 | .. D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 63 | E  D | 
|---|
|  | 64 | . S IBCT=IBCT+1 | 
|---|
|  | 65 | . S Z1=$J("Address: ",15)_$P(Z,U,5) D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 66 | . I $P(Z,U,10) D | 
|---|
|  | 67 | .. S IBCT=IBCT+1 | 
|---|
|  | 68 | .. S Z1=$J("",15)_$P(Z,U,10) | 
|---|
|  | 69 | . S IBCT=IBCT+1 | 
|---|
|  | 70 | . S Z1=$J("",15)_$P(Z,U,6)_$S($P(Z,U,6)'="":", ",1:"")_$S($P(Z,U,7):$$EXTERNAL^DILFD(355.93,.07,"",$P(Z,U,7))_"  ",1:"")_$P(Z,U,8) | 
|---|
|  | 71 | . D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 72 | . S IBCT=IBCT+1 | 
|---|
|  | 73 | . S Z1=" " D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 74 | . S IBCT=IBCT+1 | 
|---|
|  | 75 | . S Z1=$J("Type of Facility: ",30)_$$EXTERNAL^DILFD(355.93,.11,,$P(Z,U,11)) | 
|---|
|  | 76 | . D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 77 | . S IBCT=IBCT+1 | 
|---|
|  | 78 | . S Z1=$J("Primary ID: ",30)_$P(Z,U,9) | 
|---|
|  | 79 | . D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 80 | . S IBCT=IBCT+1 | 
|---|
|  | 81 | . S Z1=$J("ID Qualifier: ",30)_$$GET1^DIQ(355.97,$P(Z,U,13),.03) I $P(Z,U,13)]"" S Z1=Z1_" - "_$$GET1^DIQ(355.97,$P(Z,U,13),.01) | 
|---|
|  | 82 | . D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 83 | . S IBCT=IBCT+1 | 
|---|
|  | 84 | . S Z1=$J("Mammography Certification #: ",30)_$P(Z,U,15) | 
|---|
|  | 85 | . D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 86 | . S IBCT=IBCT+1 | 
|---|
|  | 87 | . S Z1=$J("NPI: ",30)_$$NPIGET^IBCEP81(IBNPRV) D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 88 | . S IBCT=IBCT+1 | 
|---|
|  | 89 | . S IBPRI=$$TAXGET^IBCEP81(IBNPRV,.IBLST) | 
|---|
|  | 90 | . S Z1=$J("Taxonomy Code: ",30)_$P(IBPRI,U) | 
|---|
|  | 91 | . I $D(IBLST) S Z1=Z1_" ("_$S($P(IBLST(IBLST),U,3)=1:"Primary",1:"Secondary")_")" | 
|---|
|  | 92 | . D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 93 | . S IBIEN="" | 
|---|
|  | 94 | . F  S IBIEN=$O(IBLST(IBIEN)) Q:IBIEN=""  D | 
|---|
|  | 95 | .. I IBIEN=IBLST Q | 
|---|
|  | 96 | .. S IBCT=IBCT+1 | 
|---|
|  | 97 | .. S Z1=$J("",30)_$P(IBLST(IBIEN),U)_" ("_$S($P(IBLST(IBIEN),U,3)=1:"Primary",1:"Secondary")_")" | 
|---|
|  | 98 | .. D SET1(.IBLCT,Z1,IBCT) | 
|---|
|  | 99 | K VALMBG,VALMCNT | 
|---|
|  | 100 | S VALMBG=1,VALMCNT=IBLCT | 
|---|
|  | 101 | Q | 
|---|
|  | 102 | ; | 
|---|
|  | 103 | SET1(IBLCT,TEXT,IBCT) ; | 
|---|
|  | 104 | S IBLCT=IBLCT+1 D SET^VALM10(IBLCT,TEXT,$G(IBCT)) | 
|---|
|  | 105 | Q | 
|---|
|  | 106 | EXPND ; | 
|---|
|  | 107 | Q | 
|---|
|  | 108 | ; | 
|---|
|  | 109 | HELP ; | 
|---|
|  | 110 | Q | 
|---|
|  | 111 | ; | 
|---|
|  | 112 | EXIT ; | 
|---|
|  | 113 | K ^TMP("IBCE_PRVNVA_MAINT",$J) | 
|---|
|  | 114 | D CLEAN^VALM10 | 
|---|
|  | 115 | K IBFASTXT | 
|---|
|  | 116 | Q | 
|---|
|  | 117 | ; | 
|---|
|  | 118 | EDIT1(IBNPRV,IBNOLM) ; Edit non-VA provider/facility demographics | 
|---|
|  | 119 | ; IBNPRV = ien of entry in file 355.93 | 
|---|
|  | 120 | ; IBNOLM = 1 if not called from list manager | 
|---|
|  | 121 | ; | 
|---|
|  | 122 | N DA,X,Y,DIE,DR,IBP | 
|---|
|  | 123 | I '$G(IBNOLM) D FULL^VALM1 | 
|---|
|  | 124 | I IBNPRV D | 
|---|
|  | 125 | . I '$G(IBNOLM) D CLEAR^VALM1 | 
|---|
|  | 126 | . S DIE="^IBA(355.93,",DA=IBNPRV,IBP=($P($G(^IBA(355.93,IBNPRV,0)),U,2)=2) | 
|---|
|  | 127 | . ; PRXM/KJH - Added NPI and Taxonomy to the list of fields to be edited. Put a "NO^" around the Taxonomy multiple (#42) since some of the sub-field entries are 'required'. | 
|---|
|  | 128 | . S DR=".01;"_$S(IBP:".03;.04",1:".05;.1;.06;.07;.08;.13///24;W !,""ID Qualifier: 24 - EMPLOYER'S IDENTIFICATION #"";.09Lab or Facility Primary ID;.11;.15")_";D EN^IBCEP82;S DIE(""NO^"")="""";42;K DIE(""NO^"")" | 
|---|
|  | 129 | . D ^DIE | 
|---|
|  | 130 | . Q:$G(IBNOLM) | 
|---|
|  | 131 | . D BLD | 
|---|
|  | 132 | I '$G(IBNOLM) K VALMBCK S VALMBCK="R" | 
|---|
|  | 133 | Q | 
|---|
|  | 134 | ; | 
|---|
|  | 135 | EDITID(IBNPRV) ; Link from this list template to maintain provider-specific ids | 
|---|
|  | 136 | ; IBNPRV = ien of entry in file 355.93 | 
|---|
|  | 137 | N IBPRV | 
|---|
|  | 138 | D FULL^VALM1 | 
|---|
|  | 139 | D CLEAR^VALM1 | 
|---|
|  | 140 | S IBPRV=IBNPRV | 
|---|
|  | 141 | D EN1^IBCEP5 | 
|---|
|  | 142 | K VALMQUIT | 
|---|
|  | 143 | S VALMBCK="R" | 
|---|
|  | 144 | Q | 
|---|
|  | 145 | ; | 
|---|
|  | 146 | NVAFAC ; Enter/edit Non-VA facility information | 
|---|
|  | 147 | N X,Y,DA,DIC,IBNPRV,DLAYGO | 
|---|
|  | 148 | S DIC="^IBA(355.93,",DIC("S")="I $P(^(0),U,2)=1",DIC("DR")=".02////1" | 
|---|
|  | 149 | S DLAYGO=355.93,DIC(0)="AELMQ",DIC("A")="Select a NON/Other VA FACILITY: " | 
|---|
|  | 150 | D ^DIC K DIC,DLAYGO | 
|---|
|  | 151 | I Y'>0 S VALMQUIT=1 G NVAFACQ | 
|---|
|  | 152 | S IBNPRV=+Y | 
|---|
|  | 153 | D EDIT1(IBNPRV,1) | 
|---|
|  | 154 | ; | 
|---|
|  | 155 | NVAFACQ Q | 
|---|
|  | 156 | ; | 
|---|
|  | 157 | GETFAC(IB,IBFILE,IBELE,IBSFD) ; Returns facility name,address lines or city-state-zip | 
|---|
|  | 158 | ; IB = ien of entry in file | 
|---|
|  | 159 | ; IBFILE = 0 for retrieval from file 4, 1 for retrieval from file 355.93 | 
|---|
|  | 160 | ; If IBELE=0, returns name | 
|---|
|  | 161 | ;         =1, returns address line 1 | 
|---|
|  | 162 | ;         =2, returns address line 2 | 
|---|
|  | 163 | ;         =3, returns city, state zip | 
|---|
|  | 164 | ;         = "3C", returns city  = "3S", state    = "3Z", zip | 
|---|
|  | 165 | ; IBSFD (optional) = Output formatter segment name if the output needs | 
|---|
|  | 166 | ;       to be screened thru the VAMCFD^IBCEF75 procedure for the flag | 
|---|
|  | 167 | ;       in the insurance company file | 
|---|
|  | 168 | ; | 
|---|
|  | 169 | N Z,IBX,IBZ | 
|---|
|  | 170 | S IBX="" | 
|---|
|  | 171 | ; | 
|---|
|  | 172 | I $G(IBSFD)="SUB" D VAMCFD^IBCEF75(+$G(IBXIEN),.IBZ) I $D(IBZ),'$G(IBZ("C",1)) G GETFACX | 
|---|
|  | 173 | ; | 
|---|
|  | 174 | S Z=$S('IBFILE:$G(^DIC(4,+IB,1)),1:$G(^IBA(355.93,+IB,0))) | 
|---|
|  | 175 | I +IBELE=0 S IBX=$S('IBFILE:$P($G(^DIC(4,+IB,0)),U),1:$P($G(^IBA(355.93,+IB,0)),U)) | 
|---|
|  | 176 | I IBELE=1!(IBELE=12) S IBX=$S('IBFILE:$P(Z,U),1:$P(Z,U,5)) | 
|---|
|  | 177 | I IBELE=2!(IBELE=12) S IBX=$S(IBELE=12:IBX_" ",1:"")_$S('IBFILE:$P(Z,U,2),1:$P(Z,U,10)) | 
|---|
|  | 178 | ; | 
|---|
|  | 179 | I +IBELE=3,'IBFILE D | 
|---|
|  | 180 | . S:IBELE=3!(IBELE["C") IBX=$P(Z,U,3) Q:IBELE["C" | 
|---|
|  | 181 | . S:IBELE=3 IBX=IBX_$S(IBX'="":", ",1:"") S:IBELE=3!(IBELE["S") IBX=IBX_$$STATE^IBCEFG1($P($G(^DIC(4,+IB,0)),U,2)) Q:IBELE["S" | 
|---|
|  | 182 | . S:IBELE=3 IBX=IBX_" " S:IBELE=3!(IBELE["Z") IBX=IBX_$P(Z,U,4) | 
|---|
|  | 183 | . Q | 
|---|
|  | 184 | ; | 
|---|
|  | 185 | I +IBELE=3,IBFILE D | 
|---|
|  | 186 | . S:IBELE=3!(IBELE["C") IBX=$P(Z,U,6) Q:IBELE["C" | 
|---|
|  | 187 | . S:IBELE=3 IBX=IBX_$S(IBX'="":", ",1:"") S:IBELE=3!(IBELE["S") IBX=IBX_$$STATE^IBCEFG1($P(Z,U,7)) | 
|---|
|  | 188 | . S:IBELE=3 IBX=IBX_" " S:IBELE=3!(IBELE["Z") IBX=IBX_$P(Z,U,8) | 
|---|
|  | 189 | . Q | 
|---|
|  | 190 | GETFACX ; | 
|---|
|  | 191 | Q IBX | 
|---|
|  | 192 | ; | 
|---|
|  | 193 | ALLID(IBPRV,IBPTYP,IBZ) ; Returns array IBZ for all ids for provider IBPRV | 
|---|
|  | 194 | ; for all provider id types or for id type in IBPTYP | 
|---|
|  | 195 | ; IBPRV = vp ien of provider | 
|---|
|  | 196 | ; IBPTYP = ien of provider id type to return or "" for all | 
|---|
|  | 197 | ; IBZ = array returned with internal data: | 
|---|
|  | 198 | ;  IBZ(file 355.9 ien)=ID type^ID#^ins co^form type^bill care type^care un^X12 code for id type | 
|---|
|  | 199 | N Z,Z0 | 
|---|
|  | 200 | K IBZ | 
|---|
|  | 201 | G:'$G(IBPRV) ALLIDQ | 
|---|
|  | 202 | S IBPTYP=$G(IBPTYP) | 
|---|
|  | 203 | S Z=0 F  S Z=$O(^IBA(355.9,"B",IBPRV,Z)) Q:'Z  S Z0=$G(^IBA(355.9,Z,0)) D | 
|---|
|  | 204 | . I $S(IBPTYP="":1,1:($P(Z0,U,6)=IBPTYP)) S IBZ(Z)=($P(Z0,U,6)_U_$P(Z0,U,7)_U_$P(Z0,U,2)_U_$P(Z0,U,4)_U_$P(Z0,U,5)_U_$P(Z0,U,3))_U_$P($G(^IBE(355.97,+$P(Z0,U,6),0)),U,3) | 
|---|
|  | 205 | ; | 
|---|
|  | 206 | ALLIDQ Q | 
|---|
|  | 207 | ; | 
|---|
|  | 208 | CLIA() ; Returns ien of CLIA # provider id type | 
|---|
|  | 209 | N Z,IBZ | 
|---|
|  | 210 | S (IBZ,Z)=0 F  S Z=$O(^IBE(355.97,Z)) Q:'Z  I $P($G(^(Z,0)),U,3)="X4",$P(^(0),U)["CLIA" S IBZ=Z Q | 
|---|
|  | 211 | Q IBZ | 
|---|
|  | 212 | ; | 
|---|
|  | 213 | STLIC() ; Returns ien of STLIC# provider id type | 
|---|
|  | 214 | N Z,IBZ | 
|---|
|  | 215 | S (IBZ,Z)=0 F  S Z=$O(^IBE(355.97,Z)) Q:'Z  I $P($G(^(Z,1)),U,3) S IBZ=Z Q | 
|---|
|  | 216 | Q IBZ | 
|---|
|  | 217 | ; | 
|---|
|  | 218 | TAXID() ; Returns ien of Fed tax id provider id type | 
|---|
|  | 219 | N Z,IBZ | 
|---|
|  | 220 | S (IBZ,Z)=0 F  S Z=$O(^IBE(355.97,Z)) Q:'Z  I $P($G(^(Z,1)),U,4) S IBZ=Z Q | 
|---|
|  | 221 | Q IBZ | 
|---|
|  | 222 | ; | 
|---|
|  | 223 | CLIANVA(IBIFN) ; Returns CLIA # for a non-VA facility on bill ien IBIFN | 
|---|
|  | 224 | N IBCLIA,IBZ,IBNVA,Z | 
|---|
|  | 225 | S IBCLIA="",IBZ=$$CLIA() | 
|---|
|  | 226 | I IBZ D | 
|---|
|  | 227 | . S IBNVA=$P($G(^DGCR(399,IBIFN,"U2")),U,10) Q:'IBNVA | 
|---|
|  | 228 | . S IBCLIA=$$IDFIND^IBCEP2(IBIFN,IBZ,IBNVA_";IBA(355.93,","",1) | 
|---|
|  | 229 | Q IBCLIA | 
|---|
|  | 230 | ; | 
|---|
|  | 231 | VALFAC(X) ; Function returns 1 if format is valid for X12 facility name | 
|---|
|  | 232 | ; Alpha/numeric/certain punctuation valid.  Must start with an Alpha | 
|---|
|  | 233 | N OK,VAL | 
|---|
|  | 234 | S OK=1 | 
|---|
|  | 235 | S VAL("A")="",VAL("N")="",VAL=",.- " | 
|---|
|  | 236 | I $E(X)'?1A!'$$VALFMT(X,.VAL) S OK=0 | 
|---|
|  | 237 | Q OK | 
|---|
|  | 238 | ; | 
|---|
|  | 239 | VALFMT(X,VAL) ; Returns 1 if format of X is valid, 0 if not | 
|---|
|  | 240 | ; X = data to be examined | 
|---|
|  | 241 | ; VAL = a 'string' of valid characters AND/OR (passed by reference) | 
|---|
|  | 242 | ;    if VAL("A") defined ==> Alpha | 
|---|
|  | 243 | ;    if VAL("A") defined ==> Numeric valid | 
|---|
|  | 244 | ;    if VAL("A") defined ==> Punctuation valid | 
|---|
|  | 245 | ;   any other character included in the string is checked individually | 
|---|
|  | 246 | N Z | 
|---|
|  | 247 | I $D(VAL("A")) D | 
|---|
|  | 248 | . N Z0 | 
|---|
|  | 249 | . F Z=1:1:$L(X) I $E(X,Z)?1A S Z0(Z)="" | 
|---|
|  | 250 | . S Z0="" F  S Z0=$O(Z0(Z0),-1) Q:'Z0  S $E(X,Z0)="" | 
|---|
|  | 251 | I $D(VAL("N")) D | 
|---|
|  | 252 | . N Z0 | 
|---|
|  | 253 | . F Z=1:1:$L(X) I $E(X,Z)?1N S Z0(Z)="" | 
|---|
|  | 254 | . S Z0="" F  S Z0=$O(Z0(Z0),-1) Q:'Z0  S $E(X,Z0)="" | 
|---|
|  | 255 | I $D(VAL("P")) D | 
|---|
|  | 256 | . N Z0 | 
|---|
|  | 257 | . F Z=1:1:$L(X) I $E(X,Z)?1P S Z0(Z)="" | 
|---|
|  | 258 | . S Z0="" F  S Z0=$O(Z0(Z0),-1) Q:'Z0  S $E(X,Z0)="" | 
|---|
|  | 259 | I $G(VAL)'="" S X=$TR(X,VAL,"") | 
|---|
|  | 260 | Q (X="") | 
|---|
|  | 261 | ; | 
|---|
|  | 262 | PS(IBXSAVE) ; Returns 1 if IBXSAVE("PSVC") indicates the svc was non-lab | 
|---|
|  | 263 | ; | 
|---|
|  | 264 | Q $S($G(IBXSAVE("PSVC"))="":0,1:"13"[IBXSAVE("PSVC")) | 
|---|
|  | 265 | ; | 
|---|
|  | 266 | ; Pass in the Internal Entry number to File 355.93 | 
|---|
|  | 267 | ; Return the Primary ID and Qualifier (ID Type) from 355.9 | 
|---|
|  | 268 | PRIMID(IEN35593) ; Return External Primary ID and ID Quailier | 
|---|
|  | 269 | N INDXVAL,LIST,MSG,IDCODE | 
|---|
|  | 270 | S INDXVAL=IEN35593_";IBA(355.93," | 
|---|
|  | 271 | N SCREEN S SCREEN="I $P(^(0),U,8)" | 
|---|
|  | 272 | D FIND^DIC(355.9,,"@;.06EI;.07","Q",INDXVAL,,,SCREEN,,"LIST","MSG") | 
|---|
|  | 273 | I '+$G(LIST("DILIST",0)) Q ""   ; No Primary ID | 
|---|
|  | 274 | I +$G(LIST("DILIST",0))>1 Q "***ERROR***^***ERROR***"  ; Bad.  More than one. | 
|---|
|  | 275 | ; Found just one | 
|---|
|  | 276 | S IDCODE=$$GET1^DIQ(355.97,LIST("DILIST","ID",1,.06,"I"),.03) | 
|---|
|  | 277 | Q $G(LIST("DILIST","ID",1,.07))_U_IDCODE_" - "_$G(LIST("DILIST","ID",1,.06,"E")) | 
|---|