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

ABMUITIN.m

Go to the documentation of this file.
  1. ABMUITIN ; IHS/SD/SDR - 3PB/UFMS TIN report
  1. ;;2.6;IHS 3P BILLING SYSTEM;**10,11**;NOV 12, 2009;Build 133
  1. ;
  1. EP ;EP
  1. K ABMTCNT,ABML,ABMCNT,ABM
  1. K DIR
  1. S DIR(0)="S^1:Insurers with TIN;2:Insurers without TIN;3:Both"
  1. S DIR("A")="Which insurers would you like to see"
  1. D ^DIR K DIR
  1. G:$D(DIROUT)!$D(DTOUT)!$D(DUOUT)!$D(DIRUT) XIT
  1. S ABMWINS=Y
  1. ;
  1. S DIR(0)="S^B:Billing Address;M:Mailing Address"
  1. S DIR("A")="Which address would you like to see on the report"
  1. D ^DIR K DIR
  1. G:$D(DIROUT)!$D(DTOUT)!$D(DUOUT)!$D(DIRUT) XIT
  1. S ABMADD=Y
  1. ;
  1. ;this next part will ask for a time frame. This will be used to go
  1. ;through claims for that many years and find the active insurers on them
  1. ;and they will be the only insurers to print on report.
  1. W !!
  1. S X1=DT
  1. S X2=-1825
  1. D C^%DTC
  1. S ABMTIME=X
  1. S X1=DT
  1. S X2=-365
  1. D C^%DTC
  1. S ABMDFLT=X
  1. K DIR
  1. S DIR(0)="D^"_ABMTIME_":DT:X"
  1. S DIR("A",1)="This report prints insurers that have been billed back to a user-selected date."
  1. S DIR("A")="Please select date for report"
  1. S DIR("B")=$$SDT^ABMDUTL(ABMDFLT)
  1. D ^DIR K DIR
  1. G:$D(DIROUT)!$D(DTOUT)!$D(DUOUT)!$D(DIRUT) XIT
  1. S ABMTIME=Y
  1. ;
  1. W !!!
  1. HD I ABMWINS=1 S ABM("HD",0)="Insurers with TIN"
  1. I ABMWINS=2 S ABM("HD",0)="Insurers without TIN"
  1. I ABMWINS=3 S ABM("HD",0)="Insurers with and without TIN"
  1. S ABM("PG")=1
  1. S ABMY("LOC")=DUZ(2)
  1. S ABM("LVL")=0
  1. S ABM("CONJ")=""
  1. S ABM("TXT")=""
  1. S ABMQ("RX")="XIT^ABMUITIN"
  1. S ABMQ("NS")="ABM"
  1. S ABMQ("RP")="LOOP^ABMUITIN"
  1. D ^ABMDRDBQ
  1. Q
  1. LOOP ;create list of insurers to print
  1. ;
  1. S ABMDTLP=ABMTIME-.5
  1. F S ABMDTLP=$O(^ABMDBILL(DUZ(2),"AP",ABMDTLP)) Q:+ABMDTLP=0 D
  1. .S ABMBDFN=0
  1. .F S ABMBDFN=$O(^ABMDBILL(DUZ(2),"AP",ABMDTLP,ABMBDFN)) Q:+ABMBDFN=0 D
  1. ..I $P($G(^ABMDBILL(DUZ(2),ABMBDFN,0)),U,8)'="" D
  1. ...S ABMAINS=$P($G(^ABMDBILL(DUZ(2),ABMBDFN,0)),U,8)
  1. ...;S ABMITYP=$P($G(^AUTNINS(ABMAINS,2)),U) ;abm*2.6*10 HEAT73780
  1. ...S ABMITYP=$$GET1^DIQ(9999999.181,$$GET1^DIQ(9999999.18,ABMAINS,".211","I"),1,"I") ;abm*2.6*10 HEAT73780
  1. ...S ABMINAM=$P($G(^AUTNINS(ABMAINS,0)),U)
  1. ...Q:ABMITYP="N"!(ABMITYP="I") ;don't check Ben or Non-Ben
  1. ...I $G(ABM(ABMAINS))="" S ABMTCNT=+$G(ABMTCNT)+1,ABM(ABMAINS)=1
  1. ...I ABMWINS=2,($P($G(^AUTNINS(ABMAINS,0)),U,11)'="") Q
  1. ...I ABMWINS=1,($P($G(^AUTNINS(ABMAINS,0)),U,11)="") Q
  1. ...;S ABMITYP=$P($G(^AUTNINS(ABMAINS,2)),U) ;abm*2.6*10 HEAT73780
  1. ...S ABMITYP=$$GET1^DIQ(9999999.181,$$GET1^DIQ(9999999.18,ABMAINS,".211","I"),1,"I") ;abm*2.6*10 HEAT73780
  1. ...S ABMINAM=$P($G(^AUTNINS(ABMAINS,0)),U)
  1. ...S ABML(ABMITYP,ABMINAM,ABMAINS)=""
  1. D PRINT
  1. Q
  1. PRINT ; print insurers
  1. D WHD^ABMDRHD G XIT:'$D(IO)!$G(POP)!$D(DTOUT)!$D(DUOUT)
  1. W !,"INSURER (IEN)",?35,"TIN"
  1. W !?5,"Address",?37,"City",?53,"ST",?56,"Zip",?67,"Phone"
  1. W !
  1. F ABMI=1:1:80 W "-"
  1. S ABMITYP=0
  1. F S ABMITYP=$O(ABML(ABMITYP)) Q:ABMITYP="" D
  1. .;W !!?3,$P($T(@ABMITYP^ABMUCASH),";;",2) ;abm*2.6*11 insurer type
  1. .W !!?3,$$INSTYP^ABMUCASH(ABMITYP) ;abm*2.6*11 insurer type
  1. .S ABMINAM=""
  1. .F S ABMINAM=$O(ABML(ABMITYP,ABMINAM)) Q:ABMINAM="" D
  1. ..S ABMI=0
  1. ..F S ABMI=$O(ABML(ABMITYP,ABMINAM,ABMI)) Q:+ABMI=0 D
  1. ...W !,ABMINAM,"(",ABMI,")"
  1. ...D GETS^DIQ("9999999.18",ABMI,".01;.02;.03;.04;.05;.06;.11;2;3;4;5","IE","ABMC")
  1. ...S ABMTIN=$G(ABMC("9999999.18",ABMI_",",".11","E"))
  1. ...W ?35,ABMTIN
  1. ...W !?5
  1. ...I ABMADD="M" D
  1. ....W $G(ABMC("9999999.18",ABMI_",",".02","E"))
  1. ....W ?37,$G(ABMC("9999999.18",ABMI_",",".03","E"))
  1. ....W:$G(ABMC("9999999.18",ABMI_",",".04","I"))'="" ?53,$P($G(^DIC(5,$G(ABMC("9999999.18",ABMI_",",".04","I")),0)),U,2)
  1. ....W ?56,$G(ABMC("9999999.18",ABMI_",",".05","E"))
  1. ...I ABMADD="B" D
  1. ....W $G(ABMC("9999999.18",ABMI_",","2","E"))
  1. ....W ?37,$G(ABMC("9999999.18",ABMI_",","3","E"))
  1. ....W:$G(ABMC("9999999.18",ABMI_",","4","I"))'="" ?53,$P($G(^DIC(5,$G(ABMC("9999999.18",ABMI_",","4","I")),0)),U,2)
  1. ....W ?56,$P($G(ABMC("9999999.18",ABMI_",","5","E")),"-")
  1. ...W ?67,$G(ABMC("9999999.18",ABMI_",",".06","E"))
  1. ...S ABMCNT=+$G(ABMCNT)+1
  1. ...I $Y>(IOSL-5) D PAZ^ABMDRUTL Q:$D(DTOUT)!$D(DUOUT)!$D(DIROUT)!$D(DIRUT) S ABM("PG")=+$G(ABM("PG"))+1 D WHD^ABMDRHD Q:$D(DTOUT)!$D(DUOUT)!$D(DIROUT) W " (cont)"
  1. I +$G(ABMCNT)>0 D
  1. .W !!?35,"TOTAL INSURERS WITH"_$S(ABMWINS=2:"OUT",ABMWINS=3:" AND WITHOUT",1:"")_" TIN: ",ABMCNT
  1. .W !!?35,"TOTAL INSURER COUNT: ",ABMTCNT
  1. Q
  1. XIT ;
  1. K ABMWINS,DIC,DIE,X,Y,DA,ABMC,ABMI,ABMTIME
  1. K ABML,ABM,ABMCNT,ABMTCNT
  1. Q