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

BMCRCHS1.m

Go to the documentation of this file.
  1. BMCRCHS1 ; IHS/PHXAO/TMJ - LIST PAID CHS REFERRALS ; 15 Mar 2013 9:02 AM
  1. ;;4.0;REFERRED CARE INFO SYSTEM;**8,9**;JAN 09, 2006;Build 101
  1. ;IHS/ITSC/FCJ ADDED BEG-END DATE REQ FOR REPORT AND RESORT OF DATA
  1. ; ADDED AMT PAID AND RMVD PRIM PRV
  1. ;
  1. ; This routine lists active CHS referrals where all CHS AUTHORIZATIONS
  1. ; have been paid.
  1. ;
  1. START ;
  1. W !!,"This report prints out a list of all active CHS referrals for which all",!,"authorizations have already been paid.",!!
  1. W "Report will include Primary and Secondary Referrals.",!
  1. BD ;GET BEG AND END DATE OF REPORT
  1. D BD^BMCRUTL
  1. G:$D(DIRUT) EOJ1 ;BMC*4.0*8
  1. D INIT
  1. Q:BMCQ
  1. D DBQUE
  1. Q
  1. ;
  1. INIT ; INITIALIZAION
  1. S BMCQ=0
  1. D:$G(BMCPARM)="" PARMSET^BMC
  1. S BMCJOB=$J
  1. F D Q:BMCBT]""
  1. . S BMCBT=$H
  1. . LOCK +^XTMP("BMCRCHS1",BMCJOB,BMCBT):1
  1. . E S BMCBT=""
  1. . Q
  1. K ^XTMP("BMCRCHS1",$J,BMCBT)
  1. Q
  1. ;
  1. DBQUE ;call to XBDBQUE
  1. K BMCOPT
  1. W ! S DIR(0)="S^P:PRINT Output;B:BROWSE Output on Screen",DIR("A")="Do you wish to",DIR("B")="P" K DA D ^DIR K DIR
  1. I $D(DIRUT) S BMCQUIT=1 Q
  1. S BMCOPT=Y
  1. I $G(BMCOPT)="B" D BROWSE Q
  1. S XBRP="REFPRT^BMCRCHS1",XBRC="REFCHK^BMCRCHS1",XBRX="EOJ^BMCRCHS1",XBNS="BMC"
  1. D ^XBDBQUE
  1. Q
  1. ;
  1. BROWSE ;
  1. S XBRP="VIEWR^XBLM(""REFPRT^BMCRCHS1"")"
  1. S XBRC="REFCHK^BMCRCHS1",XBRX="EOJ^BMCRCHS1",XBNS="BMC",XBIOP=0
  1. D ^XBDBQUE
  1. Q
  1. ;
  1. REFCHK ; CHECK ACTIVE/CHS REFERRAL SORTED BY DATE INIT
  1. S BMCODAT=$O(^BMCREF("B",BMCSD)) I BMCODAT="" S BMCET=$H Q
  1. S BMCODAT=BMCSD_".9999" F S BMCODAT=$O(^BMCREF("B",BMCODAT)) Q:BMCODAT=""!((BMCODAT\1)>BMCED) D R1
  1. Q
  1. R1 ;
  1. S BMCRIEN="" F S BMCRIEN=$O(^BMCREF("B",BMCODAT,BMCRIEN)) Q:BMCRIEN'=+BMCRIEN S BMCRREC=^BMCREF(BMCRIEN,0) D PROC
  1. Q
  1. ;
  1. PROC ;
  1. ;Q:$P(BMCRREC,U,15)'="A" ;QUIT IF NOT ACTIVE ;BMC*4.0*9 IHS.OIT.FCJ
  1. Q:($P(BMCRREC,U,15)="C1")!($P(BMCRREC,U,15)="X") ;QUIT IF NOT ACTIVE OR APPROVED ;BMC*4.0*9 IHS.OIT.FCJ
  1. S X=^BMCREF(BMCRIEN,0)
  1. I $P(X,U,4)="C" D S:BMCHIT ^XTMP("BMCRCHS1",BMCJOB,BMCBT,"DATA HITS",BMCRIEN)=""
  1. . S (BMCAUTH,BMCHIT,BMCSKIP)=0
  1. . Q:'$O(^BMCREF(BMCRIEN,41,0)) ; no authorizations
  1. . F S BMCAUTH=$O(^BMCREF(BMCRIEN,41,BMCAUTH)) Q:'BMCAUTH D Q:BMCSKIP
  1. .. S Y=^BMCREF(BMCRIEN,41,BMCAUTH,0)
  1. .. S:$P(Y,U,3)="" BMCSKIP=1 ; no dollars paid
  1. . S:'BMCSKIP BMCHIT=1
  1. Q
  1. ;
  1. REFPRT ; PRINT REFERRALS SELECTED
  1. S $P(BMC80E,"=",80)=""
  1. S $P(BMC80D,"-",80)=""
  1. D REFPRT2
  1. K ^XTMP("BMCRCHS1",BMCJOB,BMCBT)
  1. Q
  1. ;
  1. REFPRT2 ;
  1. S BMCPG=0 D @("HEAD"_(2-($E(IOST,1,2)="C-"))) I '$D(^XTMP("BMCRCHS1",BMCJOB,BMCBT)) W !,"No referrals to report",! D PAUSE^BMC Q
  1. S BMCRIEN=0 K BMCQUIT
  1. F S BMCRIEN=$O(^XTMP("BMCRCHS1",BMCJOB,BMCBT,"DATA HITS",BMCRIEN)) Q:BMCRIEN=""!($D(BMCQUIT)) D PRINT
  1. Q:$D(BMCQUIT)
  1. D PAUSE^BMC
  1. Q
  1. ;
  1. PRINT ;print one referral
  1. S BMCRREC=^BMCREF(BMCRIEN,0)
  1. S Y=BMCRIEN
  1. D ^BMCREF
  1. I $Y>(IOSL-5) D HEAD Q:$D(BMCQUIT)
  1. W $$FMTE^XLFDT($P(BMCRREC,U),"2D")
  1. W ?10,$E(BMCREC("PAT NAME"),1,20)
  1. W ?32,$P(BMCRREC,U,2) W:$G(^BMCREF(BMCRIEN,1)) $P(^BMCREF(BMCRIEN,1),U)
  1. W ?48,$E($$TOFAC^BMC(BMCRIEN),1,20)
  1. S I=0 F S I=$O(^BMCREF(BMCRIEN,41,I)) Q:I'?1N.N W ?69,$J($P(^BMCREF(BMCRIEN,41,I,0),U,3),9,2),!
  1. W !
  1. I '$O(^BMCREF(BMCRIEN,12,0)) Q ; no purpose of referral
  1. ;
  1. K ^UTILITY($J,"W")
  1. F BMCL=0:0 S BMCL=$O(^BMCREF(BMCRIEN,1,BMCL)) Q:'BMCL S X=^(BMCL,0) D
  1. . S DIWL=10,DIWR=70,DIWF="W"
  1. . D ^DIWP
  1. . Q
  1. D ^DIWW
  1. W !
  1. Q
  1. ;
  1. D PAUSE^BMC
  1. I $D(DIRUT) S BMCQUIT="" Q
  1. D HEAD1
  1. Q
  1. ;
  1. HEAD1 ;
  1. W:$D(IOF) @IOF
  1. HEAD2 ; WRITE HEADER
  1. S BMCPG=BMCPG+1
  1. W !?13,"********** CONFIDENTIAL PATIENT INFORMATION **********"
  1. W !?(80-$L($P(^DIC(4,DUZ(2),0),U))/2),$P(^DIC(4,DUZ(2),0),U),?72,"Page ",BMCPG,!
  1. W $$CTR^BMC("ACTIVE CHS REFERRALS WHERE ALL AUTHORIZATIONS PAID",80),!
  1. S Y=BMCBD D DD^%DT W ?17,"BEG DATE: "_Y
  1. S Y=BMCED D DD^%DT W ?40,"END DATE: "_Y,!
  1. W !,"REF DATE",?11,"PATIENT NAME",?32," REF #",?48,"FACILITY REF TO",?70,"AMT PAID"
  1. W !,BMC80D
  1. W !
  1. Q
  1. ;
  1. EOJ ; END OF JOB
  1. LOCK -^XTMP("BMCRCHS1",BMCJOB,BMCBT)
  1. K ^XTMP("BMCRCHS1",BMCJOB,BMCBT)
  1. EOJ1 ;BMC*4.0*8 ADDED LINE LABEL
  1. D ^BMCKILL
  1. K BMC80D,BMC80E,BMCBOS,BMCBT,BMCJOB,BMCCL,BMCOPT,BMCPG,BMCRREC,BMCRSTAT,BMCSKIP
  1. K BMCBD,BMCED,BMCBDD,BMCEDD,BMCSD
  1. Q