- ABMDESMC ; IHS/ASDST/DMJ - Ambulatory Surg Claim Info ;
- ;;2.6;IHS Third Party Billing System;**2**;NOV 12, 2009
- ; IHS/SD/SDR - abm*2.6*2 - 3PMS10003A - modified to call ABMFEAPI
- ;
- K ABMS("CPT"),ABMS("TMP")
- S ABMCAT=21 D PCK^ABMDESM1 Q:$G(ABMQUIT)
- I $P($G(^AUTNINS(ABMP("INS"),2)),U)'="R" S ABMS("TOT")=0
- MS S ABMX="""""" F ABMS=1:1 S ABMX=$O(@(ABMP("GL")_"21,""C"","_ABMX_")")) Q:'ABMX S ABMX("X")=$O(^(ABMX,"")) D MS1
- G XIT
- ;
- MS1 S ABMX(0)=@(ABMP("GL")_"21,"_ABMX("X")_",0)")
- ;Q:'$P($G(^ABMDFEE(ABMP("FEE"),11,+ABMX(0),0)),U,2) ;abm*2.6*2 3PMS10003A
- Q:'$P($$ONE^ABMFEAPI(ABMP("FEE"),11,+ABMX(0),ABMP("VDT")),U) ;abm*2.6*2 3PMS10003A
- I $D(ABMS("TMP",+ABMX(0))) S $P(ABMS("CPT",ABMS("TMP",+ABMX(0))),U,4)=$P(ABMS("CPT",ABMS("TMP",+ABMX(0))),U,4)+1,ABMS=ABMS-1 Q
- S ABMS("CPT",ABMS)=U_$P(ABMX(0),U)_U_$P(ABMP("FLAT"),U,2)_U_1
- S ABMS("TMP",$P(ABMX(0),U))=ABMS
- I $P($G(^AUTNINS(ABMP("INS"),2)),U)="R" G MCR
- ;S $P(ABMS("CPT",ABMS),U,5)=$P(^ABMDFEE(ABMP("FEE"),11,+ABMX(0),0),U,2),ABMS("TOT")=ABMS("TOT")+$P(^(0),U,2) ;abm*2.6*2 3PMS10003A
- S $P(ABMS("CPT",ABMS),U,5)=$P($$ONE^ABMFEAPI(ABMP("FEE"),11,+ABMX(0),ABMP("VDT")),U),ABMS("TOT")=ABMS("TOT")+$P($$ONE^ABMFEAPI(ABMP("FEE"),11,+ABMX(0),ABMP("VDT")),U) ;abm*2.6*2 3PMS10003A
- Q
- MCR S $P(ABMS("CPT",ABMS),U,5)=$S(ABMS=1:ABMS("TOT"),1:0)
- Q
- ;
- XIT K ABMX,ABMS("TMP")
- Q
- ABMDESMC ; IHS/ASDST/DMJ - Ambulatory Surg Claim Info ;
- +1 ;;2.6;IHS Third Party Billing System;**2**;NOV 12, 2009
- +2 ; IHS/SD/SDR - abm*2.6*2 - 3PMS10003A - modified to call ABMFEAPI
- +3 ;
- +4 KILL ABMS("CPT"),ABMS("TMP")
- +5 SET ABMCAT=21
- DO PCK^ABMDESM1
- IF $GET(ABMQUIT)
- QUIT
- +6 IF $PIECE($GET(^AUTNINS(ABMP("INS"),2)),U)'="R"
- SET ABMS("TOT")=0
- MS SET ABMX=""""""
- FOR ABMS=1:1
- SET ABMX=$ORDER(@(ABMP("GL")_"21,""C"","_ABMX_")"))
- IF 'ABMX
- QUIT
- SET ABMX("X")=$ORDER(^(ABMX,""))
- DO MS1
- +1 GOTO XIT
- +2 ;
- MS1 SET ABMX(0)=@(ABMP("GL")_"21,"_ABMX("X")_",0)")
- +1 ;Q:'$P($G(^ABMDFEE(ABMP("FEE"),11,+ABMX(0),0)),U,2) ;abm*2.6*2 3PMS10003A
- +2 ;abm*2.6*2 3PMS10003A
- IF '$PIECE($$ONE^ABMFEAPI(ABMP("FEE"),11,+ABMX(0),ABMP("VDT")),U)
- QUIT
- +3 IF $DATA(ABMS("TMP",+ABMX(0)))
- SET $PIECE(ABMS("CPT",ABMS("TMP",+ABMX(0))),U,4)=$PIECE(ABMS("CPT",ABMS("TMP",+ABMX(0))),U,4)+1
- SET ABMS=ABMS-1
- QUIT
- +4 SET ABMS("CPT",ABMS)=U_$PIECE(ABMX(0),U)_U_$PIECE(ABMP("FLAT"),U,2)_U_1
- +5 SET ABMS("TMP",$PIECE(ABMX(0),U))=ABMS
- +6 IF $PIECE($GET(^AUTNINS(ABMP("INS"),2)),U)="R"
- GOTO MCR
- +7 ;S $P(ABMS("CPT",ABMS),U,5)=$P(^ABMDFEE(ABMP("FEE"),11,+ABMX(0),0),U,2),ABMS("TOT")=ABMS("TOT")+$P(^(0),U,2) ;abm*2.6*2 3PMS10003A
- +8 ;abm*2.6*2 3PMS10003A
- SET $PIECE(ABMS("CPT",ABMS),U,5)=$PIECE($$ONE^ABMFEAPI(ABMP("FEE"),11,+ABMX(0),ABMP("VDT")),U)
- SET ABMS("TOT")=ABMS("TOT")+$PIECE($$ONE^ABMFEAPI(ABMP("FEE"),11,+ABMX(0),ABMP("VDT")),U)
- +9 QUIT
- MCR SET $PIECE(ABMS("CPT",ABMS),U,5)=$SELECT(ABMS=1:ABMS("TOT"),1:0)
- +1 QUIT
- +2 ;
- XIT KILL ABMX,ABMS("TMP")
- +1 QUIT