| [613] | 1 | IBTRC3 ;ALB/AAS - CLAIMS TRAINING INS. REV DEFAULTS ; 29-SEP-93
 | 
|---|
 | 2 |  ;;Version 2.0 ; INTEGRATED BILLING ;; 21-MAR-94
 | 
|---|
 | 3 |  ;;Per VHA Directive 10-93-142, this routine should not be modified.
 | 
|---|
 | 4 |  ;
 | 
|---|
 | 5 | LAST(IBTRN,IBTRC) ; -- return last insurance review
 | 
|---|
 | 6 |  ; -- Input  IBTRN  = claims tracking id
 | 
|---|
 | 7 |  ;           IBTRC  = ins. review being edited (option)
 | 
|---|
 | 8 |  ;                    (if hip is defined for ibtrc will use last review
 | 
|---|
 | 9 |  ;                     for that policy)
 | 
|---|
 | 10 |  ;
 | 
|---|
 | 11 |  N X,Y,IBHIP,IBQUIT
 | 
|---|
 | 12 |  S Y="",IBQUIT=0
 | 
|---|
 | 13 |  I '$G(IBTRN) G LASTQ
 | 
|---|
 | 14 |  S IBHIP=$P($G(^IBT(356.2,+$G(IBTRC),1)),"^",5)
 | 
|---|
 | 15 |  S X=-$G(^IBT(356.2,+IBTRC,0)) F  S X=$O(^IBT(356.2,"ATIDT",IBTRN,X)) Q:'X!(IBQUIT)  D
 | 
|---|
 | 16 |  .S Y="" F  S Y=$O(^IBT(356.2,"ATIDT",IBTRN,X,Y)) Q:'Y!('IBHIP)  D  Q:IBQUIT
 | 
|---|
 | 17 |  ..I $P($G(^IBT(356.2,+Y,1)),"^",5)=IBHIP S IBQUIT=1 Q
 | 
|---|
 | 18 | LASTQ Q $S(+Y<1:"",Y:Y,1:"")
 | 
|---|
 | 19 |  ;
 | 
|---|
 | 20 | HIP(IBTRC) ; -- compute default health insurance policy for claims tracking
 | 
|---|
 | 21 |  ; -- called by trigger on patient field (.05) of file 356.2
 | 
|---|
 | 22 |  ; -- output pointer to subfile (2.312)^insurnace co name
 | 
|---|
 | 23 |  N X,IBDD,IBINDT,DFN
 | 
|---|
 | 24 |  S X=""
 | 
|---|
 | 25 |  S DFN=$P($G(^IBT(356.2,+$G(IBTRC),0)),"^",5)
 | 
|---|
 | 26 |  G:'DFN HIPQ
 | 
|---|
 | 27 |  S IBINDT=$S($P($G(^IBT(356,+$P($G(^IBT(356.2,+IBTRC,0)),U,2),0)),U,6):$P(^(0),U,6),1:DT)
 | 
|---|
 | 28 |  D ALL^IBCNS1(DFN,"IBDD",1,IBINDT)
 | 
|---|
 | 29 |  I $G(IBDD(0))=1 S X=+$O(IBDD(0))
 | 
|---|
 | 30 |  ;
 | 
|---|
 | 31 |  ; -- if more than one look for primary
 | 
|---|
 | 32 |  I 'X,$G(IBDD(0))>1 D
 | 
|---|
 | 33 |  .S IBX=0
 | 
|---|
 | 34 |  .F  S IBX=$O(IBDD(IBX)) Q:'IBX  I $P($G(IBDD(IBX,0)),"^",20)=1 S X=IBX Q
 | 
|---|
 | 35 |  I X S X=X_"^"_$P($G(^DIC(36,+$G(IBDD(X,0)),0)),"^")
 | 
|---|
 | 36 | HIPQ Q X
 | 
|---|
 | 37 |  ;
 | 
|---|
 | 38 | HIPD(DA,IBTLST) ; -- compute default health insurance policy from last review
 | 
|---|
 | 39 |  ; -- called from input templates
 | 
|---|
 | 40 |  ;    input da     = current entry being edited
 | 
|---|
 | 41 |  ;          ibtlst = last entry for this review as determine by $$LAST
 | 
|---|
 | 42 |  ;
 | 
|---|
 | 43 |  N X,DFN
 | 
|---|
 | 44 |  S X="" I $P($G(^IBT(356.2,DA,1)),"^",5) G HIPDQ
 | 
|---|
 | 45 |  G:'$G(IBTLST) HIPDQ
 | 
|---|
 | 46 |  S X=$P($G(^IBT(356.2,+IBTLST,1)),"^",5),DFN=$P(^(0),"^",5)
 | 
|---|
 | 47 | HIPDQ Q $S(+X<1:"",1:$P($G(^DIC(36,+$G(^DPT(DFN,.312,X,0)),0)),"^",1))
 | 
|---|
 | 48 |  ;
 | 
|---|
 | 49 | PC(DA,IBTLST) ; -- compute default person contacted from last review
 | 
|---|
 | 50 |  ; -- called from input templates
 | 
|---|
 | 51 |  ;    input da     = current entry being edited
 | 
|---|
 | 52 |  ;          ibtlst = last entry for this review as determine by $$LAST
 | 
|---|
 | 53 |  ;
 | 
|---|
 | 54 |  Q $P($G(^IBT(356.2,+$G(IBTLST),0)),"^",6)
 | 
|---|
 | 55 |  ;
 | 
|---|
 | 56 | MC(DA,IBTLST) ; -- compute default method of contact from last review
 | 
|---|
 | 57 |  ; -- called from input templates
 | 
|---|
 | 58 |  ;    input da     = current entry being edited
 | 
|---|
 | 59 |  ;
 | 
|---|
 | 60 |  ;          ibtlst = last entry for this review as determine by $$LAST
 | 
|---|
 | 61 |  ;
 | 
|---|
 | 62 |  N X
 | 
|---|
 | 63 |  S X=$P($G(^IBT(356.2,+$G(IBTLST),0)),"^",17)
 | 
|---|
 | 64 |  Q $S(+X>0:$$EXPAND^IBTRE(356.2,.17,X),1:"PHONE")
 | 
|---|
 | 65 |  ;
 | 
|---|
 | 66 | CP(DA,IBTLST) ; -- compute default contact phone number from last review
 | 
|---|
 | 67 |  ; -- called from input templates
 | 
|---|
 | 68 |  ;    input da     = current entry being edited
 | 
|---|
 | 69 |  ;          ibtlst = last entry for this review as determine by $$LAST
 | 
|---|
 | 70 |  ;
 | 
|---|
 | 71 |  Q $P($G(^IBT(356.2,+$G(IBTLST),0)),"^",7)
 | 
|---|
 | 72 |  ;
 | 
|---|
 | 73 | AN(DA,IBTLST) ; -- compute default authorization number policy
 | 
|---|
 | 74 |  ; -- called from input templates
 | 
|---|
 | 75 |  ;    input da     = current entry being edited
 | 
|---|
 | 76 |  ;          ibtlst = last entry for this review as determine by $$LAST
 | 
|---|
 | 77 |  N X
 | 
|---|
 | 78 |  S X=$P(^IBT(356.2,DA,0),"^",9)
 | 
|---|
 | 79 |  Q $E($S($L(X):X,1:$P($G(^IBT(356.2,+$G(IBTLST),0)),"^",28)),1,10)
 | 
|---|
 | 80 |  ;
 | 
|---|
 | 81 | APPEAL ; -- called from IBTRC, needed more room to compute
 | 
|---|
 | 82 |  ;    info if an appeal
 | 
|---|
 | 83 |  N DAYS S DAYS=""
 | 
|---|
 | 84 |  S X=$$SETFLD^VALM1($$EXPAND^IBTRE(356.2,.29,$P(IBTRCD,"^",29)),X,"ACTION")
 | 
|---|
 | 85 |  S DAYS=$P(IBTRCD,"^",25) I $P(IBTRCD,"^",29)=1,$P(IBTRCD,"^",10)=3,$O(^IBT(356.2,+IBTRC,14,0)) S DAYS=$$AP^IBTODD1(IBTRC)
 | 
|---|
 | 86 |  S X=$$SETFLD^VALM1($J(DAYS,3),X,"DAYS")
 | 
|---|
 | 87 |  S X=$$SETFLD^VALM1($$TPE(),X,"TYPE")
 | 
|---|
 | 88 |  Q
 | 
|---|
 | 89 |  ;
 | 
|---|
 | 90 | TPE() ; -- add appeal type to type of action
 | 
|---|
 | 91 |  N X
 | 
|---|
 | 92 |  S X=$P(IBETYP,"^",3)
 | 
|---|
 | 93 |  I $P(IBTRCD,"^",23) S X=X_"-"_$S($P(IBTRCD,"^",23)=1:"Clin",$P(IBTRCD,"^",23)=2:"Admin",1:"")
 | 
|---|
 | 94 |  Q X
 | 
|---|