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

APCLYV11.m

Go to the documentation of this file.
  1. APCLYV11 ; IHS/CMI/LAB - PRINT APCLCO VIST REPORT (CALC) ;
  1. ;;2.0;IHS PCC SUITE;;MAY 14, 2009
  1. ;
  1. INIT ;initialize variables
  1. S APCLJOB=$J,APCLBT=$H
  1. D XTMP^APCLOSUT("APCLYV1","PCC COMM OFFS VISITS")
  1. S APCLCO=$O(^AUTTBEN("C","03",0)),APCLDEP=$O(^AUTTBEN("C","04",0))
  1. S APCLRET=$O(^AUTTBEN("C","30",0)),APCLRETD=$O(^AUTTBEN("C","31",0))
  1. I APCLCO="" W !!,"CODE 03 NOT IN BENEFICIARY FILE" G END
  1. I APCLDEP="" W !!,"CODE 04 NOT IN BENEFICIARY FILE" G END
  1. I APCLRET="" W !!,"CODE 30 NOT IN BENEFICIARY FILE" G END
  1. I APCLRETD="" W !!,"CODE 31 NOT IN BENEFICIARY FILE" G END
  1. S APCLDEN=$O(^DIC(40.7,"C",56,0)) ;dental clinic stop code
  1. S APCLSD=(9999999-APCLBD)_.2400
  1. ;
  1. MAIN ;
  1. I APCLCO]"" S APCLII=APCLCO D CALC
  1. I APCLDEP]"" S APCLII=APCLDEP D CALC
  1. I APCLRET]"" S APCLII=APCLRET D CALC
  1. I APCLRETD]"" S APCLII=APCLRETD D CALC
  1. END ;
  1. S APCLET=$H
  1. Q
  1. ;
  1. CALC ;find patients and their visits
  1. S APCLPAT=0
  1. PAT S APCLPAT=$O(^AUPNPAT("AD",APCLII,APCLPAT)) Q:APCLPAT=""
  1. G PAT:$$DEMO^APCLUTL(APCLPAT,$G(APCLDEMO))
  1. G PAT:'$D(^AUPNPAT(APCLPAT,41,DUZ(2))) ;must have hrcn at your facility
  1. S APCLHRCN=$P(^AUPNPAT(APCLPAT,41,DUZ(2),0),"^",2)
  1. G PAT:'$D(^DPT(APCLPAT,0)) S APCLNAME=$P(^(0),"^")
  1. ;
  1. S APCLEDT=9999999-APCLED-.0001
  1. VST S APCLEDT=$O(^AUPNVSIT("AA",APCLPAT,APCLEDT)) G PAT:APCLEDT="",PAT:APCLEDT>APCLSD S APCLVDFN=0
  1. VST1 S APCLVDFN=$O(^AUPNVSIT("AA",APCLPAT,APCLEDT,APCLVDFN)) G VST:APCLVDFN=""
  1. G VST1:'$D(^AUPNVSIT(APCLVDFN,0)) S APCLSTR=^(0)
  1. G VST1:$P(APCLSTR,"^",11) ;screen out deleted visits
  1. G VST1:$P(APCLSTR,"^",6)'=DUZ(2) ;screen out visits at other facilities
  1. ;
  1. S APCLVDT=$P(APCLSTR,"^"),X=$P(APCLSTR,"^",7)
  1. I (X'="A")&(X'="H")&(X'="S") G VST1
  1. ;set dental visits
  1. I $P(APCLSTR,"^",8)=APCLDEN,$D(APCLDEN) S ^XTMP("APCLYV1",APCLJOB,APCLBT,"D",APCLII,APCLNAME,APCLPAT,APCLVDT,APCLVDFN)=APCLHRCN G VST1
  1. ;set outpt node
  1. I X'="H",$D(APCLOP) S ^XTMP("APCLYV1",APCLJOB,APCLBT,"O",APCLII,APCLNAME,APCLPAT,APCLVDT,APCLVDFN)=APCLHRCN G VST1
  1. ;set inpt node
  1. G VST1:'$D(APCLIP) S APCLIDFN=$O(^AUPNVINP("AD",APCLVDFN,0)) G VST1:APCLIDFN=""
  1. S APCLDSCH=+^AUPNVINP(APCLIDFN,0)
  1. S ^XTMP("APCLYV1",APCLJOB,APCLBT,"I",APCLII,APCLNAME,APCLPAT,APCLVDT,APCLVDFN)=APCLHRCN_"^"_APCLDSCH G VST1
  1. ;
  1. Q