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

ABMDRCO1.m

Go to the documentation of this file.
  1. ABMDRCO1 ; IHS/ASDST/DMJ - PRINT CO VIST REPORT (CALC) ;
  1. ;;2.6;IHS 3P BILLING SYSTEM;;NOV 12, 2009
  1. ;Original;TMD;
  1. ;
  1. INIT ;EP - initialize variables
  1. S ABMD("CO")=$O(^AUTTBEN("C","03",0)),ABMD("DEP")=$O(^AUTTBEN("C","04",0))
  1. S ABMD("RET")=$O(^AUTTBEN("C","30",0)),ABMD("RTD")=$O(^AUTTBEN("C","31",0))
  1. I ABMD("CO")="" W !!,"CODE 03 NOT IN BENEFICIARY FILE"
  1. I ABMD("DEP")="" W !!,"CODE 04 NOT IN BENEFICIARY FILE"
  1. I ABMD("RET")="" W !!,"CODE 30 NOT IN BENEFICIARY FILE"
  1. I ABMD("RTD")="" W !!,"CODE 31 NOT IN BENEFICIARY FILE"
  1. S ABMD("DEN")=$O(^DIC(40.7,"C",56,0)) ;dental clinic stop code
  1. S ABMD("RBDT")=(9999999-ABMD("BDT"))_.2400
  1. Q
  1. ;
  1. MAIN ;
  1. I ABMD("CO")]"" S ABMD("II")=ABMD("CO") D CALC
  1. I ABMD("DEP")]"" S ABMD("II")=ABMD("DEP") D CALC
  1. I ABMD("RET")]"" S ABMD("II")=ABMD("RET") D CALC
  1. I ABMD("RTD")]"" S ABMD("II")=ABMD("RTD") D CALC
  1. Q
  1. ;
  1. CALC ;find patients and their visits
  1. S ABMD("DFN")=0
  1. PAT ;must have hrcn at your facility
  1. S ABMD("DFN")=$O(^AUPNPAT("AD",ABMD("II"),ABMD("DFN"))) Q:ABMD("DFN")=""
  1. G PAT:'$D(^AUPNPAT(ABMD("DFN"),41,DUZ(2))) S ABMD("HRCN")=$P(^(DUZ(2),0),"^",2)
  1. G PAT:'$D(^DPT(ABMD("DFN"),0)) S ABMD("NAME")=$P(^(0),"^")
  1. ;
  1. S ABMD("REDT")=9999999-ABMD("EDT")-.0001
  1. VST S ABMD("REDT")=$O(^AUPNVSIT("AA",ABMD("DFN"),ABMD("REDT"))) G PAT:ABMD("REDT")="",PAT:ABMD("REDT")>ABMD("RBDT") S ABMD("VDFN")=0
  1. VST1 S ABMD("VDFN")=$O(^AUPNVSIT("AA",ABMD("DFN"),ABMD("REDT"),ABMD("VDFN"))) G VST:ABMD("VDFN")=""
  1. G VST1:'$D(^AUPNVSIT(ABMD("VDFN"),0)) S ABMD("STR")=^(0)
  1. G VST1:$P(ABMD("STR"),"^",11)'="" ;screen out deleted visits
  1. G VST1:$P(ABMD("STR"),"^",6)'=DUZ(2) ;screen out visits at other facilities
  1. ;
  1. S ABMD("VDT")=$P(ABMD("STR"),"^"),X=$P(ABMD("STR"),"^",7)
  1. I (X'="A")&(X'="H")&(X'="S") G VST1
  1. ;set dental visits
  1. I $P(ABMD("STR"),"^",8)=ABMD("DEN"),$D(ABMD("TDEN")) S ^TMP("ABMDRCO",ABMD("$J"),"D",ABMD("II"),ABMD("NAME"),ABMD("DFN"),ABMD("VDT"),ABMD("VDFN"))=ABMD("HRCN") G VST1
  1. ;set outpt node
  1. I X'="H",$D(ABMD("TOP")) S ^TMP("ABMDRCO",ABMD("$J"),"O",ABMD("II"),ABMD("NAME"),ABMD("DFN"),ABMD("VDT"),ABMD("VDFN"))=ABMD("HRCN") G VST1
  1. ;set inpt node
  1. G VST1:'$D(ABMD("TIP")) S ABMD("IDFN")=$O(^AUPNVINP("AD",ABMD("VDFN"),0)) G VST1:ABMD("IDFN")=""
  1. S ABMD("DSCH")=+^AUPNVINP(ABMD("IDFN"),0)
  1. S ^TMP("ABMDRCO",ABMD("$J"),"I",ABMD("II"),ABMD("NAME"),ABMD("DFN"),ABMD("VDT"),ABMD("VDFN"))=ABMD("HRCN")_"^"_ABMD("DSCH") G VST1
  1. Q