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

ABMDRFE3.m

Go to the documentation of this file.
  1. ABMDRFE3 ; IHS/ASDST/DMJ - CPT Management Reports for AK ;
  1. ;;2.6;IHS 3P BILLING SYSTEM;;NOV 12, 2009
  1. ;
  1. ; IHS/SD/SDR - v2.6 CSV
  1. ;
  1. S IOP=ABM("IOP") D ^%ZIS Q:$G(POP) U IO W:$D(ABM("PRINT",16)) @ABM("PRINT",16)
  1. S ABM("PG")=0
  1. S ABM(1)=$S(ABM("CAT")=1:90000,ABM("CAT")=2:10000,ABM("CAT")=3:70000,1:80000),ABM(1)=ABM(1)-1
  1. S ABM(2)=$S(ABM("CAT")=1:99999,ABM("CAT")=2:69999,ABM("CAT")=3:79999,1:89999)
  1. S IOP=ABM("IOP") D ^%ZIS
  1. D HDB G XIT:$D(DUOUT)!$D(DTOUT)!$D(DIROUT)
  1. S ABM=ABM(1) F S ABM=$O(^ICPT(ABM)) Q:'ABM!(ABM>ABM(2)) D Q:$D(DUOUT)!$D(DTOUT)!$D(DIROUT)
  1. .Q:$P($$CPT^ABMCVAPI(ABM,""),U,7)=1 ;CSV-c
  1. .I $Y>(IOSL-7) D HD Q:$D(DUOUT)!$D(DTOUT)!$D(DIROUT)
  1. .I ABM("CAT")=2,$D(^ABMDFEE(ABM("FEE"),11,ABM,0)) S ABMU(1)="?110"_U_$J($FN(($P(^(0),U,2)*1.25),",",2),9) S:$D(^ABMDFEE(ABM("FEE"),23,ABM,0)) ABMU(2)="?122"_U_$J($FN(($P(^(0),U,2)*1.25),",",2),9)
  1. .E I $D(^ABMDFEE(ABM("FEE"),11,ABM,0)) S ABMU(1)="?122"_U_$J($FN($P(^(0),U,2)*1.25,",",2),9)
  1. .E I $D(^ABMDFEE(ABM("FEE"),15,ABM,0)) S ABMU(1)="?122"_U_$J($FN($P(^(0),U,2)*1.25,",",2),9)
  1. .E I $D(^ABMDFEE(ABM("FEE"),17,ABM,0)) S ABMU(1)="?122"_U_$J($FN($P(^(0),U,2)*1.25,",",2),9)
  1. .E I $D(^ABMDFEE(ABM("FEE"),19,ABM,0)) S ABMU(1)="?122"_U_$J($FN($P(^(0),U,2)*1.25,",",2),9)
  1. .;start CSV-c
  1. .S ABMU("TXT")=""
  1. .D IHSCPTD^ABMCVAPI($P(ABM("X0"),U),ABMZCPTD,"","")
  1. .S ABMU("CP")=0
  1. .F S ABMU("CP")=$O(ABMZCPTD(ABMU("CP"))) Q:'$D(ABMZCPTD(ABMU("CP"))) D
  1. ..S ABMU("TXT")=ABMU("TXT")_ABMZCPTD(ABMU("CP"))_" "
  1. .;end CSV-c
  1. .S ABMU("TXT")=ABM_" - "_ABMU("TXT")
  1. .;start CSV-c
  1. .S ABM(3)=0
  1. .F I=1:1 S ABM(3)=$O(^ICPT(ABM,"ICD",ABM(3))) Q:'ABM(3) Q:'$D(^ICD0(ABM(3),0)) S ABMU("2TXT",I)=$P($$ICDOP^ABMCVAPI(ABM(3),""),U,2)_" - "_$E($P($$ICDOP^ABMCVAPI(ABM(3),""),U,5),1,30)
  1. .;end CSV-c
  1. .I $D(ABMU("2TXT",1)) S ABMU("2TXT")=ABMU("2TXT",1),ABMU("2LM")=70,ABMU("2RM")=108,ABMU("2TAB")=-6
  1. .S ABMU("LM")=0,ABMU("RM")=65,ABMU("TAB")=-10
  1. .D PRTTXT
  1. ;
  1. XIT D POUT^ABMDRUTL,^%ZISC
  1. K ABM
  1. Q
  1. ;
  1. PRTTXT ; UTIL FOR WRAP-AROUND
  1. W !
  1. S ABMU("TAB")=$S($D(ABMU("TAB")):ABMU("TAB"),1:0),ABMU("LNG")=ABMU("RM")-ABMU("LM")
  1. I $D(ABMU("2TXT")) S ABMU("2TAB")=$S($D(ABMU("2TAB")):ABMU("2TAB"),1:0),ABMU("2LNG")=ABMU("2RM")-ABMU("2LM")
  1. F ABMU("Q")=1:1 Q:(ABMU("TXT")=""!(" "[ABMU("TXT")))&'$D(ABMU("2TXT")) D PRTTXT2
  1. QIT K ABMU
  1. Q
  1. ;
  1. PRTTXT2 K ABMU("FLG") I $L(ABMU("TXT"))<ABMU("LNG") S ABMU("F")=ABMU("TXT"),ABMU("TXT")="" G PRTTXT3
  1. S ABMU("FLG")="" F ABMU("C")=ABMU("LNG"):-1:1 S ABMU("L")=$E(ABMU("TXT"),ABMU("C")) Q:ABMU("L")=" "!(ABMU("L")="-")!(ABMU("L")="\")!(ABMU("L")=",")!(ABMU("L")="/")
  1. S ABMU("F")=$E(ABMU("TXT"),1,ABMU("C")-1),ABMU("TXT")=$E(ABMU("TXT"),ABMU("C")+1,255)
  1. K:" "[ABMU("TXT")!(ABMU("TXT")="")!(ABMU("TXT")=" ") ABMU("FLG")
  1. ;
  1. PRTTXT3 I $D(ABMU("2TXT")) D 2
  1. W ?ABMU("LM"),ABMU("F") I $D(ABMU("2TXT")) W ?ABMU("2LM"),ABMU("2F")
  1. I ABMU("Q")=1 F ABMU("I")=1:1 Q:'$D(ABMU(ABMU("I"))) W @$P(ABMU(ABMU("I")),U),$P(ABMU(ABMU("I")),U,2)
  1. W:$D(ABMU("FLG")) ! S ABMU("LM")=ABMU("LM")-ABMU("TAB"),ABMU("LNG")=ABMU("LNG")+ABMU("TAB"),ABMU("TAB")=0
  1. I $D(ABMU("2TXT")) S ABMU("2LM")=ABMU("2LM")-ABMU("2TAB"),ABMU("2LNG")=ABMU("2LNG")+ABMU("2TAB"),ABMU("2TAB")=0
  1. Q
  1. ;
  1. 2 I $D(ABMU("2TXT",ABMU("Q"))) S ABMU("2F")=ABMU("2TXT",ABMU("Q")),ABMU("FLG")=""
  1. E K ABMU("2TXT")
  1. Q
  1. ;
  1. HD D PAZ^ABMDRUTL Q:$D(DTOUT)!$D(DUOUT)!$D(DIROUT)
  1. HDB W:$D(IOF) @IOF S ABM("PG")=ABM("PG")+1
  1. W !!!,"Date: " S Y=DT X ^DD("DD") W Y
  1. I $D(ABM("S")) S ABM("NMM")="~~~~~~~~~~ "_ABM("S")_" LISTING (ALASKA) - "_ABM("NM")_" ~~~~~~~~~~"
  1. W ?132-$L(ABM("NMM"))\2,ABM("NMM")
  1. W ?122,"Page: ",ABM("PG")
  1. I ABM("CAT")=2 W !,"CPT",?70,"ICD CORRESPONDING",?114,"FEE",?121,"ANESTHESIA",!,"CODE - CPT DESCRIPTION",?70,"CODE - ICD DESCRIPTION",?113,"AMOUNT",?125,"FEE"
  1. E W !,"CPT",?70,"ICD CORRESPONDING",?126,"FEE",!,"CODE - CPT DESCRIPTION",?70,"CODE - ICD DESCRIPTION",?124,"AMOUNT"
  1. S ABM("H")="",$P(ABM("H"),"=",132)="" W !,ABM("H")
  1. Q