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

BMCFREQ1.m

Go to the documentation of this file.
  1. BMCFREQ1 ; IHS/PHXAO/TMJ - TOP FPR PRCS ;
  1. ;;4.0;REFERRED CARE INFO SYSTEM;;JAN 09, 2006
  1. VISIT ;
  1. S BMCJOB=$J,BMCBT=$H
  1. K ^XTMP("BMCFPR",BMCJOB,BMCBT)
  1. D XTMP^BMCOSUT("BMCFPR","PCC - FREQ PROC")
  1. S %="^XTMP(""BMCFPR"",BMCJOB,BMCBT,",BMCA=%_"""PRC"",BMCPRC)",BMCD=%_"1)",BMCF=%_"3)",BMCTOT=0,BMCVTOT=0,BMCLINO=0,BMCGTOT=0
  1. S BMCDATE=BMCBD-.00001
  1. F S BMCDATE=$O(^BMCREF("B",BMCDATE)) Q:'BMCDATE Q:(BMCDATE\1)>BMCED D
  1. .F BMCVIEN=0:0 S BMCVIEN=$O(^BMCREF("B",BMCDATE,BMCVIEN)) Q:'BMCVIEN S BMCGTOT=BMCGTOT+1 I $D(^BMCREF(BMCVIEN,0)),$D(^BMCPX("AD",BMCVIEN)) D CK
  1. D SET
  1. S BMCET=$H
  1. Q
  1. ;
  1. CK ;
  1. S BMCRREC=^BMCREF(BMCVIEN,0),DFN=$P(BMCRREC,U,3)
  1. Q:$P($G(^BMCREF(BMCVIEN,1)),U)'="" ;IHS/OIT/FCJ SEC REF NOT INCLUDED
  1. S BMCREF=BMCVIEN D SCREENS ;IHS/OIT/FCJ SCREENS USE BMCREF AS REF IEN
  1. D SCREENS
  1. Q:$D(BMCSKIP)
  1. PRC S BMCPRCN="",BMCVTOT=BMCVTOT+1,BMCC=0
  1. F S BMCPRCN=$O(^BMCPX("AD",BMCVIEN,BMCPRCN)) Q:'BMCPRCN Q:'$D(^BMCPX(BMCPRCN,0)) S BMCPRC=+^(0),BMCC=BMCC+1,BMCPREC=^(0) D PRCX
  1. Q
  1. ;
  1. PRCX I '$D(^ICPT($P(BMCPREC,U))) Q
  1. S BMCTOT=BMCTOT+1
  1. F X=BMCA D UTL
  1. Q
  1. ;
  1. UTL ;I X=B,'$D(BMCAPC) Q
  1. I '$D(@X) S @X=0
  1. S %=@X,%=%+1,@X=%
  1. Q
  1. ;
  1. SCREENS ;
  1. K BMCSKIP
  1. S BMCI=0 F S BMCI=$O(^BMCRTMP(BMCRPT,11,BMCI)) Q:BMCI'=+BMCI!($D(BMCSKIP)) D
  1. .I '$P(^BMCTSORT(BMCI,0),U,8) D SINGLE Q
  1. .D MULT
  1. .Q
  1. Q
  1. SINGLE ;
  1. K X,BMCSPEC S X="",BMCX=0
  1. X:$D(^BMCTSORT(BMCI,1)) ^(1)
  1. I X="" S BMCSKIP="" Q
  1. I '$D(BMCSPEC),'$D(^BMCRTMP(BMCRPT,11,BMCI,11,"B",X)) S BMCSKIP="" Q
  1. Q
  1. MULT ;
  1. K BMCFOUN,BMCSKIP,BMCSPEC,X S BMCX=0,X=""
  1. X:$D(^BMCTSORT(BMCI,1)) ^(1)
  1. I $O(X(""))="" S BMCSKIP="" Q
  1. I '$D(BMCSPEC) S Y="" F S Y=$O(X(Y)) Q:Y="" I $D(^BMCRTMP(BMCRPT,11,BMCI,11,"B",Y)) S BMCFOUN="" Q
  1. I $D(BMCSPEC),$D(X) S BMCFOUN=1 Q
  1. S:'$D(BMCFOUN) BMCSKIP=""
  1. Q
  1. SET F BMCPRC=0:0 S BMCPRC=$O(@BMCA) Q:'BMCPRC S %=^(BMCPRC),@BMCD@(9999999-%,BMCPRC)=""
  1. S1 S (X,I)=0 F S X=$O(@BMCD@(X)) Q:'X F Y=0:0 S Y=$O(@BMCD@(X,Y)) Q:'Y S I=I+1,@BMCF@(I)=Y I I=BMCLNO G S3
  1. S3 Q
  1. ;
  1. ;
  1. FF I IOST["P-" W:$D(IOF) @IOF Q
  1. I $E(IOST)="C",IO=IO(0),$Y>(IOSL-4) W ! S DIR(0)="EO" D ^DIR K DIR I Y=0!(Y="^")!($D(DTOUT)) S X="^"
  1. W:$D(IOF) @IOF
  1. Q
  1. ;