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

IBTUTL2.m

Go to the documentation of this file.
  1. IBTUTL2 ;ALB/AAS - CLAIMS TRACKING UTILITY ROUTINE ; 21-JUN-93
  1. ;;Version 2.0 ; INTEGRATED BILLING ;; 21-MAR-94
  1. ;;Per VHA Directive 10-93-142, this routine should not be modified.
  1. ;
  1. ADDR(IBTRVDT,IBTRN) ; -- add new entry to reviews file, ibt(356.1
  1. ; -- Input IBTRVDT := Review date (in internal fileman format)
  1. ; IBTRN := pointer to tracking module
  1. ;
  1. N %DT,DD,DO,DIC,DR,DIE,DLAYGO
  1. S DIC="^IBT(356.1,",DIC(0)="L",DLAYGO=356.1
  1. S DIC("DR")=".02////"_IBTRN
  1. S X=IBTRVDT D FILE^DICN
  1. S IBTRV=+Y,IBNEW=1
  1. ADDRQ Q
  1. ;
  1. PRE(IBTRVDT,IBTRN,IBX) ; -- add a review
  1. ; -- Input IBTRVDT := Review date (in internal fileman format)
  1. ; IBTRN := pointer to tracking module
  1. ; IBX := code for review
  1. ;
  1. N X,Y,DA,DR,DIE,DIC,IBXIFN,IBNRVDT,IBDAYS
  1. D ADDR(IBTRVDT,IBTRN)
  1. I IBTRV<1 G PREQ
  1. ;
  1. ; -- don't differentiate between scheduled and unscheduled
  1. I IBX=10!(IBX=20) S IBX=15 ; just admission review
  1. ;
  1. S IBDAYS=$S(IBX=15:1,1:$$RDAY^IBTRV31(IBTRN))
  1. S:'$G(IBX) IBX=30 S IBXIFN=$O(^IBE(356.11,"ACODE",IBX,0))
  1. ;S X1=IBTRVDT,X2=$S(IBX=15:3,1:"") I X2 D C^%DTC S IBNRVDT=X
  1. S DA=IBTRV,DIE="^IBT(356.1,"
  1. L +^IBT(356.1,+IBTRV):10 I '$T G PREQ
  1. S DR=".19////1;.03////^S X=$G(IBDAYS);.2////^S X=$$NXTRVDT^IBTRV31(IBTRV);.21////1;.22////"_IBXIFN_";1.01///NOW;1.02////"_DUZ
  1. D ^DIE K DA,DR,DIE
  1. L -^IBT(356.1,+IBTRV)
  1. PREQ Q
  1. ;
  1. SCH(DFN,IBTDT,IBSCH) ; -- add scheduled admission entries
  1. ; -- input dfn := patient pointer to 2
  1. ; ibtdt := episode date
  1. ;
  1. N X,Y,DA,DR,DIE,DIC
  1. ;S IBETYP=+$O(^IBE(356.6,"B","SCHEDULED ADMISSION",0))
  1. S IBETYP=+$O(^IBE(356.6,"AC",5,0)) ;scheduled admission type
  1. S X=$O(^IBT(356,"APTY",DFN,IBETYP,IBTDT,0)) I X S IBTRN=X G SCHQ
  1. D ADDT^IBTUTL
  1. I IBTRN<1 G SCHQ
  1. S DA=IBTRN,DIE="^IBT(356,"
  1. I '$G(IBSCH) S X=0 F S X=$O(^DGS(41.1,"B",DFN,X)) Q:'X I $P(^DGS(41.1,+X,0),"^",2)=IBTDT S IBSCH=X Q
  1. L +^IBT(356,+IBTRN):5 I '$T G SCHQ
  1. S DR=$$ADMDR^IBTUTL(IBTDT,IBETYP,"",0)
  1. I $G(IBSCH) S DR=DR_";.32////"_IBSCH
  1. D ^DIE K DA,DR,DIE
  1. L -^IBT(356,+IBTRN)
  1. ;
  1. ; -- add required ins. action if insured
  1. I $P(^IBT(356,IBTRN,0),U,24) D COM^IBTUTL3(IBTDT,IBTRN,10)
  1. SCHQ Q