[613] | 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
|
---|