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

BWGRVL1.m

Go to the documentation of this file.
  1. BWGRVL1 ; IHS/CMI/LAB - PROCESS VISIT LIST ;15-Feb-2003 21:52;PLS
  1. ;;2.0;WOMEN'S HEALTH;**6,8**;MAY 16, 1996
  1. ;
  1. ;
  1. ;
  1. START ;
  1. S (BWGRBT,BWGRBTH)=$H,BWGRJOB=$J,BWGRRCNT=0
  1. D XTMP^BWGRVLU("BWGRVL","WH GENERAL RETRIEVAL")
  1. D @BWGRTYPE,END
  1. Q
  1. ;
  1. RP ;run with search template of patients, visit gen
  1. S X1=BWGRBD,X2=-1 D C^%DTC S BWGRSD=X
  1. S BWGRODAT=BWGRSD_".9999" F S BWGRODAT=$O(^BWPCD("D",BWGRODAT)) Q:BWGRODAT=""!((BWGRODAT\1)>BWGRED) D VP1
  1. Q
  1. VP1 ;
  1. S BWGRVIEN="" F S BWGRVIEN=$O(^BWPCD("D",BWGRODAT,BWGRVIEN)) Q:BWGRVIEN'=+BWGRVIEN I $D(^BWPCD(BWGRVIEN,0)) S DFN=$P(^BWPCD(BWGRVIEN,0),U,2) D
  1. .Q:'$D(^DIBT(BWGRSEAT,1,DFN)) ;quit if patient not in search template
  1. .D PROC
  1. .Q
  1. Q
  1. VV ;run by search template
  1. S BWGRVIEN=0 F S BWGRVIEN=$O(^DIBT(BWGRSEAT,1,BWGRVIEN)) Q:BWGRVIEN'=+BWGRVIEN I $D(^BWPCD(BWGRVIEN,0)) D
  1. .S X=$P($P(^BWPCD(BWGRVIEN,0),U),".")
  1. .Q:X>BWGRED
  1. .Q:X<BWGRBD
  1. .D PROC
  1. .Q
  1. Q
  1. RS ; Run by visit date
  1. S X1=BWGRBD,X2=-1 D C^%DTC S BWGRSD=X
  1. S BWGRODAT=BWGRSD_".9999" F S BWGRODAT=$O(^BWPCD("D",BWGRODAT)) Q:BWGRODAT=""!((BWGRODAT\1)>BWGRED) D V1
  1. Q
  1. ;
  1. PP ;
  1. S BWGRVIEN=0 F S BWGRVIEN=$O(^BWP(BWGRVIEN)) Q:BWGRVIEN'=+BWGRVIEN D PROC
  1. Q
  1. ;
  1. PS ;
  1. S BWGRVIEN=0 F S BWGRVIEN=$O(^DIBT(BWGRSEAT,1,BWGRVIEN)) Q:BWGRVIEN'=+BWGRVIEN I $D(^BWP(BWGRVIEN,0)) D PROC
  1. Q
  1. ;
  1. ;
  1. END ;
  1. S BWGRET=$H
  1. Q
  1. V1 ;
  1. S BWGRVIEN="" F S BWGRVIEN=$O(^BWPCD("D",BWGRODAT,BWGRVIEN)) Q:BWGRVIEN'=+BWGRVIEN I $D(^BWPCD(BWGRVIEN,0)) D PROC
  1. Q
  1. PROC ;
  1. K BWGRSPEC,BWGRVREC,BWGRPREC,DFN
  1. I BWGRPTVS="R" S BWGRVREC=^BWPCD(BWGRVIEN,0),DFN=$P(BWGRVREC,U,2)
  1. I BWGRPTVS="P" S DFN=BWGRVIEN,BWGRVREC=""
  1. S BWGRPREC=^BWP(DFN,0)
  1. D SCREENS
  1. Q:$D(BWGRSKIP)
  1. K BWGRSRT,BWGRPRNT S BWGRCRIT=BWGRSORT,BWGRX=0
  1. X:$D(^BWGRI(BWGRSORT,4)) ^BWGRI(BWGRSORT,4) I '$D(BWGRPRNT) D
  1. . I BWGRPTVS="R" S Y=$P($P(BWGRVREC,U),".") S BWGRPRNT=Y Q
  1. . S BWGRPRNT=$P(^DPT(DFN,0),U)
  1. .Q
  1. S BWGRSRT=BWGRPRNT
  1. D SUBPAT
  1. S ^XTMP("BWGRVL",BWGRJOB,BWGRBTH,"DATA HITS",BWGRSRT,BWGRVIEN)="",BWGRRCNT=BWGRRCNT+1
  1. Q:$D(^XTMP("BWGRVL",BWGRJOB,BWGRBTH,"PATIENTS",DFN))
  1. S ^XTMP("BWGRVL",BWGRJOB,BWGRBTH,"PATIENTS",DFN)="",BWGRPTCT=BWGRPTCT+1
  1. Q
  1. SUBPAT ;tally # of patients by sort value on detailed/subtotal
  1. Q:BWGRCTYP="C"
  1. Q:BWGRCTYP="F"
  1. Q:BWGRCTYP="T"
  1. S:$G(BWGRSRT)="" BWGRSRT="????"
  1. Q:$D(^XTMP("BWGRVL",BWGRJOB,BWGRBTH,"SUB PATIENT HIT",BWGRSRT,DFN))
  1. S:'$D(^XTMP("BWGRVL",BWGRJOB,BWGRBTH,"SUB PAT COUNT",BWGRSRT)) ^XTMP("BWGRVL",BWGRJOB,BWGRBTH,"SUB PAT COUNT",BWGRSRT)=0
  1. S ^XTMP("BWGRVL",BWGRJOB,BWGRBTH,"SUB PAT COUNT",BWGRSRT)=^XTMP("BWGRVL",BWGRJOB,BWGRBTH,"SUB PAT COUNT",BWGRSRT)+1
  1. Q:$D(^XTMP("BWGRVL",BWGRJOB,BWGRBTH,"SUB PATIENT HIT",BWGRSRT,DFN))
  1. S ^XTMP("BWGRVL",BWGRJOB,BWGRBTH,"SUB PATIENT HIT",BWGRSRT,DFN)=""
  1. Q
  1. SCREENS ;
  1. K BWGRSKIP
  1. S BWGRI=0 F S BWGRI=$O(^BWGRTRPT(BWGRRPT,11,BWGRI)) Q:BWGRI'=+BWGRI!($D(BWGRSKIP)) D
  1. .I '$P(^BWGRI(BWGRI,0),U,8) D SINGLE Q
  1. .D MULT
  1. .Q
  1. Q
  1. SINGLE ;
  1. K X,BWGRSPEC S X="",BWGRX=0
  1. X:$D(^BWGRI(BWGRI,1)) ^(1)
  1. I X="" S BWGRSKIP="" Q
  1. I '$D(BWGRSPEC),'$D(^BWGRTRPT(BWGRRPT,11,BWGRI,11,"B",X)) S BWGRSKIP="" Q
  1. Q
  1. MULT ;
  1. K BWGRFOUN,BWGRSKIP,BWGRSPEC,X S BWGRX=0,X=""
  1. X:$D(^BWGRI(BWGRI,1)) ^(1)
  1. I $O(X(""))="" S BWGRSKIP="" Q
  1. I '$D(BWGRSPEC) S Y="" F S Y=$O(X(Y)) Q:Y="" I $D(^BWGRTRPT(BWGRRPT,11,BWGRI,11,"B",Y)) S BWGRFOUN="" Q
  1. I $D(BWGRSPEC),$G(X) S BWGRFOUN=1 Q
  1. S:'$D(BWGRFOUN) BWGRSKIP=""
  1. Q
  1. XIT ;EP - CALLED FROM BWGRVL
  1. D EN^XBVK("BWGR"),EN^XBVK("AMQQ"),EN^XBVK("AUPN")
  1. XIT1 ;EP
  1. K BWGRANS,BWGRBTH,BWGRC,BWGRCNT,BWGRCRIT,BWGRCUT,BWGRD,BWGRDISP,BWGRDONE,BWGRHIGH,BWGRI,BWGRJOB,BWGRQMAN,BWGRSEL,BWGRTEXT,BWGRVAR,BWGRSKIP,BWGRPRNT,BWGRPRNM,BWGRLINE,BWGRRCNT,BWGRSCNT,BWGRDFET,BWGRY,DFN
  1. K X,X1,X2,IO("Q"),%,Y,POP,DIRUT,ZTSK,ZTQUEUED,H,S,TS,M,ZTIO,DUOUT,DIR,DTOUT,V,Z,I,DIC,DIK,DIADD,DLAYGO,DA,DR,DIE,DIU,AMQQTAX,DINUM,BWGRPACK,BWGREP1,BWGREP2,D,BWGRLENG,BWGRLHDR,BWGRSAVE,AMQQND
  1. Q