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

ABMDESM.m

Go to the documentation of this file.
  1. ABMDESM ; IHS/ASDST/DMJ - Display Summarized Claim Info ; 17 Oct 2013 9:59 AM
  1. ;;2.6;IHS 3P BILLING SYSTEM;**6,8,13**;NOV 12, 2009;Build 213
  1. ;
  1. ; IHS/ASDS/DMJ - 04/18/00 - V2.4 Patch 1 - NOIS XAA-0400-200044
  1. ; Modified mode of export loop to include 16 and 17
  1. ; IHS/ASDS/LSL - 05/15/00 - V2.4 Patch 1 - NOIS NDA-0500-180042
  1. ; Modified to populate total by export mode properly.
  1. ; IHS/ASDS/DMJ - 07/24/01 - v2.4 Patch 7 - NOIS HQW-0701-100066
  1. ; Modified mode of export loop to include 20
  1. ; IHS/ASDS/SDH - 08/14/01 - V2.4 Patch 9 - NOIS NDA-1199-180065
  1. ; Modified to include groupler allowance, non-covered, and
  1. ; penalties in the writeoff category.
  1. ;
  1. ; IHS/SD/SDR - v2.5 p10 - IM21581 - Added active insurer print to summary
  1. ; IHS/SD/SDR - v2.5 p11 - NPI; Added checks for new export modes (27/28/29)
  1. ; IHS/SD/SDR - v2.5 p13 - IM25002 - Change for Medi-Cal when Medi/Medi
  1. ; IHS/SD/SDR - abm*2.6*6 - 5010 - added export mode 32
  1. ;IHS/SD/SDR - 2.6*13 - Added check for new export mode 35
  1. ;
  1. ; *********************************************************************
  1. ;
  1. S ABMP("GL")="^ABMDCLM(DUZ(2),"_ABMP("CDFN")_",",ABMP("TOT")=0,ABMP("NC")=0
  1. I '$G(ABMQUIET) W $$EN^ABMVDF("IOF")
  1. S ABMP("TMP-EXP")=ABMP("EXP")
  1. ;F ABMP("EXP")=1,10,11,2,3,13,14,15,16,17,19,20,21,22,23,24,27,28,51 I $D(ABMP("EXP",ABMP("EXP"))) D ;abm*2.6*6 5010
  1. ;F ABMP("EXP")=1,10,11,2,3,13,14,15,16,17,19,20,21,22,23,24,27,28,32,51 I $D(ABMP("EXP",ABMP("EXP"))) D ;abm*2.6*6 5010 ;abm*2.6*8 5010
  1. ;F ABMP("EXP")=1,10,11,2,3,13,14,15,16,17,19,20,21,22,24,27,28,31,32,51 I $D(ABMP("EXP",ABMP("EXP"))) D ;abm*2.6*6 5010 ;abm*2.6*8 5010 ;abm*2.6*13 export mode 35
  1. F ABMP("EXP")=1,10,11,2,3,13,14,15,16,17,19,20,21,22,24,27,28,31,32,35,51 I $D(ABMP("EXP",ABMP("EXP"))) D ;abm*2.6*13 export mode 35
  1. .D ^ABMDESM1
  1. .S ABMP("EXP",ABMP("EXP"))=+ABMS("TOT")
  1. .I $P(^ABMDEXP(ABMP("EXP"),0),U)["UB" D Q
  1. ..S ABMP("NC")=$S($P($G(ABMP("FLAT")),U,2):$P(ABMS($P(ABMP("FLAT"),U,2)),U,5),1:0)
  1. ..I ABMS("TOT"),'$G(ABMQUIET) D ^ABMDES1,^ABMPPADJ
  1. .Q:'ABMS("TOT")
  1. .Q:$G(ABMQUIET)
  1. .I $P($G(^ABMDEXP(ABMP("EXP"),1)),U)]"" D @("^"_$P(^(1),U)),^ABMPPADJ Q
  1. .D @("^ABMDES"_ABMP("EXP")),^ABMPPADJ
  1. Q:($G(ABMSFLG)=1)
  1. S ABMP("EXP")=ABMP("TMP-EXP") K ABMP("TMP-EXP")
  1. I $G(ABMTFLAG)=1 S (ABMP("TOT"),ABMP("EXP",ABMEXPMS))=+$G(ABMP("CBAMT")) Q ;don't do summary below if 2NDARY with one export mode
  1. ;
  1. VTYP S ABMP=3 F S ABMP=$O(ABMP("EXP",ABMP)) Q:'ABMP D
  1. .Q:ABMP=10
  1. .Q:ABMP=11
  1. .Q:ABMP=13
  1. .Q:ABMP=14
  1. .Q:ABMP=15
  1. .Q:ABMP=16
  1. .Q:ABMP=17
  1. .Q:ABMP=19
  1. .Q:ABMP=20
  1. .Q:ABMP=21
  1. .Q:ABMP=22
  1. .;Q:ABMP=23 ;abm*2.6*8
  1. .Q:ABMP=24
  1. .Q:ABMP=27
  1. .Q:ABMP=28
  1. .Q:ABMP=31 ;abm*2.6*8 5010
  1. .Q:ABMP=32 ;abm*2.6*6 5010
  1. .Q:ABMP=35 ;abm*2.6*13 export mode 35
  1. .Q:ABMP=51
  1. .I $P($G(^ABMDEXP(ABMP,1)),U)]"" D @("^"_$P(^(1),U)) I 1
  1. .E D @("^ABMDES"_ABMP)
  1. .S:$G(ABMP("EXP",ABMP)) ABMP("TOT")=ABMP("TOT")+ABMP("EXP",ABMP)
  1. ;
  1. Q:$G(ABMQUIET)
  1. D PREV^ABMDFUTL
  1. S ABMP("RATIO")=1/$S((ABMP("TOT")-ABMP("NC"))>0:(ABMP("TOT")-ABMP("NC")),1:1)
  1. ;
  1. W $$EN^ABMVDF("IOF")
  1. S $P(ABM("="),"=",80)=""
  1. W !,?35,"SUMMARY",!,ABM("=")
  1. W !!,"Active Insurer: ",$P($G(^AUTNINS(ABMP("INS"),0)),U),!
  1. W !!,?30,"Previous",?68,"Bill"
  1. W !,?8,"Form",?18,"Charges",?30,"Payments",?41,"Write-offs",?54,"Non-cvd",?67,"Amount"
  1. W !?5,"---------- ---------- ---------- ---------- ---------- ----------"
  1. S ABM("NT")=ABMP("NC")
  1. F ABM=0:0 S ABM=$O(ABMP("EXP",ABM)) Q:'ABM D
  1. .W !?1,$P(^ABMDEXP(ABM,0),U) ;form name
  1. .W ?17,$J($FN(ABMP("EXP",ABM),",",2),10) ;charges
  1. .S ABM("P")=+$FN(ABMP("PD")*ABMP("RATIO")*(ABMP("EXP",ABM)-ABM("NT")),"",3)
  1. .W ?29,$J($FN(ABM("P"),",",2),10) ;payments
  1. .S ABMP("WO")=ABMP("WO")+($G(ABMP("GRP")))+$G(ABMP("NONC"))
  1. .S ABMP("WO")=ABMP("WO")+$G(ABMP("PENS"))
  1. .S ABM("W")=+$FN(ABMP("WO")*ABMP("RATIO")*(ABMP("EXP",ABM)-ABM("NT")),"",3)
  1. .W ?41,$J($FN(ABM("W"),",",2),10) ;writeoffs
  1. .D MEDICHK ;check for Medicare/Medi-Cal
  1. .I $G(ABMMFLG)'=1 S ABMP("EXP",ABM)=ABMP("EXP",ABM)-ABM("P")-ABM("W")-ABM("NT")
  1. .S:ABMP("EXP",ABM)<0 ABMP("EXP",ABM)=0
  1. .W ?53,$J($FN(ABM("NT"),",",2),10) ;non-covered
  1. .I ABMP("NC") S ABM("NT")=0
  1. .W ?65,$J($FN(ABMP("EXP",ABM),",",2),10) ;amount
  1. W !?17,"========== ========== ========== ========== =========="
  1. W !?17,$J($FN(ABMP("TOT"),",",2),10)
  1. W ?29,$J($FN(ABMP("PD"),",",2),10)
  1. W ?41,$J($FN(ABMP("WO"),",",2),10)
  1. W ?53,$J($FN(ABMP("NC"),",",2),10)
  1. S ABMP("TOT")=ABMP("TOT")-ABMP("NC")
  1. S ABMP("TOT")=+$FN($S(ABMP("TOT")<1:0,1:ABMP("TOT")),"",3)
  1. W ?65,$J($FN(ABMP("TOT"),",",2),10)
  1. ;
  1. XIT K ABMS
  1. Q
  1. ;
  1. MEDICHK ;EP
  1. S ABMI=0
  1. K ABMMCRC,ABMMCDI
  1. F S ABMI=$O(^ABMDCLM(DUZ(2),ABMP("CDFN"),13,ABMI)) Q:+ABMI=0 D
  1. .S ABMIREC=$G(^ABMDCLM(DUZ(2),ABMP("CDFN"),13,ABMI,0))
  1. .I $P(ABMIREC,U,3)="C"&($P(ABMIREC,U)=2) S ABMMCRC=1
  1. .I $P(ABMIREC,U,3)="I"&($$RCID^ABMUTLP($P(ABMIREC,U))["61044") S ABMMCDI=1
  1. I $G(ABMMCRC)=1&($G(ABMMCDI)=1) S ABMMFLG=1
  1. Q