[613] | 1 | GMRCPSL4 ;SLC/MA - Special Consult Reports;1/10/02 14:27 ;1/17/02 18:20
|
---|
| 2 | ;;3.0;CONSULT/REQUEST TRACKING;**23,22**;DEC 27, 1997
|
---|
| 3 | ; This routine is called by GMRCPSL2 to generate reports or
|
---|
| 4 | ; date output.
|
---|
| 5 | ; DBIA 10035 call DIQ=2 ;PATIENT FILE
|
---|
| 6 | ; DBIA 10040 call DIQ=44 ;LOCATION FILE
|
---|
| 7 | ; DBIA 10060 call DIQ=200 ;NEW PERSON FILE
|
---|
| 8 | ; DISPLINE = ^GMR(123,,0) + FORMATED 12 NODE
|
---|
| 9 | DATAONLY ; Write data only for user to capture
|
---|
| 10 | N SRT1,SRT2,SRT3,IEN,DISPLINE
|
---|
| 11 | ; DATA LINE = IEN^REQ DATE^PROVIDER^LOCATION^TO SERVICE^
|
---|
| 12 | ; PATIENT^SSN^STATUS^PROCEDURE
|
---|
| 13 | S SRT1="",SRTCOMP=""
|
---|
| 14 | W !,"Consult#^Req Date^Ordering Provider^Location^"
|
---|
| 15 | W "To Service^Patient^SSN^Status^Procedure"
|
---|
| 16 | W !
|
---|
| 17 | F S SRT1=$O(^TMP("GMRCRPT",$J,SRT1)) Q:'$L(SRT1) D
|
---|
| 18 | . S SRT2=0
|
---|
| 19 | . F S SRT2=$O(^TMP("GMRCRPT",$J,SRT1,SRT2)) Q:'SRT2 D
|
---|
| 20 | . . S SRT3=0
|
---|
| 21 | . . F S SRT3=$O(^TMP("GMRCRPT",$J,SRT1,SRT2,SRT3)) Q:'SRT3 D
|
---|
| 22 | . . . S DISPLINE=^TMP("GMRCRPT",$J,SRT1,SRT2,SRT3)
|
---|
| 23 | . . . D DATAMOVE
|
---|
| 24 | Q
|
---|
| 25 | DATAMOVE ; Create the DATA ONLY OUTPUT
|
---|
| 26 | N DATALINE
|
---|
| 27 | S $P(DATALINE,"^",1)=$P(DISPLINE,"|",1) ;IEN
|
---|
| 28 | S $P(DATALINE,"^",2)=$$FMTE^XLFDT($P(DISPLINE,"^",7),"D") ;REQ Date
|
---|
| 29 | ; Provider not Null. If null the must be an IFC record
|
---|
| 30 | I +$P(DISPLINE,"^",14) D
|
---|
| 31 | . S $P(DATALINE,"^",3)=$$GET1^DIQ(200,$P(DISPLINE,"^",14),.01) ;PROVIDER
|
---|
| 32 | ; Provider Null, REMOTE ORDERING PROVIDER not. IFC record
|
---|
| 33 | I '+$P(DISPLINE,"^",14),$P(DISPLINE,"^",24)'="" D
|
---|
| 34 | . S $P(DATALINE,"^",3)=$P(DISPLINE,"^",24) ;PROVIDER
|
---|
| 35 | ;
|
---|
| 36 | ; Patient location not null. If null then must be an IFC record
|
---|
| 37 | I +$P(DISPLINE,"^",4) D
|
---|
| 38 | . S $P(DATALINE,"^",4)=$$GET1^DIQ(44,$P(DISPLINE,"^",4),.01)
|
---|
| 39 | ;
|
---|
| 40 | ; Patient Location null, Ordering Facility not. IFC record
|
---|
| 41 | I '+$P(DISPLINE,"^",4),+$P(DISPLINE,"^",21) D
|
---|
| 42 | . S $P(DATALINE,"^",4)=$$GET1^DIQ(4,$P(DISPLINE,"^",21),.01)
|
---|
| 43 | ;
|
---|
| 44 | ; Patient Location null, Ordering Facility null, Routing Facility not
|
---|
| 45 | ; IFC record
|
---|
| 46 | I '+$P(DISPLINE,"^",4),'+$P(DISPLINE,"^",21),+$P(DISPLINE,"^",23) D
|
---|
| 47 | . S $P(DATALINE,"^",4)=$$GET1^DIQ(4,$P(DISPLINE,"^",23),.01)
|
---|
| 48 | ;
|
---|
| 49 | S $P(DATALINE,"^",5)=$$GET1^DIQ(123.5,$P(DISPLINE,"^",5),.01) ;TO SERVICE
|
---|
| 50 | S $P(DATALINE,"^",6)=$$GET1^DIQ(2,$P(DISPLINE,"^",2),.01) ;PATIENT
|
---|
| 51 | S $P(DATALINE,"^",7)=$E($$GET1^DIQ(2,$P(DISPLINE,"^",2),.09),6,10) ;SSN
|
---|
| 52 | S $P(DATALINE,"^",8)=$$GET1^DIQ(100.01,$P(DISPLINE,"^",12),.1) ;STATUS
|
---|
| 53 | I $P(DISPLINE,"^",8)>"" D
|
---|
| 54 | . S $P(DATALINE,"^",9)=$$GET1^DIQ(123.3,$P($P(DISPLINE,"^",8),";",1),.01) ;PROCEDURE
|
---|
| 55 | W !,DATALINE
|
---|
| 56 | Q
|
---|