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

RMPRPI03.m

Go to the documentation of this file.
  1. RMPRPI03 ;HINCIO/ODJ - PIP Report APIs ;3/8/01
  1. ;;3.0;PROSTHETICS;**61**;Feb 09, 1996
  1. Q
  1. ;
  1. ; THIS - returns a ^TMP array structured as follows:-
  1. ; ^TMP($J,N,H,I,S)=data (^ delimiter)
  1. ;
  1. ; where N = ^TMP array name (eg. RMPRPI03)
  1. ; H = HCPCS code (eg. L5000)
  1. ; A = Item name
  1. ; I = Item number (eg. 1)
  1. ; S = Sequence (1,2,etc)
  1. ;
  1. ; data pc 1 = Date
  1. ; 2 = Time
  1. ; 3 = Opening Balance
  1. ; 4 = Closing Balance
  1. ; 5 = Quantity
  1. ; 6 = Value
  1. ; 7 = Transaction Type desc.
  1. ; 8 = Patient Name (if patient issue, else null)
  1. ; 9 = Patient SSN (if patient issue, else null)
  1. ; 10 = User name
  1. ;
  1. THIS(RMPRNM,RMPRSTN,RMPRSDT,RMPREDT,RMPRHCPC) ;
  1. N RMPRERR,RMPRH,RMPR,RMPROLD,RMPREOF,RMPRE,RMPR11
  1. N RMPROBAL,RMPRCBAL,RMPRSEQ,RMPRRX,RMPRFMDT,RMPR60,RMPR69
  1. N VA,VADM,DFN
  1. S RMPRERR=0
  1. I $G(RMPRNM)="" S RMPRNM="RMPRPI03"
  1. I $G(RMPRSTN)="" S RMPRERR=1 G THISX
  1. I '$D(RMPRHCPC) S RMPRHCPC="*"
  1. K ^TMP($J,RMPRNM)
  1. S RMPRH=""
  1. THIS1 S RMPRH=$O(RMPRHCPC(RMPRH))
  1. I RMPRH="" G THISX
  1. K RMPR
  1. S RMPR("HCPCS")=RMPRH
  1. THIS1A S RMPR("DATE&TIME")=RMPRSDT
  1. S RMPRERR=$$SRCH^RMPRPIXA(.RMPR,"XHDS","DATE&TIME",1,,.RMPREOF)
  1. I RMPRERR G THISX
  1. I RMPREOF G THIS1
  1. I $G(RMPRHCPC)'="*",RMPR("HCPCS")'=RMPRH G THIS1
  1. THIS2 S RMPRERR=$$NEXT^RMPRPIXA(.RMPR,"XHDS","",1,.RMPROLD,.RMPREOF)
  1. I RMPRERR G THISX
  1. I RMPREOF G THISX
  1. I RMPROLD("HCPCS")'=RMPR("HCPCS") G:$G(RMPRHCPC)'="*" THIS1 G THIS1A
  1. I RMPR("DATE")>RMPREDT G:$G(RMPRHCPC)="*" THIS3 G THIS1
  1. S RMPRFMDT=RMPR("DATE")
  1. K RMPRE
  1. M RMPRE=RMPR
  1. S RMPRERR=$$GET^RMPRPIX6(.RMPRE)
  1. I RMPRERR G THISX
  1. S RMPRERR=$$STNIEN^RMPRPIX6(.RMPRE)
  1. I RMPRERR G THISX
  1. I RMPRE("STATION IEN")'=RMPRSTN G THIS2
  1. K RMPR11
  1. S RMPR11("STATION")=RMPRSTN
  1. S RMPR11("HCPCS")=RMPR("HCPCS")
  1. S RMPR11("ITEM")=RMPRE("ITEM")
  1. S RMPRERR=$$GET^RMPRPIX1(.RMPR11)
  1. I '$D(RMPR11("DESCRIPTION")) S RMPR11("DESCRIPTION")="NO DESCRIPTION"
  1. S RMPRSEQ=$O(^TMP($J,RMPRNM,RMPR("HCPCS"),RMPR11("DESCRIPTION"),RMPRE("ITEM"),""),-1)
  1. I RMPRSEQ'="" D
  1. . S RMPROBAL=$P(^TMP($J,RMPRNM,RMPR("HCPCS"),RMPR11("DESCRIPTION"),RMPRE("ITEM"),RMPRSEQ),"^",4)
  1. . Q
  1. E D
  1. . K RMPRRX
  1. . S RMPRRX("STA")=RMPRSTN
  1. . S RMPRRX("HCP")=RMPR("HCPCS")
  1. . S RMPRRX("ITE")=RMPRE("ITEM")
  1. . S RMPRRX("RDT")=RMPRSDT
  1. . S RMPROBAL=$$SQTY^RMPRPIXJ(.RMPRRX)
  1. . Q
  1. S RMPRERR=$$TFLOW^RMPRPIX6(.RMPRE)
  1. I RMPRE("TRAN FLOW")="+" D
  1. . S RMPRCBAL=RMPROBAL+RMPRE("QUANTITY")
  1. . Q
  1. I RMPRE("TRAN FLOW")="-" D
  1. . S RMPRCBAL=RMPROBAL-RMPRE("QUANTITY")
  1. . Q
  1. I RMPRE("TRAN FLOW")="=" D
  1. . K RMPR69
  1. . S RMPR69("TRANS IEN")=RMPRE("IEN")
  1. . S RMPRERR=$$GET^RMPRPIXB(.RMPR69)
  1. . I '$D(RMPR69("GAIN/LOSS")) S (RMPRE("QUANTITY"),RMPRE("VALUE"),RMPROBAL,RMPRCBAL)=0 Q
  1. . S RMPRCBAL=RMPROBAL+RMPR69("GAIN/LOSS")
  1. . S RMPRE("QUANTITY")=RMPR69("GAIN/LOSS")
  1. . S RMPRE("VALUE")=RMPR69("GAIN/LOSS VALUE")
  1. . Q
  1. I RMPRE("TRAN FLOW")="" D
  1. . S RMPRCBAL=RMPROBAL
  1. . Q
  1. S RMPRSTR=""
  1. S $P(RMPRSTR,"^",1)=$E(RMPRFMDT,4,5)_"/"_$E(RMPRFMDT,6,7)_"/"_$E(RMPRFMDT,2,3)
  1. S $P(RMPRSTR,"^",2)=RMPRE("TIME")
  1. S $P(RMPRSTR,"^",3)=RMPROBAL
  1. S $P(RMPRSTR,"^",4)=RMPRCBAL
  1. S $P(RMPRSTR,"^",5)=RMPRE("QUANTITY")
  1. S $P(RMPRSTR,"^",6)=RMPRE("VALUE")
  1. S $P(RMPRSTR,"^",7)=RMPRE("TRAN TYPE")
  1. S $P(RMPRSTR,"^",10)=RMPRE("USER")
  1. K RMPR60
  1. S RMPRERR=$$IEN60^RMPRPIX6(.RMPRE,.RMPR60)
  1. I 'RMPRERR,$G(RMPR60("IEN"))'="" D
  1. . S DFN=$P($G(^RMPR(660,RMPR60("IEN"),0)),"^",2)
  1. . D DEM^VADPT
  1. . S $P(RMPRSTR,"^",8)=$G(VADM(1))
  1. . S $P(RMPRSTR,"^",9)=$P($G(VADM(2)),"^",2)
  1. . Q
  1. S ^TMP($J,RMPRNM,RMPR("HCPCS"),RMPR11("DESCRIPTION"),RMPRE("ITEM"),RMPRSEQ+1)=RMPRSTR
  1. G THIS2
  1. THIS3 S RMPRERR=$$NEXT^RMPRPIXA(.RMPR,"XHDS","HCPCS",1,.RMPROLD,.RMPREOF)
  1. I RMPREOF G THISX
  1. G THIS1A
  1. THISX Q RMPRERR