1 | RMPRHL7B ;HINES/HNC - Process order parameters set file 668 ;3-21-00
|
---|
2 | ;;3.0;PROSTHETICS;**45,52,62,78**;Feb 09, 1996
|
---|
3 | ;
|
---|
4 | ; ODJ - patch 52 - 10/13/00 - remove leading blank lines from
|
---|
5 | ; consult text
|
---|
6 | ; RVD - patch 62 - update ICD9 field from the HL7 message.
|
---|
7 | ; TH - patch 78 - 09/26/03 - update ICD9 codes, value for each SC and
|
---|
8 | ; EI.
|
---|
9 | ;
|
---|
10 | NEW ;Create new suspense
|
---|
11 | ;
|
---|
12 | ;RMPRO=^RMPR(668,IFN, the new file number in file ^RMPR(668,
|
---|
13 | ;RMPRORFN=OE/RR file number (pointer to Order file)
|
---|
14 | ;RMPRWARD=ward patient is on
|
---|
15 | ;RMPRSS=type of consult
|
---|
16 | ;RMPRAD=date/time of request
|
---|
17 | ;RMPRPRI=procedure/request
|
---|
18 | ;RMPRURGI=urgency POINTER 101 TO FREE T
|
---|
19 | ;RMPRORNP=patient's ordering provider
|
---|
20 | ;RMPRTYPE=request type (request or consult)
|
---|
21 | ;RMPRSBR=service rendered on what basis (Inpatient, or Outpatient)
|
---|
22 | ;RMPRRFQ=reason for request array - word processing fields
|
---|
23 | ;RMPRPRDG=provisional DX
|
---|
24 | ;RMPRPRCD=provisional DX code
|
---|
25 | ;
|
---|
26 | ;
|
---|
27 | ;next 4 lines added by patch #62
|
---|
28 | S RMPRIECD=""
|
---|
29 | I $D(RMPRPRCD),RMPRPRCD'="" D
|
---|
30 | .S RMPRIECD=$O(^ICD9("BA",RMPRPRCD,0))
|
---|
31 | .I '$G(RMPRIECD) S RMPRIECD=$O(^ICD9("BA",RMPRPRCD_" ",0))
|
---|
32 | ; next 5 lines added by patch #78
|
---|
33 | ; override previous Provisional Diagnosis code with first BA code
|
---|
34 | I $D(RMPRMSG1(1,1)) S RMPRPRCD=$$GET1^DIQ(80,RMPRMSG1(1,1)_",",.01),RMPRIECD=RMPRMSG1(1,1)
|
---|
35 | I '$G(RMPRIECD) D
|
---|
36 | . N RMLP F RMLP=2:1:4 I $D(RMPRMSG1(RMLP,1)) S RMPRPRCD=$$GET1^DIQ(RMPRMSG1(RMLP,1)_",",.01),RMPRIECD=RMPRMSG1(RMLP,1) Q
|
---|
37 | ;
|
---|
38 | N DIC,DLAYGO,X,DR,DIE
|
---|
39 | S DIC="^RMPR(668,",DIC(0)="L",X="""N""",DLAYGO=668 D ^DIC K DLAYGO Q:Y<1
|
---|
40 | S (DA,RMPRO)=+Y,DIE=DIC
|
---|
41 | ;
|
---|
42 | L +^RMPR(668,RMPRO)
|
---|
43 | ; .01-Suspense date;22-Date RX written
|
---|
44 | S DR=".01////^S X=RMPRAD;22////^S X=RMPRAD"
|
---|
45 | ; 1-Veteran;19-CPRS order #;2-station;9-Type or request;2.3-Urgency
|
---|
46 | ; 30-Consult Visit#
|
---|
47 | S DR=DR_";1////^S X=DFN;19////^S X=RMPRORFN;2////^S X=RMPRFAC;9////^S X=RMPRSS;2.3////^S X=RMPRURGI;30////^S X=VISIT"
|
---|
48 | D ^DIE
|
---|
49 | ;
|
---|
50 | ; 8-Suspense by (ordering provider);14-Status (O=Open);
|
---|
51 | ; 3-Suspense form (9=for other);13-Requestor (ordering provider)
|
---|
52 | ; 1.5-Provisional Diagnosis;1.6-ICD9
|
---|
53 | S DR="8////^S X=RMPRORNP;14////^S X=""O"";3////^S X=9;13////^S X=RMPRORNP;1.5////^S X=$G(RMPRPRDG);1.6////^S X=$G(RMPRIECD)"
|
---|
54 | D ^DIE
|
---|
55 | ;
|
---|
56 | ; Patch 78: Update ICD9 and value of each SC and EI.
|
---|
57 | S RMPRMAX=8 ; ao - cv
|
---|
58 | F RMPRI=1:1:99 Q:'$D(RMPRMSG1(RMPRI)) S DR="" D
|
---|
59 | . F RMPRJ=1:1:RMPRMAX S RMVALUE=$G(RMPRMSG1(RMPRI,RMPRJ)) D
|
---|
60 | . . S DR=DR_"3"_(RMPRI-1)_$S(RMPRJ>1:"."_(RMPRJ-1),1:"")_"////^S X="
|
---|
61 | . . S DR=DR_$S(RMVALUE="":"""""",1:RMVALUE)_$S(RMPRJ<RMPRMAX:";",1:"")
|
---|
62 | . . D ^DIE
|
---|
63 | ; following lines deleted by WLC 05/24/04
|
---|
64 | ; New BA Phase II modifications for multiples
|
---|
65 | ;S RMPRMAX=8
|
---|
66 | ;F RMPRI=1:1:99 Q:'$D(RMPRMSG1(RMPRI)) K FDA D
|
---|
67 | ;. S FDA(668.02,"+"_RMPRI_","_RMPRO_",",.01)=RMPRMSG1(RMPRI,1)
|
---|
68 | ;. F RMPRJ=2:1:RMPRMAX S RMVALUE=$G(RMPRMSG1(RMPRI,RMPRJ)) D
|
---|
69 | ;. . S FDA(668.02,"+"_RMPRI_","_RMPRO_",","30."_RMPRJ)=RMVALUE
|
---|
70 | ;. S DIE=668.02
|
---|
71 | ;. D UPDATE^DIE(,"FDA") I $D(^TMP("DIERR",$J))
|
---|
72 | ;K FDA
|
---|
73 | ;
|
---|
74 | I $O(RMPRRFQ(0)) D REASON
|
---|
75 | L -^RMPR(668,RMPRO)
|
---|
76 | ;
|
---|
77 | D REASON
|
---|
78 | D EXIT
|
---|
79 | Q
|
---|
80 | REASON ;load the reason for request into description of item field 4
|
---|
81 | ;^RMPR(668,D0,2,D1,0)
|
---|
82 | ;
|
---|
83 | N RMPRC
|
---|
84 | S ^RMPR(668,RMPRO,2,0)="^^^"_$S($D(RMPRDA):RMPRDA,1:DT)_"^"
|
---|
85 | S RMPRL=0,RMPRLN=0
|
---|
86 | F S RMPRL=$O(RMPRRFQ(RMPRL)) Q:RMPRL="" D
|
---|
87 | . I 'RMPRLN D Q:RMPRC="" ;strip leading space from 1st line, ignore blank line
|
---|
88 | .. S RMPRC=$E($TR(RMPRRFQ(RMPRL)," ","")) ;1st non space char
|
---|
89 | .. S:RMPRC'="" RMPRRFQ(RMPRL)=$E(RMPRRFQ(RMPRL),$F(RMPRRFQ(RMPRL),RMPRC)-1,$L(RMPRRFQ(RMPRL))) ;extract from 1st non space char to end of line
|
---|
90 | .. Q
|
---|
91 | . S RMPRLN=RMPRLN+1,^RMPR(668,RMPRO,2,RMPRLN,0)=RMPRRFQ(RMPRL)
|
---|
92 | . Q
|
---|
93 | S $P(^RMPR(668,RMPRO,2,0),"^",3)=RMPRLN
|
---|
94 | K RMPRL,RMPRLN
|
---|
95 | Q
|
---|
96 | ;
|
---|
97 | EXIT ;common exit
|
---|
98 | K DA,DIC,DIE,DR,RMPRORTX
|
---|
99 | K RMPRI,RMPRJ,RMPRMAX,RMVALUE,RMPRMSG1,RMPRPRCD,RMPRIECD
|
---|
100 | Q
|
---|
101 | ;END
|
---|