source: WorldVistAEHR/trunk/r/ZZREGIONAL-A1C-A5C-CRHD-RGED-RGUT-RGWB-RG/RGRSDYN2.m@ 1679

Last change on this file since 1679 was 613, checked in by George Lilly, 15 years ago

initial load of WorldVistAEHR

File size: 2.0 KB
Line 
1RGRSDYN2 ;ALB/RJS-BUILD DYNAMIC LINK LIST FOR SENSITIVITY ;3-21-97
2 ;;1.0;CLINICAL INFO RESOURCE NETWORK;**8**;30 Apr 99
3EN(CLIENT,CLASS) ;
4 ;CLIENT=HL7 CLIENT PROTOCOL AT TARGET SYSTEM
5 ;DATA CLASS (Opt.) = Pull from Subs. Registry ONLY
6 ;For now, anything else is both DESCRIPTIVE AND CLINICAL
7 S CLASS=$G(CLASS),CLIENT=$G(CLIENT)
8 Q:CLIENT="" ;No receiver
9 N PPF,DFN,HERE,RGRS,PPFIEN
10PARS ;Parse local outbound message
11 N RGDC
12 D INITIZE^RGRSUTIL,EN^RGRSPARS("RGRS")
13 ;Get patients owner site
14 S PPF=$G(RGRS("SITENUM"))\1 Q:PPF'>0
15 S PPFIEN=$$LKUP^XUAF4(PPF)
16 ;Get DFN
17 S DFN=$G(RGRS("DFN")) Q:$G(DFN)']""
18 Q:$$IFLOCAL^MPIF001(DFN)
19 ;Where we're at
20 S HERE=$P($$SITE^VASITE,"^",3)\1
21NOTPPF ; if not ppf send only to ppf
22 I PPF'=HERE D Q
23 . N PPFLINK,INDEX
24 . D LINK^HLUTIL3(PPFIEN,.PPFLINK)
25 . S INDEX=$O(PPFLINK(0))
26 . I INDEX]"" S HLL("LINKS",1)=CLIENT_"^"_PPFLINK(INDEX)
27ISPPF ;
28 I PPF=HERE D Q
29 . N PARENT,INDEX,SUBCONTL,CHILDREN,INDEX1,NODE
30 . S NODE=$$MPINODE^MPIFAPI(DFN)
31 . S SUBCONTL=$P($G(NODE),"^",5)
32 . ;Get subscribers, return updated HLL array
33 . I SUBCONTL]"" D GET^HLSUB(SUBCONTL,+CLASS,CLIENT,.HLL)
34 . ;LAST MINUTE CHANGE MARILYN REQUESTED, COMMENTED OUT HERE
35 . ;BECAUSE WE'RE NOT SURE THE MPI WANTS Z12'S
36 . ;S MPI=$$MPILINK^MPIFAPI() D
37 . ;. I $P($G(MPI),U)'=-1 S HLL("LINKS",9999999999)=CLIENT_"^"_MPI
38 . ;. I $P($G(MPI),U)=-1 D
39 . ;. . N RGLOG,RGMTXT
40 . ;. . D START^RGHLLOG(HLMTIEN,"","")
41 . ;. . S RGMTXT=""
42 . ;. . D EXC^RGHLLOG(224,"No MPI link identified in CIRN SITE PARAMETER file (#991.8)"_RGMTXT) D STOP^RGHLLOG(0)
43 ;
44 ;the following was commented out because we're not updating all sites
45 ;in the VISN anymore
46 ;
47 ;. ;Get owners PARENT
48 ;. D PARENT^XUAF4("PARENT",PPF)
49 ;. S INDEX=""
50 ;. S INDEX=$O(PARENT("P",INDEX))
51 ;. Q:INDEX']""
52 ;. D LINK^HLUTIL3(INDEX,.CHILDREN)
53 ;. S INDEX=$O(HLL("LINKS",9999999999999),-1)
54 ;. Q:INDEX']""
55 ;. S INDEX1=0
56 ;. F S INDEX1=$O(CHILDREN(INDEX1)) Q:INDEX1'>0 D
57 ;. . S INDEX=INDEX+1
58 ;. . S HLL("LINKS",INDEX)=CLIENT_"^"_CHILDREN(INDEX1)
Note: See TracBrowser for help on using the repository browser.