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

BMCRR41.m

Go to the documentation of this file.
  1. BMCRR41 ; IHS/PHXAO/TMJ - PROCESS REFERRAL LIST ; [ 09/27/2006 2:15 PM ]
  1. ;;4.0;REFERRED CARE INFO SYSTEM;**1**;JAN 09, 2006;Build 101
  1. ;IHS/ITSC/FCJ ADDED TEST FOR SR
  1. ;4.0*1 3.7.06 IHS/OIT/FCJ ADDED ALPHA ORDER FOR PHYS
  1. ;
  1. ;
  1. START ;
  1. S (BMCBT,BMCBTH)=$H,BMCJOB=$J,BMCRCNT=0
  1. D PROCESS,END
  1. Q
  1. ;
  1. PROCESS ;
  1. V ; Run by visit date
  1. S BMCODAT=$O(^AUPNVSIT("B",BMCSD)) I BMCODAT="" S BMCET=$H Q
  1. S BMCODAT=BMCSD_".9999" F S BMCODAT=$O(^AUPNVSIT("B",BMCODAT)) Q:BMCODAT=""!((BMCODAT\1)>BMCED) D V1
  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. ;4.0*1 3.7.06 IHS/OIT/FCJ ADD SECTION TO PRNT ALPHA ORDER FOR PHYS
  1. I BMCTYPE="P",$D(^XTMP("BMCRR4",BMCJOB,BMCBTH,"REFERRALS")) D
  1. .S BMCSORT=0
  1. .F S BMCSORT=$O(^XTMP("BMCRR4",BMCJOB,BMCBTH,"REFERRALS",BMCSORT)) Q:BMCSORT'?1N.N D
  1. ..S ^XTMP("BMCRR4",BMCJOB,BMCBTH,"REFERRALS",$P($G(^VA(200,BMCSORT,0)),U),BMCSORT)=""
  1. ;4.0*1 3.7.06 IHS/OIT/FCJ END OF CHANGES
  1. Q
  1. ;
  1. END ;
  1. S BMCET=$H
  1. Q
  1. V1 ;
  1. S BMCVDFN="" F S BMCVDFN=$O(^AUPNVSIT("B",BMCODAT,BMCVDFN)) Q:BMCVDFN'=+BMCVDFN I $D(^AUPNVSIT(BMCVDFN,0)) S BMCVREC=^(0) D PROCV
  1. Q
  1. ;
  1. R1 ;
  1. S BMCREF="" F S BMCREF=$O(^BMCREF("B",BMCODAT,BMCREF)) Q:BMCREF'=+BMCREF S BMCRREC=^BMCREF(BMCREF,0) D PROCR
  1. Q
  1. PROCR ;
  1. Q:$P(BMCRREC,U,4)="N"
  1. Q:$P(BMCRREC,U,15)="X" ;skip cancelled referrals
  1. Q:$P(BMCRREC,U,6)=""
  1. Q:$P(BMCRREC,U,5)=""
  1. Q:$P($G(^BMCREF(BMCREF,1)),U)'="" ;SKIP SR
  1. S BMCSORT=$S(BMCTYPE="P":$P(BMCRREC,U,6),1:$P(BMCRREC,U,5))
  1. I '$D(^XTMP("BMCRR4",BMCJOB,BMCBTH,"REFERRALS",BMCSORT)) S ^XTMP("BMCRR4",BMCJOB,BMCBTH,"REFERRALS",BMCSORT)=""
  1. S $P(^XTMP("BMCRR4",BMCJOB,BMCBTH,"REFERRALS",BMCSORT),U)=$P(^XTMP("BMCRR4",BMCJOB,BMCBTH,"REFERRALS",BMCSORT),U)+1
  1. ;S $P(^XTMP("BMCRR4",BMCJOB,BMCBTH,"REFERRALS",BMCSORT),U,2)=$P(^XTMP("BMCRR4",BMCJOB,BMCBTH,"REFERRALS",BMCSORT),U,2)+$$AVICOST^BMCRLU(BMCREF)
  1. Q:$P(BMCRREC,U,4)=""
  1. S X=$S($P(BMCRREC,U,4)="I":2,$P(BMCRREC,U,4)="O":3,$P(BMCRREC,U,4)="C":4)
  1. S $P(^XTMP("BMCRR4",BMCJOB,BMCBTH,"REFERRALS",BMCSORT),U,X)=$P(^XTMP("BMCRR4",BMCJOB,BMCBTH,"REFERRALS",BMCSORT),U,X)+1
  1. Q
  1. PROCV ;
  1. Q:'$P(BMCVREC,U,9)
  1. Q:$P(BMCVREC,U,11)
  1. Q:"TCNEDXF"[$P(BMCVREC,U,7)
  1. Q:'$D(^AUPNVPOV("AD",BMCVDFN))
  1. Q:'$D(^AUPNVPRV("AD",BMCVDFN))
  1. Q:"CV"[$P(BMCVREC,U,3)
  1. D @BMCTYPE
  1. Q:BMCSORT="" ;couldn't find fac or provider
  1. S ^(BMCSORT)=$S($D(^XTMP("BMCRR4",BMCJOB,BMCBTH,"PCC VISITS",BMCSORT)):^(BMCSORT)+1,1:1)
  1. Q
  1. F ;
  1. S BMCSORT=$P(BMCVREC,U,6) Q:BMCSORT=""
  1. Q
  1. P ;
  1. S BMC2=0,BMCSORT="" F S BMC2=$O(^AUPNVPRV("AD",BMCVDFN,BMC2)) Q:BMC2="" I $P(^AUPNVPRV(BMC2,0),U,4)="P" S BMCSORT=$P(^(0),U)
  1. ;if pcc converted to file 200 quit
  1. ;if pcc not converted, get 200 pointer from 16 pointer
  1. Q:'BMCSORT
  1. Q:$P(^AUTTSITE(1,0),U,22) ;Test for FILE 200 conversion
  1. S BMCSORT=$G(^DIC(16,BMCSORT,"A3"))
  1. Q