| 1 | LRBEBA2 ;DALOI/JAH/FHS - ORDERING AND RESULTING OUTPATIENT ;8/10/04
 | 
|---|
| 2 |  ;;5.2;LAB SERVICE;**291,359**;Sep 27, 1994
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 | DG1(LRBESTG) ; Set the DG1 segment into the ^TMP
 | 
|---|
| 5 |  N LRBEDGX,LRBETNUM
 | 
|---|
| 6 |  S LRBETNUM=$O(^TMP("OR",$J,"LROT",STARTDT,TYPE,SAMP,SPEC,LRSX,"LRBEDGX",""),-1)
 | 
|---|
| 7 |  S LRBETNUM=$G(LRBETNUM)+1
 | 
|---|
| 8 |  S LRBEDGX=$P($P(LRBESTG,"|",4),"^",1)
 | 
|---|
| 9 |  S ^TMP("OR",$J,"LROT",STARTDT,TYPE,SAMP,SPEC,LRSX,"LRBEDGX",LRBETNUM)=LRBEDGX
 | 
|---|
| 10 |  Q
 | 
|---|
| 11 | ZCL(LRBESTG) ; Set the ZCL segment into the ^TMP
 | 
|---|
| 12 |  N LRBEX,LRBETNUM,LRBEIND
 | 
|---|
| 13 |  S LRBETNUM=$O(^TMP("OR",$J,"LROT",STARTDT,TYPE,SAMP,SPEC,LRSX,"LRBEDGX",""),-1)
 | 
|---|
| 14 |  S LRBEX=$P(LRBESTG,"|",3),LRBEIND=$P(LRBESTG,"|",4)
 | 
|---|
| 15 |  S $P(^TMP("OR",$J,"LROT",STARTDT,TYPE,SAMP,SPEC,LRSX,"LRBEDGX",LRBETNUM),U,LRBEX+1)=LRBEIND
 | 
|---|
| 16 |  Q
 | 
|---|
| 17 |  ;
 | 
|---|
| 18 | SDGX69(J,LRBEIEN) ; Set the diagnosis into #69
 | 
|---|
| 19 |  N LRBEDGX,LRBEFIL,LRFDA,LRFDAIEN,LRBESEQ,LRBEPTDT,LRBEIEN2
 | 
|---|
| 20 |  S LRBESEQ="",LRBEFIL=69.05
 | 
|---|
| 21 |  F  S LRBESEQ=$O(^TMP("OR",$J,"LROT",LRSDT,LRXZ,LRSAMP,LRSPEC,J,"LRBEDGX",LRBESEQ)) Q:LRBESEQ=""  D
 | 
|---|
| 22 |  .S LRBEPTDT=$G(^TMP("OR",$J,"LROT",LRSDT,LRXZ,LRSAMP,LRSPEC,J,"LRBEDGX",LRBESEQ))
 | 
|---|
| 23 |  .S LRBEIEN2=LRBESEQ_","_LRBEIEN
 | 
|---|
| 24 |  .I '$D(^LRO(69,LRODT,1,LRSN,2,$P(LRBEIEN,",",1),2,"B",$P(LRBEPTDT,U,1))) S LRBEIEN2="+"_LRBEIEN2
 | 
|---|
| 25 |  .S LRFDA(99,LRBEFIL,LRBEIEN2,.01)=$P(LRBEPTDT,U,1),LRFDAIEN(LRBESEQ)=LRBESEQ
 | 
|---|
| 26 |  .S LRFDA(99,LRBEFIL,LRBEIEN2,1)=$P(LRBEPTDT,U,4)   ;SC
 | 
|---|
| 27 |  .S LRFDA(99,LRBEFIL,LRBEIEN2,2)=$P(LRBEPTDT,U,8)   ;CV
 | 
|---|
| 28 |  .S LRFDA(99,LRBEFIL,LRBEIEN2,3)=$P(LRBEPTDT,U,2)   ;AO
 | 
|---|
| 29 |  .S LRFDA(99,LRBEFIL,LRBEIEN2,4)=$P(LRBEPTDT,U,3)   ;IR
 | 
|---|
| 30 |  .S LRFDA(99,LRBEFIL,LRBEIEN2,5)=$P(LRBEPTDT,U,5)   ;EC
 | 
|---|
| 31 |  .S LRFDA(99,LRBEFIL,LRBEIEN2,6)=$P(LRBEPTDT,U,6)   ;MST
 | 
|---|
| 32 |  .S LRFDA(99,LRBEFIL,LRBEIEN2,7)=$P(LRBEPTDT,U,7)   ;HNC
 | 
|---|
| 33 |  .S:LRBESEQ=1 LRFDA(99,LRBEFIL,LRBEIEN2,8)=1         ;Is Primary?
 | 
|---|
| 34 |  D UPDATE^DIE("","LRFDA(99)","LRFDAIEN","LRERR")
 | 
|---|
| 35 |  Q
 | 
|---|
| 36 |  ;
 | 
|---|
| 37 | GDG1(LRODT,SN,IFN) ; diagnosis and indicators back to CPRS
 | 
|---|
| 38 |  N LRBECNT,LRBEDGX,LRBESEQ,LRBEPTDT
 | 
|---|
| 39 |  S LRBECNT=2
 | 
|---|
| 40 |  S LRBESEQ=0 F  S LRBESEQ=$O(^LRO(69,LRODT,1,SN,2,IFN,2,LRBESEQ)) Q:LRBESEQ<1  D
 | 
|---|
| 41 |  .S LRBEPTDT=$G(^LRO(69,LRODT,1,SN,2,IFN,2,LRBESEQ,0))
 | 
|---|
| 42 |  .Q:'$G(LRBEPTDT)
 | 
|---|
| 43 |  .S:$P(LRBEPTDT,"^",9)=1 ^TMP("LRX",$J,69,IFN,"LRBEDGX",1)=LRBEPTDT
 | 
|---|
| 44 |  .S:$P(LRBEPTDT,"^",9)'=1 ^TMP("LRX",$J,69,IFN,"LRBEDGX",LRBECNT)=LRBEPTDT,LRBECNT=LRBECNT+1
 | 
|---|
| 45 |  Q
 | 
|---|
| 46 |  ;
 | 
|---|
| 47 | SDG1(IFN,CTR,LRBEMSG) ; Setup the DG1 segment For CPRS
 | 
|---|
| 48 |  N LRBEX,LRBEDGX,LRBEIEN,LRBESEQ,LRBEPTDT,LRBEXMSG
 | 
|---|
| 49 |  S LRBESEQ="" F  S LRBESEQ=$O(^TMP("LRX",$J,69,IFN,"LRBEDGX",LRBESEQ)) Q:LRBESEQ=""  D
 | 
|---|
| 50 |  .S LRBEPTDT=$G(^TMP("LRX",$J,69,IFN,"LRBEDGX",LRBESEQ))
 | 
|---|
| 51 |  .S LRBEDGX=$$GET1^DIQ(80,$P(LRBEPTDT,U,1)_",",.01,"I")
 | 
|---|
| 52 |  .S LRBEXMSG=$$GET1^DIQ(80,$P(LRBEPTDT,U,1)_",",3,"I")
 | 
|---|
| 53 |  .S LRBEX=$P(LRBEPTDT,U,1)_"^"_LRBEXMSG_"^80^"_LRBEDGX_"^"_LRBEXMSG_"^ICD9"
 | 
|---|
| 54 |  .S CTR=CTR+1,@LRBEMSG@(CTR)="DG1|"_LRBESEQ_"||"_LRBEX_"|||||||||||||"
 | 
|---|
| 55 |  .S CTR=CTR+1,@LRBEMSG@(CTR)="ZCL|"_LRBESEQ_"|1|"_$P(LRBEPTDT,U,4)
 | 
|---|
| 56 |  .S CTR=CTR+1,@LRBEMSG@(CTR)="ZCL|"_LRBESEQ_"|2|"_$P(LRBEPTDT,U,5)
 | 
|---|
| 57 |  .S CTR=CTR+1,@LRBEMSG@(CTR)="ZCL|"_LRBESEQ_"|3|"_$P(LRBEPTDT,U,2)
 | 
|---|
| 58 |  .S CTR=CTR+1,@LRBEMSG@(CTR)="ZCL|"_LRBESEQ_"|4|"_$P(LRBEPTDT,U,6)
 | 
|---|
| 59 |  .S CTR=CTR+1,@LRBEMSG@(CTR)="ZCL|"_LRBESEQ_"|5|"_$P(LRBEPTDT,U,7)
 | 
|---|
| 60 |  .S CTR=CTR+1,@LRBEMSG@(CTR)="ZCL|"_LRBESEQ_"|6|"_$P(LRBEPTDT,U,8)
 | 
|---|
| 61 |  .S CTR=CTR+1,@LRBEMSG@(CTR)="ZCL|"_LRBESEQ_"|7|"_$P(LRBEPTDT,U,3)
 | 
|---|
| 62 |  Q
 | 
|---|
| 63 |  ;
 | 
|---|
| 64 | GMOD(LRBEAA,LRBECPT) ; Get mod
 | 
|---|
| 65 |  ;input LRBECPT - ien to #81, not required
 | 
|---|
| 66 |  N LRBEMOD
 | 
|---|
| 67 |  S LRBECPT=$G(LRBECPT)
 | 
|---|
| 68 |  S LRBEMOD=$$GMOD^LRBEBA21(LRBEAA,LRBECPT)
 | 
|---|
| 69 |  Q LRBEMOD
 | 
|---|
| 70 |  ;
 | 
|---|
| 71 | GOPRO(LRODT,LRSN) ; Get the Ordering Provider
 | 
|---|
| 72 |  N X,Y,DIC,LRBEPRO
 | 
|---|
| 73 |  S LRBEPRO=$$GET1^DIQ(69.01,LRSN_","_LRODT_",",7,"I")
 | 
|---|
| 74 |  I $$GET^XUA4A72(LRBEPRO,DT)<0 S LRBEPRO=0 D
 | 
|---|
| 75 |  .S X=$$GET1^DIQ(69.9,1,617,"I")
 | 
|---|
| 76 |  .I $$GET^XUA4A72(X,DT)>0 S LRBEPRO=X
 | 
|---|
| 77 |  Q LRBEPRO
 | 
|---|
| 78 |  ;
 | 
|---|
| 79 | SACC(LRODT,LRSN,LRTN,LRSAMP,LRSPEC,LRTSTS,LRBEX) ; Set Accession 
 | 
|---|
| 80 |  N LRBEZ
 | 
|---|
| 81 |  D CARR(.LRBEX,.LRBEZ,LRSAMP,LRSPEC,LRTSTS)
 | 
|---|
| 82 |  D SDG1^LRBEBA(LRODT,LRSN,LRTN,LRSAMP,LRSPEC,LRTSTS,.LRBEZ)
 | 
|---|
| 83 |  Q
 | 
|---|
| 84 |  ;
 | 
|---|
| 85 | CARR(LRBEAR,LRBEARR,LRBESAMP,LRBESPEC,LRTSTS) ; Change the array to only
 | 
|---|
| 86 |  ; the specimen that needs to go
 | 
|---|
| 87 |  N LRBEDFN,LRBETS,LRBESMP,LRBESPC
 | 
|---|
| 88 |  M LRBEARR=LRBEAR
 | 
|---|
| 89 |  I '$D(DFN) S LRBEDFN=$$GET1^DIQ(63,LRDFN,.03,"I")
 | 
|---|
| 90 |  S:$D(DFN) LRBEDFN=DFN
 | 
|---|
| 91 |  S LRBESMP=""
 | 
|---|
| 92 |  F  S LRBESMP=$O(LRBEARR(LRBEDFN,"LRBEDGX",LRBESMP)) Q:LRBESMP=""  D
 | 
|---|
| 93 |  .I LRBESAMP'=LRBESMP D  Q
 | 
|---|
| 94 |  ..K LRBEARR(LRBEDFN,"LRBEDGX",LRBESMP)
 | 
|---|
| 95 |   .S LRBESPC=""
 | 
|---|
| 96 |  .F  S LRBESPC=$O(LRBEARR(LRBEDFN,"LRBEDGX",LRBESMP,LRBESPC)) Q:LRBESPC=""  D
 | 
|---|
| 97 |  ..I LRBESPEC'=LRBESPC D  Q
 | 
|---|
| 98 |  ...K LRBEARR(LRBEDFN,"LRBEDGX",LRBESMP,LRBESPC)
 | 
|---|
| 99 |  ..S LRBETS=""
 | 
|---|
| 100 |  ..F  S LRBETS=$O(LRBEARR(LRBEDFN,"LRBEDGX",LRBESMP,LRBESPC,LRBETS)) Q:LRBETS=""  D
 | 
|---|
| 101 |  ...I LRBETS'=LRTSTS K LRBEARR(LRBEDFN,"LRBEDGX",LRBESMP,LRBESPC,LRBETS)
 | 
|---|
| 102 |  Q
 | 
|---|
| 103 |  ;
 | 
|---|
| 104 | BLDAR(LRBEDFN,LRODT,LRSN,LRTN,LRBESMP,LRBESPC,LRBETST,LRBEAR) ; Build array
 | 
|---|
| 105 |  ;                                     with diagnosis and indicator info
 | 
|---|
| 106 |  K LRBEMSG,LRBESEQ,LRBEPTDT,LRBEODT,LRBEDMSG,LRDBEDGX,LRD
 | 
|---|
| 107 |  S LRBEODT=$P(LRODT,"."),LRBEPTDT=""
 | 
|---|
| 108 |  S LRTN=$O(^LRO(69,LRODT,1,LRSN,2,"B",LRBETST,0))
 | 
|---|
| 109 |  Q:'$G(LRTN)
 | 
|---|
| 110 |  S LRBESEQ=0 F  S LRBESEQ=$O(^LRO(69,LRODT,1,LRSN,2,LRTN,2,LRBESEQ)) Q:LRBESEQ<1  D
 | 
|---|
| 111 |  . I LRBESEQ,$D(^LRO(69,LRODT,1,LRSN,2,LRTN,2,LRBESEQ,0)) S LRD=^(0) D
 | 
|---|
| 112 |  . . S LRBEMSG=+LRD_"^^^"_$P(LRD,U,4)_U_$P(LRD,U,5)_U_$P(LRD,U,2)
 | 
|---|
| 113 |  . . S LRBEMSG=LRBEMSG_U_$P(LRD,U,6)_U_$P(LRD,U,7)_U_$P(LRD,U,8)
 | 
|---|
| 114 |  . . S LRBEMSG=LRBEMSG_U_$P(LRD,U,3)_U_$P(LRD,U,9)
 | 
|---|
| 115 |  . . S LRBEDGX=+LRD
 | 
|---|
| 116 |  . S LRBEAR(LRBEDFN,"LRBEDGX",LRBESMP,LRBESPC,LRBETST,LRBEDGX)=LRBEMSG
 | 
|---|
| 117 |  ;if test has no dx, sc/ei, then find default dx, sc/ei
 | 
|---|
| 118 |  S LRBESEQ=$O(^LRO(69,LRODT,1,LRSN,2,LRTN,2,0)) I 'LRBESEQ D
 | 
|---|
| 119 |  . D DEFAULT^LRBEBA4 Q:$G(LRBENO)
 | 
|---|
| 120 |  . Q:'$G(LRDBEDGX)
 | 
|---|
| 121 |  . S LRBEAR(LRBEDFN,"LRBEDGX",LRBESMP,LRBESPC,LRBETST,LRDBEDGX)=LRBEDMSG
 | 
|---|
| 122 |  N LRTNX,LRI,LRTNXID
 | 
|---|
| 123 |  D BLDAR2(LRBETST,LRBETST,LRBESMP,LRBESPC)
 | 
|---|
| 124 |  S LRI=0 F  S LRI=$O(^LAB(60,LRBETST,2,LRI)) Q:LRI<1  D
 | 
|---|
| 125 |  . S LRTNX=+$G(^LAB(60,LRBETST,2,LRI,0)) Q:'LRTNX
 | 
|---|
| 126 |  . S LRTNXID=$P($P(^LAB(60,LRTNX,0),U,5),";",2)
 | 
|---|
| 127 |  . I LRTNXID="" D BLDAR2(LRBETST,LRTNX,LRBESMP,LRBESPC)
 | 
|---|
| 128 |  Q
 | 
|---|
| 129 |  ;
 | 
|---|
| 130 | BLDAR2(LRBETST,XTEST,LRBESMP,LRBESPC) ;
 | 
|---|
| 131 |  N LRTNX,LRI,DGX,LRX
 | 
|---|
| 132 |  S LRI=0
 | 
|---|
| 133 |  F  S LRI=$O(^LAB(60,XTEST,2,LRI)) Q:LRI<1  D
 | 
|---|
| 134 |  . S LRTNX=+$G(^LAB(60,XTEST,2,LRI,0)) Q:'LRTNX  D
 | 
|---|
| 135 |  . . S DGX=0 F  S DGX=$O(LRBEAR(LRBEDFN,"LRBEDGX",LRBESMP,LRBESPC,LRBETST,DGX)) Q:DGX<1  D
 | 
|---|
| 136 |  . . . S LRX=$G(LRBEAR(LRBEDFN,"LRBEDGX",LRBESMP,LRBESPC,LRBETST,DGX))
 | 
|---|
| 137 |  . . . Q:'LRX
 | 
|---|
| 138 |  . . . S LRBEAR(LRBEDFN,"LRBEDGX",LRBESMP,LRBESPC,LRTNX,DGX)=LRX
 | 
|---|
| 139 |  Q
 | 
|---|
| 140 |  ;
 | 
|---|
| 141 | STDN(LRODT,LRBESN,LRBETEST,LRBEAR1) ;  Test and Data Number
 | 
|---|
| 142 |  N LRBEA,LRBEB,LRBEC,LRBED,LRBEDX,LRBEPTDT,X,Y
 | 
|---|
| 143 |  S LRBEA="" F  S LRBEA=$O(LRBETEST(LRBEA)) Q:LRBEA=""  D
 | 
|---|
| 144 |  .S DIC="^LRO(69,"_LRODT_","_1_","_LRBESN_","_"2,",DIC(0)="MZ"
 | 
|---|
| 145 |  .S X=$P(LRBETEST(LRBEA),U,2) D ^DIC K DIC I +Y<1 Q
 | 
|---|
| 146 |  .S LRBEB=0 F  S LRBEB=$O(^LRO(69,LRODT,1,LRBESN,2,+Y,2,"B",LRBEB)) Q:LRBEB<1  D
 | 
|---|
| 147 |  ..S LRBEC=0 F  S LRBEC=$O(^LRO(69,LRODT,1,LRBESN,2,+Y,2,"B",LRBEB,LRBEC)) Q:'LRBEC  D
 | 
|---|
| 148 |  ...S LRBED="" F  S LRBED=$O(LRBEAR1($P(LRBETEST(LRBEA),U,1),LRBED)) Q:LRBED=""  D
 | 
|---|
| 149 |  ....S LRBEAR1($P(LRBETEST(LRBEA),U,1),LRBED,LRBEC)=LRBEB
 | 
|---|
| 150 |  Q
 | 
|---|
| 151 |  ;
 | 
|---|
| 152 | SOP(LRBEDFN,LRBESB,LRBEAR1,LRBEPAN,LRBEROLL) ;Outpatient Resulting 
 | 
|---|
| 153 |  ; Information in CIDC Array
 | 
|---|
| 154 |  N DIC,LRBEDN,LRBESTG,LRBEDGX,LRBEEDT,LRBEEPRO,LRBEOPRO,LRBEQTY,LRBETST
 | 
|---|
| 155 |  N LRBEPOS,LRORREFN,LRBE21
 | 
|---|
| 156 |  ;LRBERES=Resend PCE date flag
 | 
|---|
| 157 |  K LRBECPT S (LRBECPT,LRBEEDT,LRBEEPRO,LRBEOPRO,LRBEQTY,LRORREFN)=""
 | 
|---|
| 158 |  S LRBEEPRO=$$GEPRO(LRAA),LRBEOPRO=$$GOPRO^LRBEBA2(LRODT,LRSN)
 | 
|---|
| 159 |  S LRBETST=0 F  S LRBETST=$O(LRBEAR1(LRBETST)) Q:'LRBETST  D
 | 
|---|
| 160 |  . S LRBE21=0
 | 
|---|
| 161 |  . ;process AMA/billable panel CPT codes
 | 
|---|
| 162 |  . I $D(LRBEPAN(LRBETST)) D EN^LRBEBA21(.LRBE21)
 | 
|---|
| 163 |  . ;otherwise process atomic test(s) CPT codes
 | 
|---|
| 164 |  . I 'LRBE21 D
 | 
|---|
| 165 |  . . S LRY=$O(^LRO(69,LRODT,1,LRSN,2,"B",LRBETST,0))
 | 
|---|
| 166 |  . . Q:'LRY
 | 
|---|
| 167 |  . . S LRY=LRY_","_LRSN_","_LRODT_","
 | 
|---|
| 168 |  . . Q:$$GET1^DIQ(69.03,LRY,10,"I")
 | 
|---|
| 169 |  . . I $G(ORIEN),$$GET1^DIQ(69.03,LRY,6,"I")'=ORIEN Q
 | 
|---|
| 170 |  . . S LRBECDT=$$GET1^DIQ(69.03,LRY,22,"I")
 | 
|---|
| 171 |  . . Q:'LRBECDT
 | 
|---|
| 172 |  . . S LRBEDN="" F  S LRBEDN=$O(LRBEAR1(LRBETST,LRBEDN)) Q:LRBEDN=""  D SOP2
 | 
|---|
| 173 |  . . I $D(LRBECPT)=11 S LRFDA(1,69.03,LRY,11)=1 D FILE^DIE("KS","LRFDA(1)","ERR")
 | 
|---|
| 174 |  Q
 | 
|---|
| 175 |  ;
 | 
|---|
| 176 | SOP2 ;Process atomic test CPT code
 | 
|---|
| 177 |  N OUT,LRBETSTX
 | 
|---|
| 178 |  I $G(LRBESB(LRBEDN))'="" D
 | 
|---|
| 179 |  . I $P(LRBESB(LRBEDN),U)="pending" Q
 | 
|---|
| 180 |  . I $P(LRBESB(LRBEDN),U)="canc" Q
 | 
|---|
| 181 |  . I '$G(LRBERES) Q:$P($G(LRBESB(LRBEDN)),U,13)
 | 
|---|
| 182 |  . S LRBEQTY=1
 | 
|---|
| 183 |  . D GPRO^LRBEBA4(LRBEDN,LRBECDT,LRSPEC,.LRBETSTX) I $G(LRBETSTX),$O(LRBECPT(LRBETSTX,0)) D
 | 
|---|
| 184 |  . . D GOREF^LRBEBA21(LRODT,LRSN,LRBEDN,.LRBEAR1,.LRORREFN)
 | 
|---|
| 185 |  . . S OUT=0 I $G(LRDFN),$G(LRIDT),$D(^LR(LRDFN,LRSS,LRIDT,$G(LRBEDN))) D
 | 
|---|
| 186 |  . . . ;test already sent to PCE
 | 
|---|
| 187 |  . . . I '$G(LRBERES) S OUT=$P(^LR(LRDFN,LRSS,LRIDT,$G(LRBEDN)),U,13) Q:OUT
 | 
|---|
| 188 |  . . . ;otherwise, mark it as sent to PCE
 | 
|---|
| 189 |  . . . S $P(^LR(LRDFN,LRSS,LRIDT,$G(LRBEDN)),U,13)=1
 | 
|---|
| 190 |  . . ;don't continue if test already sent to PCE and not re-sending from WORK^LRBEBA4
 | 
|---|
| 191 |  . . Q:OUT
 | 
|---|
| 192 |  . . S LRI=0 F  S LRI=$O(LRBECPT(LRBETSTX,LRI)) Q:LRI<1  D
 | 
|---|
| 193 |  . . . S LRBECPT=$O(LRBECPT(LRBETSTX,LRI,0))
 | 
|---|
| 194 |  . . . S LRBEMOD=$$GMOD^LRBEBA2(LRAA,LRBECPT)
 | 
|---|
| 195 |  . . . S LRBEPOS=$$GPOS(.LRBESB,LRBEDN)
 | 
|---|
| 196 |  . . . D GDGX^LRBEBA21(LRBETST,LRBEDN,.LRBEAR,.LRBEAR1,.LRBEDGX)
 | 
|---|
| 197 |  . . . S LRBESTG=LRBECPT_U_LRBEMOD_U_$G(LRBEDGX(LRBETST,1))_U_$G(LRBEDGX(LRBETST,2))_U_$G(LRBEDGX(LRBETST,3))
 | 
|---|
| 198 |  . . . S LRBESTG=LRBESTG_U_$G(LRBEDGX(LRBETST,4))_U_LRBECDT_U_LRBEEPRO_U_LRBEOPRO_U_LRBEQTY_U_LRBEPOS
 | 
|---|
| 199 |  . . . S LRBESTG=LRBESTG_U_$G(LRBEDGX(LRBETST,5))_U_$G(LRBEDGX(LRBETST,6))_U_$G(LRBEDGX(LRBETST,7))
 | 
|---|
| 200 |  . . . S LRBESTG=LRBESTG_U_$G(LRBEDGX(LRBETST,8))_U_LRORREFN
 | 
|---|
| 201 |  . . . I $G(LRBECPT(LRBETSTX,LRI,LRBECPT,"COUNT")) S $P(LRBESTG,U,20)=LRBECPT(LRBETSTX,LRI,LRBECPT,"COUNT")+1
 | 
|---|
| 202 |  . . . S LRBEAR(LRBEDFN,"LRBEDGX",LRI,LRBEDN)=LRBESTG
 | 
|---|
| 203 |  Q
 | 
|---|
| 204 |  ;
 | 
|---|
| 205 | GEPRO(LRBEAA) ; Provider - Responsible Official
 | 
|---|
| 206 |  N X,LRBEPRO
 | 
|---|
| 207 |  S LRBEPRO=$$GET1^DIQ(68,LRBEAA_",",.1,"I")
 | 
|---|
| 208 |  I $$GET^XUA4A72(LRBEPRO,DT)<0 S LRBEPRO=$$GET1^DIQ(69.9,1,617,"I")
 | 
|---|
| 209 |  Q LRBEPRO
 | 
|---|
| 210 |  ;
 | 
|---|
| 211 | GPOS(LRBESB,LRBEDN) ; Get the Place of Service
 | 
|---|
| 212 |  Q $P($G(LRBESB(LRBEDN)),U,9)
 | 
|---|
| 213 |  ;
 | 
|---|
| 214 | SLROT(LRXST,LRTEST,LRBEOT) ;LROT array
 | 
|---|
| 215 |  D SLROT^LRBEBA3(.LRXST,.LRTEST,.LRBEOT)
 | 
|---|
| 216 |  Q
 | 
|---|