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

IB20PT8B.m

Go to the documentation of this file.
  1. IB20PT8B ;ALB/CPM - EXPORT ROUTINE 'DGPMVBUR' ; 24-FEB-94
  1. ;;Version 2.0 ; INTEGRATED BILLING ;; 21-MAR-94
  1. ;
  1. DGPMVBUR ;ALB/MIR - UR ADMISSION BULLETIN FOR MCCR ; 13 JUL 91
  1. ;;5.3;Registration;**26**;Aug 13, 1993
  1. ;
  1. UR ;UR bulletin
  1. K DGPMUR
  1. D INS I '$D(DGPMUR(10)) D URQ Q
  1. S DGPMX=$O(^XMB(3.8,"B","DGPM UR ADMISSION",0)) I '$O(^XMB(3.8,+DGPMX,1,0)) K DGPMX D URQ Q ; if no mailgroup members, quit
  1. S XMSUB="UR ADMISSION BULLETIN",XMTEXT="DGPMUR(",DGPMBLN=0
  1. F I=0:0 S I=$O(^XMB(3.8,+DGPMX,1,I)) Q:'I I $D(^(I,0)) S XMY(+^(0))=""
  1. D PID^VADPT6 S DGPMBL="Admission for : "_$P(^DPT(DFN,0),"^",1)_" "_VA("PID") D SETLN
  1. S Y=+DGPMA X ^DD("DD") S DGPMBL="Date/Time : "_Y D SETLN
  1. S DGPMBL="Type of Admit : "_$S($D(^DG(405.1,+$P(DGPMA,"^",4),0)):$P(^(0),"^",1),1:"") D SETLN
  1. S DGPMBL=" " D SETLN
  1. S DGPMBL="Ward Location : "_$S($D(^DIC(42,+$P(DGPMA,"^",6),0)):$P(^(0),"^",1),1:"UNKNOWN") D SETLN
  1. S DGPMBL="Room-Bed : "_$S($D(^DG(405.4,+$P(DGPMA,"^",7),0)):$P(^(0),"^",1),1:"UNKNOWN") D SETLN
  1. S DGPMBL="Admitting DX : "_$P(DGPMA,"^",10) D SETLN
  1. S DGPMBL=" " D SETLN
  1. S DGPMBLN=DGPMLAST D DIS ;SC disabilities
  1. D ^XMD
  1. URQ K DGPMBL,DGPMBLN,DGPMLAST,DGPMUR,DGTMP,XMY,XMSUB,XMTEXT
  1. K %,%Y,DGPMOB,DGPMOW,DGPMX,I,X,X1,X2,Y,DGIBINS
  1. Q
  1. ;
  1. INS ;get insurance effective at time of admission, start at DGPMBLN=10
  1. S DGPMBLN=9
  1. K DGIBINS
  1. D ALL^IBCNS1(DFN,"DGIBINS") F I=0:0 S I=$O(DGIBINS(I)) Q:'I S X=DGIBINS(I,0) D ACT
  1. I $D(DGPMUR(10)) S DGPMLAST=DGPMBLN
  1. Q
  1. ;
  1. ACT ;is insurance active? If so, set in DGPMBLN array
  1. I $P(X,"^",4)<+DGPMA,$P(X,"^",4) Q ;insurance expired before admission
  1. I $P(X,"^",8)>+DGPMA Q ;insurance effective after admission
  1. Q:'$D(^DIC(36,+X,0)) S X1=^(0),X2=$S($D(^(.13)):^(.13),1:"") ;get insurance company information
  1. I $P(X1,"^",5)!($P(X1,"^",2)="N") Q ;insurance company is inactive or doesn't reimburse
  1. S DGPMBL="Insurance Co. : "_$P(X1,"^",1) D SETLN
  1. S DGTMP=$S(($P(X,"^",15)]""):$P(X,"^",15),1:$P(X,"^",3))
  1. I DGTMP]"" S DGPMBL="Group : "_DGTMP D SETLN
  1. S DGPMBL="Policy Holder : "_$P(X,"^",17) D SETLN
  1. S DGPMBL="Subscriber ID : "_$P(X,"^",2) D SETLN
  1. S DGPMBL="Ins. Co Phone# : "_$S($P(X2,"^",2)]"":$P(X2,"^",2),$P(X2,"^",1)]"":$P(X2,"^",1),1:"UNKNOWN") D SETLN
  1. S DGPMBL=" " D SETLN
  1. Q
  1. DIS ;rated disabilities
  1. I $S('$D(^DPT(DFN,.3)):1,$P(^(.3),"^",1)'="Y":1,1:"") Q ;not service connected...
  1. I $S('$D(^DPT(DFN,"VET")):1,$P(^("VET"),"^",1)'="Y":1,1:0),$S('$D(^DG(391,+$S($D(^DPT(DFN,"TYPE")):^("TYPE"),1:""),0)):1,$P(^(0),"^",2):0,1:1) Q
  1. ;X=0 node, X1=already one SC disability?
  1. S X1=0 F I=0:0 S I=$O(^DPT(DFN,.372,I)) Q:'I I $D(^(I,0)) S X=^(0) I $P(X,"^",3)&$D(^DIC(31,+X,0)) S DGPMBL=$S('X1:"SC Disabilities: ",1:" ")_$P(^(0),"^",1)_" ("_+$P(X,"^",2)_"%)" S X1=1 D SETLN
  1. Q
  1. SETLN ; -- set line in xmtext array
  1. S DGPMBLN=DGPMBLN+1
  1. S DGPMUR(DGPMBLN)=DGPMBL
  1. Q