Ignore:
Timestamp:
Dec 4, 2009, 8:26:01 PM (14 years ago)
Author:
George Lilly
Message:

WorldVistAEHR overlayed on FOIAVistA

Location:
FOIAVistA/tag/r
Files:
1 edited
1 copied

Legend:

Unmodified
Added
Removed
  • FOIAVistA/tag/r/RADIOLOGY_NUCLEAR_MEDICINE-RA/RAHLRPC.m

    r628 r636  
    11RAHLRPC ;HIRMFO/BNT-Rad/NM HL7 Protocol calls ;05/21/99   14:50
    2  ;;5.0;Radiology/Nuclear Medicine;**12,25,54,71,82,81,84**;Mar 16, 1998;Build 13
     2 ;;5.0;Radiology/Nuclear Medicine;**12,25,54,71,82,81**;Mar 16, 1998;Build 12
    33 ; 03/16/2006 *71 Rem Call 124379 allow exam updates to create HL7 msg
    4  ;
    5  ;Integration Agreements
    6  ;----------------------
    7  ;$$FIND1^DIC(2051); GETS^DIQ(2056)
    8  ;all access to ^ORD(101 to maintain application specific protocols(872)
    9  ;read w/FileMan HL7 APPLICATION PARAMETER(10136)
    10  ;
    114REG ; register exam
    12  N X,RA101Z,RAEID
    13  S RA101Z="RA REF" ; get all protocols beginning RA REG
    14  F  S RA101Z=$O(^ORD(101,"B",RA101Z)) Q:RA101Z'["RA REG"  D
    15  .S RAEID=$O(^ORD(101,"B",RA101Z,0))
     5 N X,RAPID,RAEID
     6 S RAPID="RA REF" ; get all protocols beginning RA REG
     7 F  S RAPID=$O(^ORD(101,"B",RAPID)) Q:RAPID'["RA REG"  D
     8 .S RAEID=$O(^ORD(101,"B",RAPID,0))
    169 .I RAEID,'$L($P(^ORD(101,RAEID,0),"^",3)) D EN^RAHLR
    1710 Q
    1811CANCEL ; cancel exam
    19  N X,RA101Z,RAEID
    20  S RA101Z="RA CANCEK" ; get all protocols beginning RA CANCEL
    21  F  S RA101Z=$O(^ORD(101,"B",RA101Z)) Q:RA101Z'["RA CANCEL"  D
    22  .S RAEID=$O(^ORD(101,"B",RA101Z,0))
     12 N X,RAPID,RAEID
     13 S RAPID="RA CANCEK" ; get all protocols beginning RA CANCEL
     14 F  S RAPID=$O(^ORD(101,"B",RAPID)) Q:RAPID'["RA CANCEL"  D
     15 .S RAEID=$O(^ORD(101,"B",RAPID,0))
    2316 .I RAEID,'$L($P(^ORD(101,RAEID,0),"^",3)) D EN^RAHLR
    2417 Q
    2518 ;
    2619RPT ; report verified or released/not verified
    27  N X,RA101Z,RAEID,RASSS ; RASSS subcriber array to be passed to HLL for GENERATE^HLMA
     20 N X,RAPID,RAEID,RASSS ; RASSS subcriber array to be passed to HLL for GENERATE^HLMA
    2821 ;S X="^%ET",@^%ZOSF("TRAP")
    29  S RA101Z="RA RPS" ; get all protocols beginning RA RPT
    30  F  S RA101Z=$O(^ORD(101,"B",RA101Z)) Q:RA101Z'["RA RPT"  D
    31  .S RAEID=$O(^ORD(101,"B",RA101Z,0)) K RASSS  ; RA*5*81
     22 S RAPID="RA RPS" ; get all protocols beginning RA RPT
     23 F  S RAPID=$O(^ORD(101,"B",RAPID)) Q:RAPID'["RA RPT"  D
     24 .S RAEID=$O(^ORD(101,"B",RAPID,0)) K RASSS  ; RA*5*81
    3225 .S:$L($G(RANOSEND)) RAEID=$$GETEID(RAEID,RANOSEND,.RASSS) ;RA*5*81
    3326 .I RAEID,'$L($P(^ORD(101,RAEID,0),"^",3)) D EN^RAHLRPT
     
    5144 ; RAEXEDT = Indication of editing of: proc, proc mod, req phys, CPT mod, Tech comm...
    5245 ; RAGENHL7 = Indication that sending ORU is due...
    53  ; RASSSX1(IENs) = Array of subscribers from 771, the message will be sent (SCIMGE)
    5446 ;
    55  N RAIMGTYI,RAIMGTYJ,RALOWER,RANEWST,RAEXMDUN,RAGENHL7,RASSSX1
     47 N RAIMGTYI,RAIMGTYJ,RALOWER,RANEWST,RAEXMDUN,RAGENHL7
    5648 S RAIMGTYI=$P($G(^RADPT(RADFN,"DT",RADTI,0)),U,2),RAIMGTYJ=$P(^RA(79.2,RAIMGTYI,0),U),RANEWST=$P($G(^RADPT(RADFN,"DT",RADTI,"P",RACNI,0)),U,3)
    5749 S:$P(^RA(72,RANEWST,0),U,8)="Y" RAGENHL7=1 ;this status has GEN HL7 marked Y
     
    6153 ;?? none of the lower status levels have GEN HL7 marked Y
    6254 K:$P(^RADPT(RADFN,"DT",RADTI,"P",RACNI,0),U,30)="Y" RAGENHL7 ;already sent
    63  ;Q:'$G(RAEXEDT)&'$G(RAGENHL7)
    64  ; Business Rule: RA*5*84 sends an examined message to ScImage unconditionally
    65  I '$G(RAEXEDT),'$G(RAGENHL7) Q:'$O(^RA(79.7,0))  D  Q:'$O(RASSSX1(0))
    66  .N X,RASSS,RASSSL S X=0 F  S X=$O(^RA(79.7,X)) Q:'X  S:$P(^(X,0),U,2) RASSS(X)=""
    67  .D:$D(RASSS) GETSUB^RAHLRS1(.RASSS,.RASSSX1,.RASSSL)
     55 Q:'$G(RAEXEDT)&'$G(RAGENHL7)
     56 ;
    68571 N RAEXMDUN
    6958 S RAEXMDUN=1
    70 A1 N X,RA101Z,RAEID
    71  S RA101Z="RA EXAMINEC" ; get all protocols beginning RA EXAMINED
    72  F  S RA101Z=$O(^ORD(101,"B",RA101Z)) Q:RA101Z'["RA EXAMINED"  D
    73  .N RAGENHL7 S RAEID=$O(^ORD(101,"B",RA101Z,0))
     59A1 N X,RAPID,RAEID
     60 S RAPID="RA EXAMINEC" ; get all protocols beginning RA EXAMINED
     61 F  S RAPID=$O(^ORD(101,"B",RAPID)) Q:RAPID'["RA EXAMINED"  D
     62 .N RAGENHL7 S RAEID=$O(^ORD(101,"B",RAPID,0))
    7463 .I RAEID,'$L($P(^ORD(101,RAEID,0),"^",3)) D EN^RAHLR
    7564 S:$G(RAGENHL7) $P(^RADPT(RADFN,"DT",RADTI,"P",RACNI,0),U,30)="Y"
     
    8271 ; 0 (zero) returned if No subscriber exist or all subscribers associated with RANOSEND application.
    8372 S RAEID=$G(RAEID) Q:'RAEID!'$L($G(RANOSEND))!'$D(^ORD(101,+RAEID,0)) RAEID
    84  N RAXX,ERR,X1,Y1,YY,RAPL,RANEW,RAPIDS,RAIEDS,DIERR,RAERR
    85  S RAPL=$S(+RANOSEND:+RANOSEND,1:$$FIND1^DIC(771,"","X",RANOSEND,"","","RAERR"))
    86  Q:'RAPL!($D(RAERR)#2) RAEID
     73 N RAXX,ERR,X1,Y1,YY,RAPL,RANEW,RAPIDS,RAIEDS
     74 S RAPL=$S(+RANOSEND:+RANOSEND,1:$O(^HL(771,"B",RANOSEND,0))) Q:'RAPL RAEID
    8775 D GETS^DIQ(101,RAEID_",","**","I","RAXX","ERR")
    8876 Q:$D(ERR) RAEID ; Was not able get Event driver info... so just pass event driver...
Note: See TracChangeset for help on using the changeset viewer.