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

ABMM2PV7.m

Go to the documentation of this file.
  1. ABMM2PV7 ;IHS/SD/SDR - MU Patient Volume EP Report ; 12 Feb 2014 3:32 PM
  1. ;;2.6;IHS 3P BILLING SYSTEM;**11,12,15**;NOV 12, 2009;Build 251
  1. ;IHS/SD/SDR - 2.6*15 - HEAT161159 - Changed PT LST to sort differently so there won't be duplicate vsts on pt lst. Also added record indicator.
  1. ;IHS/SD/SDR - 2.6*15 - HEAT157235 - Code change to stop <UNDEF>ENROLL+39^ABMM2PV7
  1. ;IHS/SD/SDR - 2.6*15 - HEAT157688 - Code change to stop <UNDEF>OTHRVST+1^ABMM2PV7
  1. ;IHS/SD/SDR - 2.6*15 - HEAT156874 - Code for <SUBSCR>PTDATA+16^ABMM2PV7. Occurs when no patient on visit.
  1. ;IHS/SD/SDR - 2.6*15 - HEAT183289 - Added tribal self-insured counters.
  1. ;
  1. ZEROPD ;EP
  1. K ABMTRAMT
  1. I ABMY("RTYP")="GRP" D Q
  1. .D CALCDTS^ABMM2PV1
  1. .S ABMDTFLG=0
  1. .S ABMP("BDT")=ABMP("BSDT")
  1. .F D Q:ABMDTFLG=1
  1. ..S ^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD BILLS",ABMP("BDT"),ABMGRP,ABMVDFN,ABMP("BDFN"))=""
  1. ..S ^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD DET",ABMP("BDT"),ABMGRP,ABMVDFN,ABMP("BDFN"))=""
  1. ..S ^XTMP("ABM-PVP2",$J,"PRV-VST",ABMP("BDT"),ABMVDFN)=""
  1. ..I ABMITYP="D"!($D(ABMI("INS",ABMINS))) S ^XTMP("ABM-PVP2",$J,"VISITS",ABMVDFN)=1
  1. ..E S ^XTMP("ABM-PVP2",$J,"VISITS",ABMVDFN)=2
  1. ..I ABMY("RTYP")="GRP" D GPTDATA
  1. ..I ABMY("RTYP")="SEL" D PTDATA
  1. ..S X1=ABMP("BDT")
  1. ..S X2=1
  1. ..D C^%DTC
  1. ..I X>ABMP("BEDT") S ABMDTFLG=1 Q
  1. ..S ABMP("BDT")=X
  1. ;
  1. S ABMPIEN=0
  1. K ABMPRVC
  1. F S ABMPIEN=$O(^AUPNVPRV("AD",ABMVDFN,ABMPIEN)) Q:'ABMPIEN D
  1. .S ABMPRV=$$GET1^DIQ(9000010.06,ABMPIEN,".01","I")
  1. .Q:'$D(ABMPRVDR(ABMPRV))
  1. .;skip prv if on vst >1
  1. .Q:$D(ABMPRVC(ABMPRV))
  1. .S ABMPRVC(ABMPRV)=1
  1. .D CALCDTS^ABMM2PV1
  1. .S ABMDTFLG=0
  1. .S ABMP("BDT")=ABMP("BSDT")
  1. .F D Q:ABMDTFLG=1
  1. ..S ^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD BILLS",ABMP("BDT"),ABMPRV,ABMGRP,ABMVDFN,ABMP("BDFN"))=""
  1. ..S ^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD DET",ABMP("BDT"),ABMGRP,ABMVDFN,ABMP("BDFN"))=""
  1. ..S ^XTMP("ABM-PVP2",$J,"PRV-VST",ABMP("BDT"),ABMVDFN,ABMPRV)=""
  1. ..I ABMITYP="D"!($D(ABMI("INS",ABMINS))) S ^XTMP("ABM-PVP2",$J,"VISITS",ABMVDFN)=1
  1. ..E S ^XTMP("ABM-PVP2",$J,"VISITS",ABMVDFN)=2
  1. ..;I ABMY("RTYP")="GRP" D GPTDATA
  1. ..I ABMY("RTYP")="SEL" D PTDATA
  1. ..S X1=ABMP("BDT")
  1. ..S X2=1
  1. ..D C^%DTC
  1. ..I X>ABMP("BEDT") S ABMDTFLG=1 Q
  1. ..S ABMP("BDT")=X
  1. Q
  1. GRPBILL ;EP
  1. ;S ABMBILLF=1 ;abm*2.6*15
  1. D CALCDTS^ABMM2PV1
  1. S ABMDTFLG=0
  1. S ABMP("BDT")=ABMP("BSDT")
  1. F D Q:ABMDTFLG=1
  1. .S ^XTMP("ABM-PVP2",$J,"PRV-NUM PD BILLS",ABMP("BDT"),ABMGRP,ABMVDFN,ABMP("BDFN"))=""
  1. .S ^XTMP("ABM-PVP2",$J,"PRV-NUM PD DET",ABMP("BDT"),ABMGRP,ABMVDFN,ABMP("BDFN"))=ABMTRAMT
  1. .;S ABMBILLF=1 ;abm*2.6*15
  1. .S ^XTMP("ABM-PVP2",$J,"PRV ENC CNT",ABMP("BDT"),ABMVLOC,ABMGRP)=+$G(^XTMP("ABM-PVP2",$J,"PRV ENC CNT",ABMP("BDT"),ABMVLOC,ABMGRP))+1
  1. .S ^XTMP("ABM-PVP2",$J,"PRV ENC CNT",ABMP("BDT"),ABMGRP)=+$G(^XTMP("ABM-PVP2",$J,"PRV ENC CNT",ABMP("BDT"),ABMGRP))+1
  1. .S ^XTMP("ABM-PVP2",$J,"PRV-VST",ABMP("BDT"),ABMVDFN)=""
  1. .I ABMITYP="D"!($D(ABMI("INS",ABMINS))) S ABMBILLF=1,^XTMP("ABM-PVP2",$J,"VISITS",ABMVDFN)=1
  1. .I (ABMCNT#1000&(IOST["C")) W "."
  1. .S ABMCNT=+$G(ABMCNT)+1
  1. .D GPTDATA
  1. .S X1=ABMP("BDT")
  1. .S X2=1
  1. .D C^%DTC
  1. .I X>ABMP("BEDT") S ABMDTFLG=1 Q
  1. .S ABMP("BDT")=X
  1. S DUZ(2)=ABMHOLD
  1. I +$G(ABMFOUND)=1 D GRPOTHVS ;chk for other vsts on DOS to mark as pd
  1. Q
  1. GRPOTHVS ;EP
  1. S ABMDOS=ABMP("VDT")
  1. F S ABMDOS=$O(^XTMP("ABM-PVP2",$J,"PT VSTS",ABMPT,ABMDOS)) Q:'ABMDOS!($P(ABMDOS,".")>$P(ABMDOSSV,".")) D
  1. .S ABMVCHK=0
  1. .F S ABMVCHK=$O(^XTMP("ABM-PVP2",$J,"PT VSTS",ABMPT,ABMDOS,ABMVCHK)) Q:'ABMVCHK D
  1. ..Q:^XTMP("ABM-PVP2",$J,"VISITS",ABMVCHK)=1 ;already cnted this vst
  1. ..D CALCDTS^ABMM2PV1
  1. ..S ABMDTFLG=0
  1. ..S ABMP("BDT")=ABMP("BSDT")
  1. ..F D Q:ABMDTFLG=1
  1. ...S ^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"))=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT")))+1
  1. ...S ^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMVLOC)=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMVLOC))+1
  1. ...S ^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMGRP)=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMGRP))+1
  1. ...S ^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMVLOC,ABMGRP)=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMVLOC,ABMGRP))+1
  1. ...I (ABMCNT#1000&(IOST["C")) W "."
  1. ...S ABMCNT=+$G(ABMCNT)+1
  1. ...S ABMVSAVE=ABMVDFN
  1. ...S ABMVDFN=ABMVCHK
  1. ...D GPTDATA
  1. ...S ABMVDFN=ABMVSAVE
  1. ...S X1=ABMP("BDT")
  1. ...S X2=1
  1. ...D C^%DTC
  1. ...I X>ABMP("BEDT") S ABMDTFLG=1 Q
  1. ...S ABMP("BDT")=X
  1. ..S ^XTMP("ABM-PVP2",$J,"VISITS",ABMVCHK)=1
  1. Q
  1. OTHERVST ;EP
  1. S (ABMDOS,ABMDOSSV)=$P($G(^ABMDBILL(DUZ(2),ABMP("BDFN"),7)),U) ;abm*2.6*15 HEAT157688
  1. F S ABMDOS=$O(^XTMP("ABM-PVP2",$J,"PT VSTS",ABMPT,ABMDOS)) Q:'ABMDOS!($P(ABMDOS,".")>$P(ABMDOSSV,".")) D
  1. .S ABMVCHK=0
  1. .F S ABMVCHK=$O(^XTMP("ABM-PVP2",$J,"PT VSTS",ABMPT,ABMDOS,ABMVCHK)) Q:'ABMVCHK D
  1. ..Q:(ABMVDFN=ABMVCHK)
  1. ..Q:^XTMP("ABM-PVP2",$J,"VISITS",ABMVCHK)=1 ;already cnted this vst
  1. ..;Q:^XTMP("ABM-PVP2",$J,"VISITS",ABMVCHK)=2 ;already cnted this vst
  1. ..S ABMPIEN=0
  1. ..K ABMPRVC
  1. ..F S ABMPIEN=$O(^AUPNVPRV("AD",ABMVCHK,ABMPIEN)) Q:'ABMPIEN D
  1. ...S ABMPRV=$$GET1^DIQ(9000010.06,ABMPIEN,.01,"I")
  1. ...Q:'$D(ABMPRVDR(ABMPRV))
  1. ...;skip prv if on vst >1
  1. ...Q:$D(ABMPRVC(ABMPRV))
  1. ...S ABMPRVC(ABMPRV)=1
  1. ...D CALCDTS^ABMM2PV1
  1. ...S ABMDTFLG=0
  1. ...S ABMP("BDT")=ABMP("BSDT")
  1. ...F D Q:ABMDTFLG=1
  1. ....I $D(^XTMP("ABM-PVP2",$J,"PRV-VST",ABMP("BDT"),ABMVCHK,ABMPRV)) S ABMDTFLG=1 Q
  1. ....S ^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMPRV)=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMPRV))+1
  1. ....S ^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMPRV,ABMVLOC)=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMPRV,ABMVLOC))+1
  1. ....S ^XTMP("ABM-PVP2",$J,"VISITS",ABMVCHK)=1
  1. ....S ^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMGRP)=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMGRP))+1
  1. ....I ABMY("RTYP")="GRP" D GPTDATA
  1. ....I ABMY("RTYP")="SEL" D PTDATA
  1. ....S X1=ABMP("BDT")
  1. ....S X2=1
  1. ....D C^%DTC
  1. ....I X>ABMDOS S ABMDTFLG=1 Q
  1. ....S ABMP("BDT")=X
  1. Q
  1. GPTDATA ;EP
  1. D GPTDATA^ABMM2P11 ;abm*2.6*15 split routine due to size
  1. Q
  1. PTDATA ;EP
  1. D PTDATA^ABMM2P11 ;abm*2.6*15 split routine due to size
  1. Q
  1. ENROLL ;EP
  1. K ABMBILLN,ABMTRAMT,ABMTRIEN,ABMDX,ABMITYP,ABMP("VDFN"),ABMINS
  1. K ABMABILN,ABMADJT,ABMARACT,ABMCBAMT,ABMTRIEN,ABMTRTYP,ABMOINS,ABMPNM,ABMSAV,ABMVLOC,ABMPT,ABMDX,ABMDXIEN,ABMDXPRI
  1. S ABMVDFN=0
  1. F S ABMVDFN=$O(^XTMP("ABM-PVP2",$J,"VISITS",ABMVDFN)) Q:'ABMVDFN D
  1. .K ABMRIND ;abm*2.6*15 HEAT161159
  1. .Q:(+$G(^XTMP("ABM-PVP2",$J,"VISITS",ABMVDFN))=1) ;MCD/CHIP bill was found for vst
  1. .K ABML
  1. .S ABMPT=$$GET1^DIQ(9000010,ABMVDFN,".05","I")
  1. .S (ABMP("VDT"),ABMVDT,ABMSDT)=$P($$GET1^DIQ(9000010,ABMVDFN,".01","I"),".")
  1. .S ABMVLOC=$$GET1^DIQ(9000010,ABMVDFN,".06","I")
  1. .S ABMNPI=$S($P($$NPI^XUSNPI("Organization_ID",ABMVLOC),U)>0:$P($$NPI^XUSNPI("Organization_ID",ABMVLOC),U),1:"") ;abm*2.6*15 added
  1. .S ABMTIN=$$GET1^DIQ(9999999.06,ABMVLOC,".21","E") ;abm*2.6*15 added
  1. .;
  1. .D ELIG^ABMM2PV8
  1. .;
  1. .I ABMY("RTYP")="GRP" D GENROLL Q
  1. .K ABMPRVC
  1. .S ABMPIEN=0
  1. .F S ABMPIEN=$O(^AUPNVPRV("AD",ABMVDFN,ABMPIEN)) Q:'ABMPIEN D
  1. ..S ABMPRV=$$GET1^DIQ(9000010.06,ABMPIEN,.01,"I")
  1. ..Q:'$D(ABMPRVDR(ABMPRV))
  1. ..Q:$D(ABMPRVC(ABMPRV))
  1. ..S ABMPRVC(ABMPRV)=1
  1. ..D CALCDTS^ABMM2PV1
  1. ..S ABMDTFLG=0
  1. ..S ABMP("BDT")=ABMP("BSDT")
  1. ..F D Q:ABMDTFLG=1
  1. ...I ABMP("VDT")<ABMP("BSDT") S ABMDTFLG=1 Q ;vst is before 90-day window
  1. ...;start new abm*2.6*15 uncomp care
  1. ...I '$D(ABML) D
  1. ....S ^XTMP("ABM-PVP2",$J,"PRV-NUM UNCOMP",ABMP("BDT"),ABMPRV,"UNCOMP")=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM UNCOMP",ABMP("BDT"),ABMPRV,"UNCOMP"))+1
  1. ....S ^XTMP("ABM-PVP2",$J,"PRV-NUM UNCOMP",ABMP("BDT"),ABMPRV,ABMVLOC,"UNCOMP")=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM UNCOMP",ABMP("BDT"),ABMPRV,ABMVLOC,"UNCOMP"))+1
  1. ....S ^XTMP("ABM-PVP2",$J,"PRV-NUM UNCOMP",ABMP("BDT"),ABMPRV,ABMVLOC)=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM UNCOMP",ABMP("BDT"),ABMPRV,ABMVLOC))+1
  1. ...;end new abm*2.6*15
  1. ...I (+$G(ABML("MCD"))=0&(+$G(ABML("CHIP"))=0))&(+$G(ABML("OTHR"))=1) D
  1. ....Q:+$G(^XTMP("ABM-PVP2",$J,"VISITS",ABMVDFN))=2 ;counted as pd; cnting here would be duplicate
  1. ....S ^XTMP("ABM-PVP2",$J,"PRV-NUM OELIG",ABMP("BDT"),ABMPRV,ABMGRP)=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM OELIG",ABMP("BDT"),ABMPRV,ABMGRP))+1
  1. ....S ^XTMP("ABM-PVP2",$J,"PRV-NUM OELIG",ABMP("BDT"),ABMPRV,ABMVLOC,ABMGRP)=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM OELIG",ABMP("BDT"),ABMPRV,ABMVLOC,ABMGRP))+1
  1. ....S ^XTMP("ABM-PVP2",$J,"PRV-NUM OELIG",ABMP("BDT"),ABMGRP,ABMVLOC)=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM OELIG",ABMP("BDT"),ABMGRP,ABMVLOC))+1
  1. ....S ^XTMP("ABM-PVP2",$J,"PRV-NUM OELIG",ABMP("BDT"),ABMGRP)=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM OELIG",ABMP("BDT"),ABMGRP))+1
  1. ....S ^XTMP("ABM-PVP2",$J,"TEST","ENR",ABMP("BDT"),ABMVDFN)=""
  1. ...I (+$G(ABML("MCD"))=1!(+$G(ABML("CHIP"))=1)) D
  1. ....F ABMGRP="MCD","CHIP" D
  1. .....I +$G(ABML(ABMGRP))'=1 Q
  1. .....I ABMGRP="MCD",((+$G(ABML("MCD"))=1)&(+$G(ABML("CHIP"))=1)) Q
  1. .....I +$G(^XTMP("ABM-PVP2",$J,"VISITS",ABMVDFN))=2 D
  1. ......;start old abm*2.6*15 HEAT157235
  1. ......;I $D(^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD",ABMP("BDT"))) D
  1. ......;.S ^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD",ABMP("BDT"),ABMPRV,ABMVLOC,"OTHR")=^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD",ABMP("BDT"),ABMPRV,ABMVLOC,"OTHR")-1
  1. ......;.S ^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD",ABMP("BDT"),ABMPRV,"OTHR")=^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD",ABMP("BDT"),ABMPRV,"OTHR")-1
  1. ......;I '$D(^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD",ABMP("BDT"))) D
  1. ......;.S ^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMPRV,ABMVLOC,"OTHR")=^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMPRV,ABMVLOC,"OTHR")-1
  1. ......;.S ^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMPRV,"OTHR")=^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMPRV,"OTHR")-1
  1. ......;end old start new HEAT157235
  1. ......I $D(^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD",ABMP("BDT"))) D
  1. .......S ^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD",ABMP("BDT"),ABMPRV,ABMVLOC,"OTHR")=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD",ABMP("BDT"),ABMPRV,ABMVLOC,"OTHR"))-1
  1. .......S ^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD",ABMP("BDT"),ABMPRV,"OTHR")=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD",ABMP("BDT"),ABMPRV,"OTHR"))-1
  1. ......I '$D(^XTMP("ABM-PVP2",$J,"PRV-NUM ZEROPD",ABMP("BDT"))) D
  1. .......S ^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMPRV,ABMVLOC,"OTHR")=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMPRV,ABMVLOC,"OTHR"))-1
  1. .......S ^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMPRV,"OTHR")=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM PD",ABMP("BDT"),ABMPRV,"OTHR"))-1
  1. ......;end new HEAT157235
  1. .....;start new abm*2.6*15 HEAT161159
  1. .....S ABMINS=0
  1. .....F S ABMINS=$O(ABMILST(ABMINS)) Q:'ABMINS D
  1. ......I ABMGRP="MCD"!(ABMGRP="CHIP")!($D(ABMI("INS",ABMINS))) S ABMRIND="ENR"
  1. .....;end new HEAT161159
  1. .....S ^XTMP("ABM-PVP2",$J,"PRV ENC CNT",ABMP("BDT"),ABMPRV,ABMVLOC,ABMGRP)=+$G(^XTMP("ABM-PVP2",$J,"PRV ENC CNT",ABMP("BDT"),ABMPRV,ABMVLOC,ABMGRP))+1
  1. .....S ^XTMP("ABM-PVP2",$J,"PRV ENC CNT",ABMP("BDT"),ABMPRV,ABMGRP)=+$G(^XTMP("ABM-PVP2",$J,"PRV ENC CNT",ABMP("BDT"),ABMPRV,ABMGRP))+1
  1. .....S ^XTMP("ABM-PVP2",$J,"PRV-NUM ENR",ABMP("BDT"),ABMPRV,ABMGRP)=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM ENR",ABMP("BDT"),ABMPRV,ABMGRP))+1
  1. .....S ^XTMP("ABM-PVP2",$J,"PRV ENC CNT",ABMP("BDT"),ABMPRV,ABMGRP)=+$G(^XTMP("ABM-PVP2",$J,"PRV ENC CNT",ABMP("BDT"),ABMPRV,ABMGRP))+1
  1. .....S ^XTMP("ABM-PVP2",$J,"PRV-NUM ENR",ABMP("BDT"),ABMPRV,ABMVLOC,ABMGRP)=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM ENR",ABMP("BDT"),ABMPRV,ABMVLOC,ABMGRP))+1
  1. .....S ^XTMP("ABM-PVP2",$J,"PRV-NUM ENR",ABMP("BDT"),ABMGRP,ABMVLOC)=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM ENR",ABMP("BDT"),ABMGRP,ABMVLOC))+1
  1. .....S ^XTMP("ABM-PVP2",$J,"PRV-NUM ENR",ABMP("BDT"),ABMGRP)=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM ENR",ABMP("BDT"),ABMGRP))+1
  1. .....;I +$G(^XTMP("ABM-PVP2",$J,"VISITS",ABMVDFN))'=2 D PTDATA ;abm*2.6*15
  1. .....D PTDATA ;abm*2.6*15
  1. .....S ^XTMP("ABM-PVP2",$J,"VISITS",ABMVDFN)=1
  1. ...;start new abm*2.6*15 HEAT183289
  1. ...;I +$G(^XTMP("ABM-PVP2",$J,"VISITS",ABMVDFN))=0,($G(ABMTSI)="Y"),(+$G(ABMICNT)=1) D ;abm*2.6*15
  1. ...I +$G(^XTMP("ABM-PVP2",$J,"VISITS",ABMVDFN))'=1,($G(ABMTSI)="Y"),(+$G(ABMICNT)=1) D ;abm*2.6*15
  1. ....S ^XTMP("ABM-PVP2",$J,"PRV-NUM TRIBSI",ABMP("BDT"),ABMPRV,ABMVLOC,"TRIBSI")=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM TRIBSI",ABMP("BDT"),ABMPRV,ABMVLOC,"TRIBSI"))+1
  1. ....S ^XTMP("ABM-PVP2",$J,"PRV-NUM TRIBSI",ABMP("BDT"),ABMPRV,"TRIBSI")=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM TRIBSI",ABMP("BDT"),ABMPRV,"TRIBSI"))+1
  1. ....S ^XTMP("ABM-PVP2",$J,"PRV-NUM TRIBSI",ABMP("BDT"),ABMGRP,ABMVLOC,"TRIBSI")=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM TRIBSI",ABMP("BDT"),ABMGRP,ABMVLOC,"TRIBSI"))+1
  1. ....S ^XTMP("ABM-PVP2",$J,"PRV-NUM TRIBSI",ABMP("BDT"),ABMVLOC,"TRIBSI")=+$G(^XTMP("ABM-PVP2",$J,"PRV-NUM TRIBSI",ABMP("BDT"),ABMVLOC,"TRIBSI"))+1
  1. ...;end new HEAT183289
  1. ...S X1=ABMP("BDT")
  1. ...S X2=1
  1. ...D C^%DTC
  1. ...I X>ABMP("BEDT") S ABMDTFLG=1 Q
  1. ...S ABMP("BDT")=X
  1. Q
  1. GENROLL ;EP
  1. D GENROLL^ABMM2P11 ;abm*2.6*15 split routine due to size
  1. Q
  1. PRIMPOV ;
  1. S ABMDXPRI=+$O(^ABMDBILL(ABMDUZ2,ABMP("BDFN"),17,"C",0))
  1. S:ABMDXPRI'=0 ABMDXIEN=+$O(^ABMDBILL(ABMDUZ2,ABMP("BDFN"),17,"C",ABMDXPRI,0))
  1. Q:ABMDXIEN=0
  1. S ABMDX=$P($$DX^ABMCVAPI($P($G(^ABMDBILL(ABMDUZ2,ABMP("BDFN"),17,ABMDXIEN,0)),U),ABMSDT),U,2)
  1. Q