| 1 | LRVRPOC ;DALOI/JMC - POINT OF CARE VERIFICATION ; 4 May 2004 | 
|---|
| 2 | ;;5.2;LAB SERVICE;**290**;Sep 27, 1994 | 
|---|
| 3 | ; | 
|---|
| 4 | ; Reference to DIVSET^XUSRB2 supported by DBIA #4055 | 
|---|
| 5 | ; Reference to ADM^VADPT2 supported by DBIA #325 | 
|---|
| 6 | ; | 
|---|
| 7 | EN ; Entry Point Call with LRLL=Load/Worklist IEN | 
|---|
| 8 | ; | 
|---|
| 9 | N DIQUIET | 
|---|
| 10 | ; | 
|---|
| 11 | S LRLL=+$G(LRLL) | 
|---|
| 12 | ; | 
|---|
| 13 | ; See if already running | 
|---|
| 14 | L +^LAH("Z",LRLL):10 | 
|---|
| 15 | E  D END Q | 
|---|
| 16 | ; | 
|---|
| 17 | I '$D(^LRO(68.2,LRLL,0))#2 D END Q | 
|---|
| 18 | S LRLL(0)=^LRO(68.2,LRLL,0) | 
|---|
| 19 | ; | 
|---|
| 20 | ; Must be POC Load/Work List | 
|---|
| 21 | I $$GET1^DIQ(68.2,LRLL,.03,"I")'=2 D  Q | 
|---|
| 22 | . S LAMSG="POC: Unable to process POC results using non-POC worklist "_$$GET1^DIQ(68.2,LRLL,.01) | 
|---|
| 23 | . D XQA^LA7UXQA(2,0,0,0,LAMSG,"") | 
|---|
| 24 | . D END | 
|---|
| 25 | ; | 
|---|
| 26 | ; | 
|---|
| 27 | ; If rollover has not completed | 
|---|
| 28 | ; then requeue task 1 hour in future and send alert. | 
|---|
| 29 | I $G(^LAB(69.9,1,"RO"))'=+$H D  Q | 
|---|
| 30 | . S ZTREQ=$$HADD^XLFDT($H,0,1,0,0) | 
|---|
| 31 | . S LAMSG="POC: Lab Rollover has not completed as of "_$$HTE^XLFDT($H,"1M") | 
|---|
| 32 | . D XQA^LA7UXQA(2,0,0,0,LAMSG,"") | 
|---|
| 33 | . D END | 
|---|
| 34 | ; | 
|---|
| 35 | D INIT^LRVRPOCU | 
|---|
| 36 | I LREND D  Q | 
|---|
| 37 | . D XQA^LA7UXQA(2,0,0,0,"POC: "_LAMSG,"") | 
|---|
| 38 | . D END | 
|---|
| 39 | ; | 
|---|
| 40 | S LAIEN=0 | 
|---|
| 41 | F  S LAIEN=$O(^LAH(LRLL,1,LAIEN)) Q:LAIEN<1  D | 
|---|
| 42 | . I $$S^%ZTLOAD S ZTSTOP=1 Q  ; Task has been requested to stop | 
|---|
| 43 | . K LRERR | 
|---|
| 44 | . S LASSN=$P($G(^LAH(LRLL,1,LAIEN,.1,"PID","SSN")),"^") | 
|---|
| 45 | . ; Interface message number in ^LAHM(62.49 | 
|---|
| 46 | . S LA76249=+$P($G(^LAH(LRLL,1,LAIEN,0)),U,13) | 
|---|
| 47 | . ; File #62.48 configuration link | 
|---|
| 48 | . S LA76248="" | 
|---|
| 49 | . I LA76249 S LA76248=$$GET1^DIQ(62.49,LA76249_",",.5,"I") | 
|---|
| 50 | . D LOOK,NEXT,ZAPALL^LRVR3(LRLL,LAIEN) | 
|---|
| 51 | D END | 
|---|
| 52 | Q | 
|---|
| 53 | ; | 
|---|
| 54 | ; | 
|---|
| 55 | NEXT ; Clean up between entries | 
|---|
| 56 | D CLEAN^LRVRPOCU | 
|---|
| 57 | Q | 
|---|
| 58 | ; | 
|---|
| 59 | ; | 
|---|
| 60 | END ; Clean up and quit | 
|---|
| 61 | ; Release lock | 
|---|
| 62 | L -^LAH("Z",LRLL) | 
|---|
| 63 | ; | 
|---|
| 64 | D SPALERT^LRVRPOCU,KVAR^VADPT,KILL^XUSCLEAN | 
|---|
| 65 | K ^TMP("LR",$J) | 
|---|
| 66 | I $D(ZTQUEUED),'$P($G(ZTREQ),"^") S ZTREQ="@" | 
|---|
| 67 | Q | 
|---|
| 68 | ; | 
|---|
| 69 | ; | 
|---|
| 70 | LOOK ; Check for data | 
|---|
| 71 | K LRDFN,LRERR | 
|---|
| 72 | S LRODT=DT,(LREND,LRERR)=0 | 
|---|
| 73 | S DFN=$$FIND1^DIC(2,"","X",LASSN,"SSN","","") | 
|---|
| 74 | I 'DFN D  Q | 
|---|
| 75 | . S LRERR=$$CREATE^LA7LOG(101,1) | 
|---|
| 76 | . D SENDACK^LRVRPOCU | 
|---|
| 77 | S LADFN=DFN | 
|---|
| 78 | I '$D(^LAH(LRLL,1,LAIEN,0))#2 D  Q | 
|---|
| 79 | . S LRERR=$$CREATE^LA7LOG(105,1) | 
|---|
| 80 | . D SENDACK^LRVRPOCU | 
|---|
| 81 | S LRCDT=$P($G(^LAH(LRLL,1,LAIEN,.1,"OBR","ORCDT")),"^") | 
|---|
| 82 | I LRCDT'?7N.E D  Q | 
|---|
| 83 | . S LRERR=$$CREATE^LA7LOG(104,1) | 
|---|
| 84 | . D SENDACK^LRVRPOCU | 
|---|
| 85 | S LRDFN=$$FNLRDFN(LADFN) | 
|---|
| 86 | I $S(LREND:1,LRDFN<1:1,1:0) Q | 
|---|
| 87 | S LRSSN=$S($G(^LAH(LRLL,1,LAIEN,.1,"PID","SSN")):^("SSN"),1:"???") | 
|---|
| 88 | I LRSSN'=$G(SSN(2)) D  Q | 
|---|
| 89 | . S LRERR=$$CREATE^LA7LOG(106,1) | 
|---|
| 90 | . D SENDACK^LRVRPOCU | 
|---|
| 91 | S LRTJ="" | 
|---|
| 92 | D DATA(LRLL,LAIEN) | 
|---|
| 93 | Q | 
|---|
| 94 | ; | 
|---|
| 95 | ; | 
|---|
| 96 | FNLRDFN(DFN) ;Lookup/set LRDFN and define patient variables | 
|---|
| 97 | D KVAR^VADPT | 
|---|
| 98 | K ANS,ERR,LRDPF,PNM,X | 
|---|
| 99 | I $S(+DFN'=DFN:1,'$G(DFN):1,'$D(^DPT(DFN,0))#2:1,1:0) D  Q 0 | 
|---|
| 100 | . S LREND=1,LRERR=$$CREATE^LA7LOG(108,1) | 
|---|
| 101 | . D SENDACK^LRVRPOCU | 
|---|
| 102 | S LRDFN=$$GET1^DIQ(2,DFN_",",63,"I","ANS","ERR") | 
|---|
| 103 | S PNM="Unknown" | 
|---|
| 104 | I LRDFN<1 S LRDFN=$$NEWPT(DFN) | 
|---|
| 105 | I LRDFN>0 D  Q LRDFN | 
|---|
| 106 | . D DEM^LRX | 
|---|
| 107 | . I $G(LREND) S LRDFN=0 Q | 
|---|
| 108 | . S VAINDT=LRCDT D ADM^VADPT2 | 
|---|
| 109 | . S VAIP("D")=$S(VADMVT:LRCDT,1:LRCDT\1) D IN5PT^LRX | 
|---|
| 110 | . D DPT(SSN(2)) | 
|---|
| 111 | . I LRERR S LREND=1,LRDFN=0 | 
|---|
| 112 | Q 0 | 
|---|
| 113 | ; | 
|---|
| 114 | ; | 
|---|
| 115 | NEWPT(DFN) ;Set ^LR( root for patient | 
|---|
| 116 | S LRDPF="2^DPT(",X="^"_$P(LRDPF,"^",2)_DFN_",""LR"")" | 
|---|
| 117 | S LRDFN=$O(^LR("A"),-1) I 'LRDFN S LRDFN=1 | 
|---|
| 118 | L +^LR(0):99 | 
|---|
| 119 | D E2^LRDPA | 
|---|
| 120 | L -^LR(0) | 
|---|
| 121 | I $G(LRDFN)<1 S LREND=1,LRDFN=0 | 
|---|
| 122 | Q LRDFN | 
|---|
| 123 | ; | 
|---|
| 124 | ; | 
|---|
| 125 | DPT(LRASSN) ; | 
|---|
| 126 | N LRX,X,Y,DIC | 
|---|
| 127 | S (LRERR,LRDFN)="" | 
|---|
| 128 | S DFN=$$FIND1^DIC(2,"","X",LRASSN,"SSN","","") | 
|---|
| 129 | I 'DFN D  Q | 
|---|
| 130 | . N LASSN | 
|---|
| 131 | . S LASSN=LRASSN,LRERR=$$CREATE^LA7LOG(101,1) | 
|---|
| 132 | . D SENDACK^LRVRPOCU | 
|---|
| 133 | S LRDFN=$$GET1^DIQ(2,DFN_",",63,"I","ANS","ERR") | 
|---|
| 134 | I 'LRDFN D END^LRDPA Q:'$G(LRDFN) | 
|---|
| 135 | S LRX=$G(^LAH(LRLL,1,LAIEN,.1,"PID","LRDFN")) | 
|---|
| 136 | I LRX,LRX'=LRDFN D  Q | 
|---|
| 137 | . S LRERR=$$CREATE^LA7LOG(103,1) | 
|---|
| 138 | . D SENDACK^LRVRPOCU | 
|---|
| 139 | ; | 
|---|
| 140 | S LRX=$G(^LAH(LRLL,1,LAIEN,.1,"PID","DFN")) | 
|---|
| 141 | I LRX,LRX'=DFN D  Q | 
|---|
| 142 | . S LRERR=$$CREATE^LA7LOG(102,1) | 
|---|
| 143 | . D SENDACK^LRVRPOCU | 
|---|
| 144 | ; | 
|---|
| 145 | ; Determine ordering provider | 
|---|
| 146 | N LRX,LRY,X,Y | 
|---|
| 147 | S LRPRAC="" | 
|---|
| 148 | S LRX=$G(^LAH(LRLL,1,LAIEN,.1,"OBR","ORDP")) | 
|---|
| 149 | I '$P(LRX,"^",2),$P(LRX,"^")'="" D  Q:LRERR | 
|---|
| 150 | . S LRERR=$$CREATE^LA7LOG(119,1) | 
|---|
| 151 | . D SENDACK^LRVRPOCU | 
|---|
| 152 | ; Check if a valid provider | 
|---|
| 153 | I $P(LRX,"^",2) D  Q:LRERR | 
|---|
| 154 | . I $$PROVIDER^XUSER(+LRX) S LRPRAC=+LRX Q | 
|---|
| 155 | . S LRERR=$$CREATE^LA7LOG(119,1) | 
|---|
| 156 | . D SENDACK^LRVRPOCU | 
|---|
| 157 | ; | 
|---|
| 158 | ; If no ordering provider in message then check for inpatient provider. | 
|---|
| 159 | I 'LRPRAC D | 
|---|
| 160 | . I $G(VAIP(7)) S LRPRAC=+VAIP(7) Q | 
|---|
| 161 | . I $G(VAIP(18)) S LRPRAC=+VAIP(18) Q | 
|---|
| 162 | ; | 
|---|
| 163 | ; Use VADPT for inpatients - clinic enrollment for outpatient | 
|---|
| 164 | ; Check if ordering location/division from message | 
|---|
| 165 | S X=$G(^LAH(LRLL,1,LAIEN,.1,"OBR","EOL")) | 
|---|
| 166 | S LROLLOC=+X,LROLDIV=$P(X,"^",3) | 
|---|
| 167 | ; | 
|---|
| 168 | ; Check for inpatient location if no location | 
|---|
| 169 | I 'LROLLOC,$G(VAIP(5)) D | 
|---|
| 170 | . S LROLLOC=$$GET1^DIQ(42,+VAIP(5)_",",44,"I") | 
|---|
| 171 | . I 'LROLDIV S LROLDIV=$$GET1^DIQ(44,LROLLOC_",",3,"I") | 
|---|
| 172 | ; | 
|---|
| 173 | ; Check for outpatient appointments if no location | 
|---|
| 174 | I 'LROLLOC!('LRPRAC) D VASD^LRVRPOCU | 
|---|
| 175 | ; | 
|---|
| 176 | ; If no location then log error. | 
|---|
| 177 | I 'LROLLOC D  Q | 
|---|
| 178 | . S LRERR=$$CREATE^LA7LOG(107,1) | 
|---|
| 179 | . D SENDACK^LRVRPOCU | 
|---|
| 180 | ; | 
|---|
| 181 | ; If no in/outpatient provider then check for primary care provider | 
|---|
| 182 | I 'LRPRAC S LRPRAC=+$$OUTPTPR^SDUTL3(DFN,LRCDT) | 
|---|
| 183 | ; | 
|---|
| 184 | ; If no provider - none in message, no primary care and no provider on | 
|---|
| 185 | ; outpatient encounter then log error. | 
|---|
| 186 | I 'LRPRAC D  Q | 
|---|
| 187 | . S LRERR=$$CREATE^LA7LOG(110,1) | 
|---|
| 188 | . D SENDACK^LRVRPOCU | 
|---|
| 189 | ; | 
|---|
| 190 | ; If division in message does not match location's division then reject. | 
|---|
| 191 | ; Check if division not a VAMC and parent is a VAMC and division | 
|---|
| 192 | ;  matches parent - deal with multiple medical centers within an | 
|---|
| 193 | ;  integrated system. | 
|---|
| 194 | I LROLDIV D  Q:LRERR | 
|---|
| 195 | . N DIV,OK,LRX | 
|---|
| 196 | . S DIV=$$GET1^DIQ(44,LROLLOC_",",3,"I") | 
|---|
| 197 | . I LROLDIV=DIV Q | 
|---|
| 198 | . S X=$$NNT^XUAF4(DIV),OK=0 | 
|---|
| 199 | . I $P(X,"^",3)'="VAMC" D  Q:OK | 
|---|
| 200 | . . S Y=$P($$PRNT^XUAF4($P(X,"^")),"^"),X=$$NNT^XUAF4(Y) | 
|---|
| 201 | . . I $P(X,"^",3)="VAMC",$P(Y,"^")=LROLDIV S OK=1 | 
|---|
| 202 | . S LRX=$$NNT^XUAF4(LROLDIV) | 
|---|
| 203 | . S LRERR=$$CREATE^LA7LOG(112,1) | 
|---|
| 204 | . D SENDACK^LRVRPOCU | 
|---|
| 205 | ; | 
|---|
| 206 | ; Get location abbreviation | 
|---|
| 207 | S LRLLOC=$$GET1^DIQ(44,LROLLOC_",",1,"I") | 
|---|
| 208 | I LRLLOC="" S LRLLOC="NO ABRV "_LROLLOC | 
|---|
| 209 | Q | 
|---|
| 210 | ; | 
|---|
| 211 | ; | 
|---|
| 212 | DATA(LRLL,LAIEN) ;Extract results into LROT( | 
|---|
| 213 | ; | 
|---|
| 214 | K LR642,LRDATA,LRERR,LRSPECX,LRCNT,LROSPEC,LROT,LRSAMP,LRSB,LRSPEC,LRTRAY,LRCUP,LRSQ,LRTS,LRX,LRY,LRZ | 
|---|
| 215 | S LRSQ=LAIEN,LRDATA=1,(LR642,LRCNT,LRERR)=0,(LRDAA,LRSAMP,LRSPEC)="" | 
|---|
| 216 | S LRLL(0)=^LRO(68.2,LRLL,0) | 
|---|
| 217 | S LROSPEC=$P($G(^LAH(LRLL,1,LAIEN,.1,"OBR","ORDSPEC")),"^") | 
|---|
| 218 | I LROSPEC="" D  Q | 
|---|
| 219 | . S LRERR=$$CREATE^LA7LOG(114,1) | 
|---|
| 220 | . D SENDACK^LRVRPOCU | 
|---|
| 221 | S LRX=$G(^LAH(LRLL,1,LAIEN,.1,"OBR","ORDNLT")) | 
|---|
| 222 | ; | 
|---|
| 223 | ; Change division to ordering division | 
|---|
| 224 | S LRDUZ(2)=$S(LROLDIV:LROLDIV,1:LRDIV) | 
|---|
| 225 | I LRDUZ(2)'=DUZ(2) D  Q:LRERR | 
|---|
| 226 | . N LA7X,LRY | 
|---|
| 227 | . S LRY=0 | 
|---|
| 228 | . D DIVSET^XUSRB2(.LRY,"`"_LRDUZ(2)) | 
|---|
| 229 | . I LRY Q | 
|---|
| 230 | . S LA7X="Unable to set user 'LRLAB,POC' to division "_$$GET1^DIQ(4,LRDUZ(2)_",",.01) | 
|---|
| 231 | . S LRERR=$$CREATE^LA7LOG(37,1) | 
|---|
| 232 | ; | 
|---|
| 233 | ; Ordering based on NLT codes from loadlist profile and OBR segment | 
|---|
| 234 | F I=1:1:$L(LRX,"^") S LRY=$P(LRX,"^",I) Q:LRY=""  D  Q:LRERR | 
|---|
| 235 | . I '$D(LRORDNLT(LRY,LROSPEC)) S LRERR=$$CREATE^LA7LOG(120,1) Q | 
|---|
| 236 | . S LRZ=LRORDNLT(LRY,LROSPEC) | 
|---|
| 237 | . S LRTST=$P(LRZ,"^"),LRSPEC=$P(LRZ,"^",2),LRSAMP=$P(LRZ,"^",3) | 
|---|
| 238 | . I '$D(^TMP("LR",$J,"VTO",LRTST)) S LRERR=$$CREATE^LA7LOG(118,1) Q | 
|---|
| 239 | . I 'LRSPEC S LRERR=$$CREATE^LA7LOG(114,1) Q | 
|---|
| 240 | . I 'LRSAMP S LRERR=$$CREATE^LA7LOG(115,1) Q | 
|---|
| 241 | . S LRCNT=LRCNT+1,LROT(LRSAMP,LRSPEC,LRCNT)=LRTST | 
|---|
| 242 | . I $P(LRZ,"^",4) S LR642=$P(LRZ,"^",4) | 
|---|
| 243 | . I 'LRDAA,LROLDIV,$D(^LAB(60,LRTST,8,LROLDIV,0)) S LRDAA=$P(^(0),U,2) | 
|---|
| 244 | I LRERR D SENDACK^LRVRPOCU Q | 
|---|
| 245 | I LRDAA<1 S LRDAA=$P(^LRO(68.2,LRLL,10,LRPROF,0),"^",2) | 
|---|
| 246 | ; | 
|---|
| 247 | ; Check for results to process | 
|---|
| 248 | I '$O(LROT(0)) D  Q | 
|---|
| 249 | . S LRERR=$$CREATE^LA7LOG(113,1) | 
|---|
| 250 | . D SENDACK^LRVRPOCU | 
|---|
| 251 | ; | 
|---|
| 252 | ; Setup workload suffix | 
|---|
| 253 | I LR642<1 S LR642=LRDFWKLD | 
|---|
| 254 | D WKLD^LRVRPOCU(LR642) | 
|---|
| 255 | ; | 
|---|
| 256 | ; Check if results have datanames/tests on this profile. | 
|---|
| 257 | F  S LRDATA=$O(^LAH(LRLL,1,LAIEN,LRDATA)) Q:LRDATA<1  D  Q:LRERR | 
|---|
| 258 | . I $P($G(^LAH(LRLL,1,LAIEN,LRDATA)),U)="" Q | 
|---|
| 259 | . S LRDATA(LRDATA)=^LAH(LRLL,1,LAIEN,LRDATA) | 
|---|
| 260 | . I $P(LRDATA(LRDATA),"^",4)<1 S LRERR=$$CREATE^LA7LOG(111,1) Q | 
|---|
| 261 | . S LRTST=+$G(LRVTS(LRDATA)) | 
|---|
| 262 | . I 'LRTST S LRERR=$$CREATE^LA7LOG(116,1) Q | 
|---|
| 263 | . I '$D(^TMP("LR",$J,"VTO",LRTST)) S LRERR=$$CREATE^LA7LOG(118,1) Q | 
|---|
| 264 | I LRERR D SENDACK^LRVRPOCU Q | 
|---|
| 265 | ; | 
|---|
| 266 | K LRCOM | 
|---|
| 267 | S LRNT=$$NOW^XLFDT,LRORDTIM="" | 
|---|
| 268 | ; | 
|---|
| 269 | ; Setup the order in LRO(69 | 
|---|
| 270 | S LRNOLABL="" ; Suppress label printing | 
|---|
| 271 | D | 
|---|
| 272 | . N LRSPEC,LRSAMP,ZTQUEUED | 
|---|
| 273 | . S ZTQUEUED=1 | 
|---|
| 274 | . D ORDER^LROW2,^LRORDST | 
|---|
| 275 | ; | 
|---|
| 276 | ; Setup LRO(68 | 
|---|
| 277 | D | 
|---|
| 278 | . N LRSPEC,LRSAMP | 
|---|
| 279 | . D ^LRWLST | 
|---|
| 280 | I '$G(LRAA) D  Q | 
|---|
| 281 | . S LRERR=$$CREATE^LA7LOG(109,1) | 
|---|
| 282 | . D SENDACK^LRVRPOCU | 
|---|
| 283 | ; | 
|---|
| 284 | S LRMETH="POC DEVICE" | 
|---|
| 285 | I LA76248 S LRMETH=$E($$GET1^DIQ(62.48,LA76248_",",.01),1,10) | 
|---|
| 286 | I LRMETH="" S LRMETH=$E($P(LRLL(0),U),1,5)_"(POC)" | 
|---|
| 287 | ; | 
|---|
| 288 | ; Store POC specimen id in file #63 as ordering site UID. | 
|---|
| 289 | S X=$G(^LAH(LRLL,1,LAIEN,.1,"OBR","FID")) | 
|---|
| 290 | I $P(X,"^")'="" D | 
|---|
| 291 | . N FDA,LA7DIE | 
|---|
| 292 | . S FDA(1,63.04,LRIDT_","_LRDFN_",",.342)=$P(X,"^") | 
|---|
| 293 | . I $P(X,"^",2) S FDA(1,63.04,LRIDT_","_LRDFN_",",.32)=$P(X,"^",2) | 
|---|
| 294 | . D FILE^DIE("","FDA(1)","LA7DIE(1)") | 
|---|
| 295 | ; | 
|---|
| 296 | ; Store ^LR( data [results] | 
|---|
| 297 | S LRVF=0,LRALERT=LROUTINE,LRUSI="POC.5" | 
|---|
| 298 | M LRSB=LRDATA | 
|---|
| 299 | D TEST^LRVR1 | 
|---|
| 300 | S LRSB=0 | 
|---|
| 301 | F  S LRSB=$O(LRSB(LRSB)) Q:LRSB<1  D  Q:LRERR | 
|---|
| 302 | . I '$G(^TMP("LR",$J,"TMP",LRSB,"P")) S LRERR=$$CREATE^LA7LOG(117,1) Q | 
|---|
| 303 | . S LRX=$$TMPSB^LRVER1(LRSB),LRY=$P(LRSB(LRSB),U,3) | 
|---|
| 304 | . F I=1:1:$L(LRX,"!") I $P(LRY,"!",I)="" S $P(LRY,"!",I)=$P(LRX,"!",I) | 
|---|
| 305 | . S $P(LRSB(LRSB),U,3)=LRY | 
|---|
| 306 | . S LRTS=$G(^TMP("LR",$J,"TMP",LRSB)) | 
|---|
| 307 | . D V25^LRVER5 | 
|---|
| 308 | . S LRX=LRNGS,LRY=$P(LRSB(LRSB),U,5) | 
|---|
| 309 | . F I=1:1:$L(LRX,U) I $P(LRY,"!",I)="" S $P(LRY,"!",I)=$P(LRX,U,I) | 
|---|
| 310 | . S $P(LRSB(LRSB),U,5)=LRY | 
|---|
| 311 | . I $P(LRSB(LRSB),U,9)="" S $P(LRSB(LRSB),U,9)=$S($G(LRDUZ(2)):LRDUZ(2),1:$G(DUZ(2))) | 
|---|
| 312 | . S ^LR(LRDFN,"CH",LRIDT,LRSB)=LRSB(LRSB) | 
|---|
| 313 | ; | 
|---|
| 314 | I LRERR D SENDACK^LRVRPOCU Q | 
|---|
| 315 | ; | 
|---|
| 316 | ; Call to set data and comments | 
|---|
| 317 | I $O(LRSB(0)) D | 
|---|
| 318 | . D LRSBCOM^LRVR4,A3^LRVR3 | 
|---|
| 319 | . S LRSTORE=LRSTORE+1 | 
|---|
| 320 | . I $G(LA76248) S LRSTORE(LA76248)=$G(LRSTORE(LA76248))+1 | 
|---|
| 321 | ; | 
|---|
| 322 | ; Send application ack back to POC interface | 
|---|
| 323 | D SENDACK^LRVRPOCU | 
|---|
| 324 | Q | 
|---|