Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: GMRCPSL4

GMRCPSL4.m

Go to the documentation of this file.
  1. GMRCPSL4 ;SLC/MA - Special Consult Reports;15-Mar-2012 10:40;PLS
  1. ;;3.0;CONSULT/REQUEST TRACKING;**23,22,1001,1003**;DEC 27, 1997;Build 14
  1. ; This routine is called by GMRCPSL2 to generate reports or
  1. ; date output.
  1. ;Modified - IHS/CIA/MGH - 12/19/2005 - Line DATAONLY+6, DATAMOVE+26 - Code changed to use HRCN instead of SSN
  1. ; DBIA 10035 call DIQ=2 ;PATIENT FILE
  1. ; DBIA 10040 call DIQ=44 ;LOCATION FILE
  1. ; DBIA 10060 call DIQ=200 ;NEW PERSON FILE
  1. ; DISPLINE = ^GMR(123,,0) + FORMATED 12 NODE
  1. DATAONLY ; Write data only for user to capture
  1. N SRT1,SRT2,SRT3,IEN,DISPLINE
  1. ; DATA LINE = IEN^REQ DATE^PROVIDER^LOCATION^TO SERVICE^
  1. ; PATIENT^SSN^STATUS^PROCEDURE
  1. S SRT1="",SRTCOMP=""
  1. W !,"Consult#^Req Date^Ordering Provider^Location^"
  1. ;IHS/CIA/MGH Code change to use HRCN
  1. ;W "To Service^Patient^SSN^Status^Procedure"
  1. W "To Service^Patient^HRCN^Status^Procedure"
  1. W !
  1. F S SRT1=$O(^TMP("GMRCRPT",$J,SRT1)) Q:'$L(SRT1) D
  1. . S SRT2=0
  1. . F S SRT2=$O(^TMP("GMRCRPT",$J,SRT1,SRT2)) Q:'SRT2 D
  1. . . S SRT3=0
  1. . . F S SRT3=$O(^TMP("GMRCRPT",$J,SRT1,SRT2,SRT3)) Q:'SRT3 D
  1. . . . S DISPLINE=^TMP("GMRCRPT",$J,SRT1,SRT2,SRT3)
  1. . . . D DATAMOVE
  1. Q
  1. DATAMOVE ; Create the DATA ONLY OUTPUT
  1. N DATALINE
  1. S $P(DATALINE,"^",1)=$P(DISPLINE,"|",1) ;IEN
  1. S $P(DATALINE,"^",2)=$$FMTE^XLFDT($P(DISPLINE,"^",7),"D") ;REQ Date
  1. ; Provider not Null. If null the must be an IFC record
  1. I +$P(DISPLINE,"^",14) D
  1. . S $P(DATALINE,"^",3)=$$GET1^DIQ(200,$P(DISPLINE,"^",14),.01) ;PROVIDER
  1. ; Provider Null, REMOTE ORDERING PROVIDER not. IFC record
  1. I '+$P(DISPLINE,"^",14),$P(DISPLINE,"^",24)'="" D
  1. . S $P(DATALINE,"^",3)=$P(DISPLINE,"^",24) ;PROVIDER
  1. ;
  1. ; Patient location not null. If null then must be an IFC record
  1. I +$P(DISPLINE,"^",4) D
  1. . S $P(DATALINE,"^",4)=$$GET1^DIQ(44,$P(DISPLINE,"^",4),.01)
  1. ;
  1. ; Patient Location null, Ordering Facility not. IFC record
  1. I '+$P(DISPLINE,"^",4),+$P(DISPLINE,"^",21) D
  1. . S $P(DATALINE,"^",4)=$$GET1^DIQ(4,$P(DISPLINE,"^",21),.01)
  1. ;
  1. ; Patient Location null, Ordering Facility null, Routing Facility not
  1. ; IFC record
  1. I '+$P(DISPLINE,"^",4),'+$P(DISPLINE,"^",21),+$P(DISPLINE,"^",23) D
  1. . S $P(DATALINE,"^",4)=$$GET1^DIQ(4,$P(DISPLINE,"^",23),.01)
  1. ;
  1. S $P(DATALINE,"^",5)=$$GET1^DIQ(123.5,$P(DISPLINE,"^",5),.01) ;TO SERVICE
  1. S $P(DATALINE,"^",6)=$$GET1^DIQ(2,$P(DISPLINE,"^",2),.01) ;PATIENT
  1. ;IHS/CIA/MGH code change to use HRCN
  1. ;S $P(DATALINE,"^",7)=$E($$GET1^DIQ(2,$P(DISPLINE,"^",2),.09),6,10) ;SSN
  1. S $P(DATALINE,"^",7)=$$HRCN^GMRCMP($P(DISPLINE,"^",2),+$G(DUZ(2))) ;HRCN
  1. S $P(DATALINE,"^",8)=$$GET1^DIQ(100.01,$P(DISPLINE,"^",12),.1) ;STATUS
  1. I $P(DISPLINE,"^",8)>"" D
  1. . S $P(DATALINE,"^",9)=$$GET1^DIQ(123.3,$P($P(DISPLINE,"^",8),";",1),.01) ;PROCEDURE
  1. W !,DATALINE
  1. Q