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

ABSPOSNC.m

Go to the documentation of this file.
  1. ABSPOSNC ; IHS/FCS/DRS - PHARmacy POS interface query from without ;
  1. ;;1.0;PHARMACY POINT OF SALE;*40*;JUN 21, 2001;Build 38
  1. ;Target audience: the ANMC Nightly Checker
  1. ; Also, charge entry (At least at Sitka)
  1. ; May also be Ud by RXE,PAY option
  1. ; and who knows what else?
  1. Q
  1. ;
  1. VMEDPAID(VMEDIEN) ; $$VMEDPAID^ABSPOSNC(pointer to V MEDICATION)
  1. ; Returns TruthValueResult^PSRX ien^remarks
  1. ; True result I claim was paid (and not reversed)
  1. ; False result I claim was no paid (or was paid and reversed)
  1. ;
  1. I VMEDIEN'?1.10N Q "0^^invalid VMEDIEN argument"
  1. N RXIEN S RXIEN=$O(^PSRX("APCC",VMEDIEN,0))
  1. I 'RXIEN Q "0^^VMEDIEN not found in PSRX(""APCC"" INDEX"
  1. Q $$RXPAID(RXIEN)
  1. ;
  1. RXPAID(RXI,RXR) ;EP - $$RXPAID^ABSPOSNC(pointer to 9002313.59 or to 52)
  1. ; Returns: as desribed above F VMEDPAID
  1. ; First, compute IEN59
  1. N IEN59,RETVAL
  1. I RXI["." D
  1. . S IEN59=RXI
  1. . N X S X=$P(IEN59,".",2)
  1. . I $E(X,$L(X))'=1 D Q ; think through postage, supplies later
  1. . . D IMPOSS^ABSPOSUE("P","TI","postage/supplies not supported yet",,"RXPAID",$T(+0))
  1. . S X=$E(X,1,$L(X)-1) ; remove trailing 1 - should leave RXR
  1. . S RETVAL="0^"_$P(IEN59,".")_","_X
  1. E D
  1. . I '$D(RXR) S RXR=$$RXRDEF^ABSPOSRX(RXI)
  1. . S IEN59=$$IEN59^ABSPOSRX(RXI,RXR)
  1. . S RETVAL="0^"_RXI_","_RXR
  1. ; Now, find out what happened to it.
  1. I $D(^ABSPT(IEN59,0)) D
  1. . I $P($G(^ABSPT(IEN59,3)),U,2) D
  1. . . S $P(RETVAL,U,3)="Canceled"
  1. . E I '$P(^ABSPT(IEN59,0),U,4) D
  1. . . S $P(RETVAL,U,3)="No POS claim sent"
  1. . E I '$P(^ABSPT(IEN59,0),U,5) D
  1. . . S $P(RETVAL,U,3)="No POS response received"
  1. . E D ; yes, we did get a claim-response cycle
  1. . . N X D RESPINFO^ABSPOSQ4(IEN59,.X)
  1. . . ;IHS/OIT/CNI/SCR 08/17/10 patch 40 avoid undefined error START
  1. . . ;S $P(RETVAL,U,3)=X("RSP")
  1. . . S $P(RETVAL,U,3)=$G(X("RSP"))
  1. . . Q:'$G(X("RSP"))
  1. . . ;IHS/OIT/CNI/SCR 08/17/10 patch 40 avoid undefined error END
  1. . . I X("RSP")="Payable" S $P(RETVAL,U)=1
  1. . . I X("RSP")="Captured" S $P(RETVAL,U)=1 ; 03/13/2001
  1. . . I X("RSP")="Rejected reversal" S $P(RETVAL,U)=1
  1. E D
  1. . S $P(RETVAL,U,3)="No POS record of prescription"
  1. Q RETVAL