ABMDPINQ ; IHS/SD/SDR - Inquire UTILITY ;
;;2.6;IHS Third Party Billing;**1**;NOV 12, 2009
;
; IHS/SD/SDR - abm*2.6*1 - NO HEAT - Split Provider inquire
; into separate routine and added fields
;
PRV ;EP for displaying Provider Record
S ABM("SUB")="PROVIDER"
D HD
S DIC="^VA(200,"
S DIC("S")="I $D(^(""PS""))"
;
DIC W !!
S DIC("A")="Select "_ABM("SUB")_": "
S DIC(0)="QEAM"
D ^DIC
G XIT:X=""!(X["^")!$D(DUOUT)!$D(DTOUT)
I +Y<1 G DIC
S DA=+Y
W $$EN^ABMVDF("IOF")
W !?80-$L(ABM("SUB"))-21\2,"*** ",ABM("SUB")," FILE INQUIRY ***"
S ABM="",$P(ABM,"=",80)=""
S $P(ABMDASH,"-",80)=""
W !!,ABM
K S
D GETS^DIQ(200,DA,".01;8;20.2;29;53.5;9999999.01;9999999.06;9999999.07;9999999.08","E","ABMZ")
S ABMPRV=DA_","
D WRITE
W ABM
G DIC
;
XIT K ABM,DIR,DIC,DIE
Q
;
HD K DIC,DR
Q
WRITE ;
W !,"NAME: ",$G(ABMZ(200,ABMPRV,.01,"E"))
W ?50,"TITLE: ",$G(ABMZ(200,ABMPRV,8,"E"))
W !,"PROVIDER CLASS: ",$G(ABMZ(200,ABMPRV,53.5,"E"))
W ?50,"AFFILIATION: ",$G(ABMZ(200,ABMPRV,9999999.01,"E"))
W !!,"SERVICE/SECTION.............: ",$G(ABMZ(200,ABMPRV,29,"E"))
W !,"SIGNATURE BLOCK PRINTED NAME: ",$G(ABMZ(200,ABMPRV,20.2,"E"))
;
W !,$E(ABMDASH,1,26),"National Provider Identifier",$E(ABMDASH,1,26)
W !?3,"NPI",?20,"Effective Date",?40,"Status"
S ABMI=0
F S ABMI=$O(^VA(200,+ABMPRV,"NPISTATUS",ABMI)) Q:+ABMI=0 D
.W !?3,$P($G(^VA(200,+ABMPRV,"NPISTATUS",ABMI,0)),U,3) ;NPI
.W ?20,$$CDT^ABMDUTL($P($G(^VA(200,+ABMPRV,"NPISTATUS",ABMI,0)),U)) ;effective date
.W ?40,$S($P($G(^VA(200,+ABMPRV,"NPISTATUS",ABMI,0)),U,2)=1:"ACTIVE",$P($G(^VA(200,+ABMPRV,"NPISTATUS",ABMI,0)),U,2)=0:"INSACTIVE",1:"") ;status
K ABMI
;
W !!,$E(ABMDASH,1,32),"Provider Numbers",$E(ABMDASH,1,32)
W !,"MEDICARE PROVIDER NUMBER.....: ",$G(ABMZ(200,ABMPRV,9999999.06,"E"))
W !,"MEDICAID PROVIDER NUMBER.....: ",$G(ABMZ(200,ABMPRV,9999999.07,"E"))
W !,"UPIN NUMBER..................: ",$G(ABMZ(200,ABMPRV,9999999.08,"E"))
W !,"TAXONOMY CODE................: ",$$PTAX^ABMEEPRV(+ABMPRV)
;
W !,$E(ABMDASH,1,32),"Licensing States",$E(ABMDASH,1,32)
W !?3,"State",?10,"License Number"
S ABMI=0
F S ABMI=$O(^VA(200,+ABMPRV,"PS1",ABMI)) Q:+ABMI=0 D
.W !?3,$P($G(^DIC(5,$P($G(^VA(200,+ABMPRV,"PS1",ABMI,0)),U),0)),U,2)
.W ?10,$P($G(^VA(200,+ABMPRV,"PS1",ABMI,0)),U,2)
K ABMI
;
W !,$E(ABMDASH,1,25),"Payer Assigned Provider Number",$E(ABMDASH,1,25)
W !?3,"Insurer",?35,"Payer Assigned Provider Number"
S ABMI=""
D GETS^DIQ("200",ABMPRV,"9999999.18*","E","ABMINS")
F S ABMI=$O(ABMINS(200.9999918,ABMI)) Q:$G(ABMI)="" D
.W !?3,ABMINS(200.9999918,ABMI,.01,"E")
.W ?35,$G(ABMINS(200.9999918,ABMI,.02,"E"))
K ABMINS
;
W !!,$E(ABMDASH,1,34),"Person Class",$E(ABMDASH,1,34)
W !,"Effective Date Ending Date Person Class"
S ABMI=0
F S ABMI=$O(^VA(200,+ABMPRV,"USC1",ABMI)) Q:+ABMI=0 D
.W !,$$SDT^ABMDUTL($P($G(^VA(200,+ABMPRV,"USC1",ABMI,0)),U,2))
.W ?16,$$SDT^ABMDUTL($P($G(^VA(200,+ABMPRV,"USC1",ABMI,0)),U,3))
.W ?29,$P($G(^USC(8932.1,$P($G(^VA(200,+ABMPRV,"USC1",ABMI,0)),U),0)),U)
K ABMI
W !
Q
ABMDPINQ ; IHS/SD/SDR - Inquire UTILITY ;
+1 ;;2.6;IHS Third Party Billing;**1**;NOV 12, 2009
+2 ;
+3 ; IHS/SD/SDR - abm*2.6*1 - NO HEAT - Split Provider inquire
+4 ; into separate routine and added fields
+5 ;
PRV ;EP for displaying Provider Record
+1 SET ABM("SUB")="PROVIDER"
+2 DO HD
+3 SET DIC="^VA(200,"
+4 SET DIC("S")="I $D(^(""PS""))"
+5 ;
DIC WRITE !!
+1 SET DIC("A")="Select "_ABM("SUB")_": "
+2 SET DIC(0)="QEAM"
+3 DO ^DIC
+4 IF X=""!(X["^")!$DATA(DUOUT)!$DATA(DTOUT)
GOTO XIT
+5 IF +Y<1
GOTO DIC
+6 SET DA=+Y
+7 WRITE $$EN^ABMVDF("IOF")
+8 WRITE !?80-$LENGTH(ABM("SUB"))-21\2,"*** ",ABM("SUB")," FILE INQUIRY ***"
+9 SET ABM=""
SET $PIECE(ABM,"=",80)=""
+10 SET $PIECE(ABMDASH,"-",80)=""
+11 WRITE !!,ABM
+12 KILL S
+13 DO GETS^DIQ(200,DA,".01;8;20.2;29;53.5;9999999.01;9999999.06;9999999.07;9999999.08","E","ABMZ")
+14 SET ABMPRV=DA_","
+15 DO WRITE
+16 WRITE ABM
+17 GOTO DIC
+18 ;
XIT KILL ABM,DIR,DIC,DIE
+1 QUIT
+2 ;
HD KILL DIC,DR
+1 QUIT
WRITE ;
+1 WRITE !,"NAME: ",$GET(ABMZ(200,ABMPRV,.01,"E"))
+2 WRITE ?50,"TITLE: ",$GET(ABMZ(200,ABMPRV,8,"E"))
+3 WRITE !,"PROVIDER CLASS: ",$GET(ABMZ(200,ABMPRV,53.5,"E"))
+4 WRITE ?50,"AFFILIATION: ",$GET(ABMZ(200,ABMPRV,9999999.01,"E"))
+5 WRITE !!,"SERVICE/SECTION.............: ",$GET(ABMZ(200,ABMPRV,29,"E"))
+6 WRITE !,"SIGNATURE BLOCK PRINTED NAME: ",$GET(ABMZ(200,ABMPRV,20.2,"E"))
+7 ;
+8 WRITE !,$EXTRACT(ABMDASH,1,26),"National Provider Identifier",$EXTRACT(ABMDASH,1,26)
+9 WRITE !?3,"NPI",?20,"Effective Date",?40,"Status"
+10 SET ABMI=0
+11 FOR
SET ABMI=$ORDER(^VA(200,+ABMPRV,"NPISTATUS",ABMI))
IF +ABMI=0
QUIT
Begin DoDot:1
+12 ;NPI
WRITE !?3,$PIECE($GET(^VA(200,+ABMPRV,"NPISTATUS",ABMI,0)),U,3)
+13 ;effective date
WRITE ?20,$$CDT^ABMDUTL($PIECE($GET(^VA(200,+ABMPRV,"NPISTATUS",ABMI,0)),U))
+14 ;status
WRITE ?40,$SELECT($PIECE($GET(^VA(200,+ABMPRV,"NPISTATUS",ABMI,0)),U,2)=1:"ACTIVE",$PIECE($GET(^VA(200,+ABMPRV,"NPISTATUS",ABMI,0)),U,2)=0:"INSACTIVE",1:"")
End DoDot:1
+15 KILL ABMI
+16 ;
+17 WRITE !!,$EXTRACT(ABMDASH,1,32),"Provider Numbers",$EXTRACT(ABMDASH,1,32)
+18 WRITE !,"MEDICARE PROVIDER NUMBER.....: ",$GET(ABMZ(200,ABMPRV,9999999.06,"E"))
+19 WRITE !,"MEDICAID PROVIDER NUMBER.....: ",$GET(ABMZ(200,ABMPRV,9999999.07,"E"))
+20 WRITE !,"UPIN NUMBER..................: ",$GET(ABMZ(200,ABMPRV,9999999.08,"E"))
+21 WRITE !,"TAXONOMY CODE................: ",$$PTAX^ABMEEPRV(+ABMPRV)
+22 ;
+23 WRITE !,$EXTRACT(ABMDASH,1,32),"Licensing States",$EXTRACT(ABMDASH,1,32)
+24 WRITE !?3,"State",?10,"License Number"
+25 SET ABMI=0
+26 FOR
SET ABMI=$ORDER(^VA(200,+ABMPRV,"PS1",ABMI))
IF +ABMI=0
QUIT
Begin DoDot:1
+27 WRITE !?3,$PIECE($GET(^DIC(5,$PIECE($GET(^VA(200,+ABMPRV,"PS1",ABMI,0)),U),0)),U,2)
+28 WRITE ?10,$PIECE($GET(^VA(200,+ABMPRV,"PS1",ABMI,0)),U,2)
End DoDot:1
+29 KILL ABMI
+30 ;
+31 WRITE !,$EXTRACT(ABMDASH,1,25),"Payer Assigned Provider Number",$EXTRACT(ABMDASH,1,25)
+32 WRITE !?3,"Insurer",?35,"Payer Assigned Provider Number"
+33 SET ABMI=""
+34 DO GETS^DIQ("200",ABMPRV,"9999999.18*","E","ABMINS")
+35 FOR
SET ABMI=$ORDER(ABMINS(200.9999918,ABMI))
IF $GET(ABMI)=""
QUIT
Begin DoDot:1
+36 WRITE !?3,ABMINS(200.9999918,ABMI,.01,"E")
+37 WRITE ?35,$GET(ABMINS(200.9999918,ABMI,.02,"E"))
End DoDot:1
+38 KILL ABMINS
+39 ;
+40 WRITE !!,$EXTRACT(ABMDASH,1,34),"Person Class",$EXTRACT(ABMDASH,1,34)
+41 WRITE !,"Effective Date Ending Date Person Class"
+42 SET ABMI=0
+43 FOR
SET ABMI=$ORDER(^VA(200,+ABMPRV,"USC1",ABMI))
IF +ABMI=0
QUIT
Begin DoDot:1
+44 WRITE !,$$SDT^ABMDUTL($PIECE($GET(^VA(200,+ABMPRV,"USC1",ABMI,0)),U,2))
+45 WRITE ?16,$$SDT^ABMDUTL($PIECE($GET(^VA(200,+ABMPRV,"USC1",ABMI,0)),U,3))
+46 WRITE ?29,$PIECE($GET(^USC(8932.1,$PIECE($GET(^VA(200,+ABMPRV,"USC1",ABMI,0)),U),0)),U)
End DoDot:1
+47 KILL ABMI
+48 WRITE !
+49 QUIT