1 | PXRMEXU0 ; SLC/PKR - Reminder exchange general utilities, #0.;06/23/2005
|
---|
2 | ;;2.0;CLINICAL REMINDERS;**4**;Feb 04, 2005;Build 21
|
---|
3 | ;=========================================================
|
---|
4 | LOC(FDA) ;Process the FDA for location lists.
|
---|
5 | ;Direct reads of ^DIC(40.7) covered by DBIA #537.
|
---|
6 | N AMIS,IEN,IENS,STOP,TEMP,TEXT
|
---|
7 | ;Stop Codes may not have a unique name, use the AMIS Reporting Stop
|
---|
8 | ;code to determine which one to use.
|
---|
9 | S IENS=""
|
---|
10 | F S IENS=$O(FDA(810.9001,IENS)) Q:IENS="" D
|
---|
11 | . S STOP=FDA(810.9001,IENS,.01)
|
---|
12 | . S AMIS=FDA(810.9001,IENS,.02)
|
---|
13 | . S IEN=$O(^DIC(40.7,"C",AMIS,""))
|
---|
14 | . S TEMP=$P(^DIC(40.7,IEN,0),U,1)
|
---|
15 | . I TEMP'=STOP D Q
|
---|
16 | .. S TEXT(1)="Name associated with AMIS stop code does not match the one in the"
|
---|
17 | .. S TEXT(2)="packed reminder:"
|
---|
18 | .. S TEXT(3)=" AMIS="_AMIS
|
---|
19 | .. S TEXT(4)=" Site Name="_TEMP
|
---|
20 | .. S TEXT(5)=" Name in packed reminder="_STOP
|
---|
21 | .. D EN^DDIOL(.TEXT)
|
---|
22 | . S FDA(810.9001,IENS,.01)="`"_IEN
|
---|
23 | Q
|
---|
24 | ;
|
---|
25 | ;=========================================================
|
---|
26 | GETIEN(NFOUND,LIST) ;FIND^DIC has found multiple entries with the same name.
|
---|
27 | ;NFOUND is the number found, LIST is the array returned by FIND^DIC.
|
---|
28 | ;Ask the user which one they want to use.
|
---|
29 | N DIR,FN,IND,NC,X,Y
|
---|
30 | S DIR(0)="S^"
|
---|
31 | F IND=1:1:NFOUND D
|
---|
32 | . S DIR(0)=DIR(0)_IND_":"_LIST("DILIST",2,IND)_";"
|
---|
33 | S DIR("L",1)="Select one of the following to use:"
|
---|
34 | S NC=1
|
---|
35 | F IND=1:1:NFOUND D
|
---|
36 | . S NC=NC+1
|
---|
37 | . S DIR("L",NC)=IND_"- "_LIST("DILIST",1,IND)_" IEN="_LIST("DILIST",2,IND)
|
---|
38 | . S FN=$O(LIST("DILIST","ID",IND,""))
|
---|
39 | . I FN="" Q
|
---|
40 | . S NC=NC+1
|
---|
41 | . S DIR("L",NC)=" "_LIST("DILIST","ID",IND,FN)
|
---|
42 | . F S FN=$O(LIST("DILIST","ID",IND,FN)) Q:FN="" D
|
---|
43 | .. I $L(LIST("DILIST","ID",IND,FN))=0 Q
|
---|
44 | .. S NC=NC+1
|
---|
45 | .. S DIR("L",NC)=" "_LIST("DILIST","ID",IND,FN)
|
---|
46 | ;Truncate DIR("L") as required.
|
---|
47 | S DIR("L")=DIR("L",NC) K DIR("L",NC)
|
---|
48 | D ^DIR
|
---|
49 | I Y="^" D
|
---|
50 | . N TEXT
|
---|
51 | . S TEXT(1)="Entering ""^"" tells Reminder Exchange the entry does not exist. You will be"
|
---|
52 | . S TEXT(2)="ask for a replacement."
|
---|
53 | . D EN^DDIOL(.TEXT)
|
---|
54 | Q $S($D(Y(0)):Y(0),1:0)
|
---|
55 | ;
|
---|
56 | ;=========================================================
|
---|
57 | SFNFTC(IEN) ;Set the found/not found text line counts in the reminder
|
---|
58 | ;definition.
|
---|
59 | D SNMLA^PXRMFNFT(IEN)
|
---|
60 | D SNMLF^PXRMFNFT(IEN,20)
|
---|
61 | D SNMLF^PXRMFNFT(IEN,25)
|
---|
62 | D SNMLL^PXRMFNFT(IEN)
|
---|
63 | Q
|
---|
64 | ;
|
---|