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

VPRSDAIB.m

Go to the documentation of this file.
  1. VPRSDAIB ;SLC/MKB,MRY -- Integrated Billing utilities ;10/18/22 14:11
  1. ;;1.0;VIRTUAL PATIENT RECORD;**31**;Sep 01, 2011;Build 3
  1. ;;Per VHA Directive 6402, this routine should not be modified.
  1. ;
  1. ; External References DBIA#
  1. ; ------------------- -----
  1. ; IBBAPI 4419
  1. ;
  1. INQ ; -- Insurance query, creates VPRINS and DLIST arrays
  1. ; Expects DSTRT, DSTOP, DMAX from DDEGET and returns DLIST(#)=ien
  1. N NUM,I,VPRDT,VPRSTS,VPRX,IEN,CNT
  1. S VPRSTS=$G(FILTER("status"),"ARB"),VPRDT=DT,CNT=0
  1. I VPRSTS["A" S VPRDT="" ;no date if requesting inactive policies
  1. S:$G(DFN) NUM=$$INSUR^IBBAPI(DFN,VPRDT,VPRSTS,.VPRX,"*") Q:NUM<1
  1. S I=0 F S I=$O(VPRX("IBBAPI","INSUR",I)) Q:(I<1)!(CNT>=DMAX) D
  1. . I DSTRT,VPRX("IBBAPI","INSUR",I,10)<DSTRT Q ;Effective date
  1. . I DSTOP,VPRX("IBBAPI","INSUR",I,10)>DSTOP Q ;Effective date
  1. . S IEN=+$G(VPRX("IBBAPI","INSUR",I))
  1. . S DLIST(I)=IEN_","_DFN,CNT=CNT+1
  1. M VPRINS=VPRX("IBBAPI","INSUR")
  1. Q
  1. ;
  1. INS1(IEN) ; -- set up one insurance record
  1. ; Returns VPRP = # in VPRINS(#) of current record
  1. N I K VPRP
  1. I '$G(IEN)!'$G(DFN) S DDEOUT=1 Q
  1. I '$D(VPRINS) D ;create VPRINS array if needed
  1. . N NUM,VPRDT,VPRSTS,VPRX
  1. . S VPRDT="",VPRSTS="ARB" ;all policies
  1. . S NUM=$$INSUR^IBBAPI(DFN,VPRDT,VPRSTS,.VPRX,"*")
  1. . I NUM M VPRINS=VPRX("IBBAPI","INSUR")
  1. S I=0 F S I=$O(VPRINS(I)) Q:I<1 I +$G(VPRINS(I))=+IEN S VPRP=I Q
  1. I '$G(VPRP) S DDEOUT=1 Q
  1. Q
  1. ;
  1. DEL ; -- ID Action for Delete entity
  1. ; Expects DIEN, AVPR seq# in FILTER("sequence")
  1. ; Returns VPRIB(#)=data nodes, VPRINS(#)=IBBAPI data elements
  1. N SEQ K VPRIB,VPRINS
  1. S SEQ=+$G(FILTER("sequence"))
  1. I SEQ,$G(DIEN) D
  1. . M VPRIB=^XTMP("VPR-"_SEQ,DIEN)
  1. . S VPRINS(1)=$P($G(VPRIB(0)),"^",1) ;Ins. Comp. ien
  1. . S VPRINS(8)=$P($G(VPRIB(0)),"^",18) ;Policy ien
  1. . S VPRINS(14)=$P($G(VPRIB(7)),"^",2) ;Subscriber ID
  1. Q