IBAMTBU1 ;ALB/CPM - MEANS TEST BILLING BULLETINS (CON'T.) ; 09-APR-92
 ;;2.0;INTEGRATED BILLING;**153**;21-MAR-94
 ;;Per VHA Directive 10-93-142, this routine should not be modified.
 ;
OE ; Send bulletin when a Means Test copay vet, admitted for Observation
 ; and Examination, is discharged, but has previously been billed
 ; copayment and per diem charges.
 ;   Input: DGPMA, DFN, DUZ
 ;
 K IBT
 S IBPT=$$PT^IBEFUNC(DFN)
 S XMSUB=$E($P(IBPT,"^"),1,14)_"  "_$P(IBPT,"^",3)_" - O&E DISCHARGE"
 S IBT(1)="The following patient, admitted for Observation & Examination,"
 S IBT(2)="has been discharged:"
 S IBT(3)=" ",IBC=3
 S IBDUZ=DUZ D PAT^IBAERR1
 S IBC=IBC+1,IBT(IBC)=" "
 S Y=$P(DGPMA,"^") D DD^%DT
 S IBC=IBC+1,IBT(IBC)="Disc Date: "_Y
 S IBC=IBC+1,IBT(IBC)=" "
 S IBC=IBC+1,IBT(IBC)="This patient has already been charged Means Test copayment and per diem"
 S IBC=IBC+1,IBT(IBC)="charges. The Integrated Billing 'event' action has automatically been"
 S IBC=IBC+1,IBT(IBC)="closed. All Means Test charges for this admission must be manually"
 S IBC=IBC+1,IBT(IBC)="cancelled, and the patient's billing clock must be manually adjusted."
 G SEND^IBAMTBU ; deliver message and quit.
 ;
 ;
DISP ; Build before/after values, instructions for movement bulletins.
 I $D(IBVAL(1)) D
 .S IBC=IBC+1,IBT(IBC)="*** The Facility Treating Specialty was changed ***"
 .S IBC=IBC+1,IBT(IBC)=" Old Value: "_$S(IBVAL(1):$P($G(^DIC(45.7,+IBVAL(1),0)),"^"),1:" No value")
 .I $P(IBVAL(1),"^",2) S IBC=IBC+1,IBT(IBC)=$J("",12)_"(Billable Bedsection: "_$S($D(^DGCR(399.1,+$P(IBVAL(1),"^",2),0)):$P(^(0),"^"),1:"Unknown")_")"
 .S IBC=IBC+1,IBT(IBC)=" New Value: "_$S($P(IBVAL(1),"^",3):$P($G(^DIC(45.7,+$P(IBVAL(1),"^",3),0)),"^"),1:" No value")
 .I $P(IBVAL(1),"^",4) S IBC=IBC+1,IBT(IBC)=$J("",12)_"(Billable Bedsection: "_$S($D(^DGCR(399.1,+$P(IBVAL(1),"^",4),0)):$P(^(0),"^"),1:"Unknown")_")"
 .S IBC=IBC+1,IBT(IBC)=" "
 I $D(IBVAL(2)) D
 .S IBC=IBC+1,IBT(IBC)="*** The "_$S(IBMTYP=6:"Treating Specialty",1:"Movement")_" Date was changed ***"
 .S IBC=IBC+1,IBT(IBC)=" Old Value: "_$S(IBVAL(2):$$DAT2^IBOUTL(+IBVAL(2)),1:" No Value")
 .S IBC=IBC+1,IBT(IBC)=" New Value: "_$S($P(IBVAL(2),"^",2):$$DAT2^IBOUTL($P(IBVAL(2),"^",2)),1:" No Value")
 .S IBC=IBC+1,IBT(IBC)=" "
 ;
 ; - set up instructions
 S IBC=IBC+1,IBT(IBC)="Means Test charges have been billed for this episode of care."
 I IBMTYP=3,DGPMA="" S IBC=IBC+1,IBT(IBC)="Please review these charges and use the Cancel/Edit/Add Patient Charges option",IBC=IBC+1,IBT(IBC)="to re-open the event record, if necessary, so that billing may resume." Q
 S IBC=IBC+1,IBT(IBC)="Please review these charges and"_$S(IBMTYP=1&(DGPMA=""):"",1:" edit or")_" cancel any charges if necessary."
 Q
 
--- Routine Detail   --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HIBAMTBU1   2768     printed  Sep 23, 2025@19:42:38                                                                                                                                                                                                    Page 2
IBAMTBU1  ;ALB/CPM - MEANS TEST BILLING BULLETINS (CON'T.) ; 09-APR-92
 +1       ;;2.0;INTEGRATED BILLING;**153**;21-MAR-94
 +2       ;;Per VHA Directive 10-93-142, this routine should not be modified.
 +3       ;
OE        ; Send bulletin when a Means Test copay vet, admitted for Observation
 +1       ; and Examination, is discharged, but has previously been billed
 +2       ; copayment and per diem charges.
 +3       ;   Input: DGPMA, DFN, DUZ
 +4       ;
 +5        KILL IBT
 +6        SET IBPT=$$PT^IBEFUNC(DFN)
 +7        SET XMSUB=$EXTRACT($PIECE(IBPT,"^"),1,14)_"  "_$PIECE(IBPT,"^",3)_" - O&E DISCHARGE"
 +8        SET IBT(1)="The following patient, admitted for Observation & Examination,"
 +9        SET IBT(2)="has been discharged:"
 +10       SET IBT(3)=" "
           SET IBC=3
 +11       SET IBDUZ=DUZ
           DO PAT^IBAERR1
 +12       SET IBC=IBC+1
           SET IBT(IBC)=" "
 +13       SET Y=$PIECE(DGPMA,"^")
           DO DD^%DT
 +14       SET IBC=IBC+1
           SET IBT(IBC)="Disc Date: "_Y
 +15       SET IBC=IBC+1
           SET IBT(IBC)=" "
 +16       SET IBC=IBC+1
           SET IBT(IBC)="This patient has already been charged Means Test copayment and per diem"
 +17       SET IBC=IBC+1
           SET IBT(IBC)="charges. The Integrated Billing 'event' action has automatically been"
 +18       SET IBC=IBC+1
           SET IBT(IBC)="closed. All Means Test charges for this admission must be manually"
 +19       SET IBC=IBC+1
           SET IBT(IBC)="cancelled, and the patient's billing clock must be manually adjusted."
 +20      ; deliver message and quit.
           GOTO SEND^IBAMTBU
 +21      ;
 +22      ;
DISP      ; Build before/after values, instructions for movement bulletins.
 +1        IF $DATA(IBVAL(1))
               Begin DoDot:1
 +2                SET IBC=IBC+1
                   SET IBT(IBC)="*** The Facility Treating Specialty was changed ***"
 +3                SET IBC=IBC+1
                   SET IBT(IBC)=" Old Value: "_$SELECT(IBVAL(1):$PIECE($GET(^DIC(45.7,+IBVAL(1),0)),"^"),1:" No value")
 +4                IF $PIECE(IBVAL(1),"^",2)
                       SET IBC=IBC+1
                       SET IBT(IBC)=$JUSTIFY("",12)_"(Billable Bedsection: "_$SELECT($DATA(^DGCR(399.1,+$PIECE(IBVAL(1),"^",2),0)):$PIECE(^(0),"^"),1:"Unknown")_")"
 +5                SET IBC=IBC+1
                   SET IBT(IBC)=" New Value: "_$SELECT($PIECE(IBVAL(1),"^",3):$PIECE($GET(^DIC(45.7,+$PIECE(IBVAL(1),"^",3),0)),"^"),1:" No value")
 +6                IF $PIECE(IBVAL(1),"^",4)
                       SET IBC=IBC+1
                       SET IBT(IBC)=$JUSTIFY("",12)_"(Billable Bedsection: "_$SELECT($DATA(^DGCR(399.1,+$PIECE(IBVAL(1),"^",4),0)):$PIECE(^(0),"^"),1:"Unknown")_")"
 +7                SET IBC=IBC+1
                   SET IBT(IBC)=" "
               End DoDot:1
 +8        IF $DATA(IBVAL(2))
               Begin DoDot:1
 +9                SET IBC=IBC+1
                   SET IBT(IBC)="*** The "_$SELECT(IBMTYP=6:"Treating Specialty",1:"Movement")_" Date was changed ***"
 +10               SET IBC=IBC+1
                   SET IBT(IBC)=" Old Value: "_$SELECT(IBVAL(2):$$DAT2^IBOUTL(+IBVAL(2)),1:" No Value")
 +11               SET IBC=IBC+1
                   SET IBT(IBC)=" New Value: "_$SELECT($PIECE(IBVAL(2),"^",2):$$DAT2^IBOUTL($PIECE(IBVAL(2),"^",2)),1:" No Value")
 +12               SET IBC=IBC+1
                   SET IBT(IBC)=" "
               End DoDot:1
 +13      ;
 +14      ; - set up instructions
 +15       SET IBC=IBC+1
           SET IBT(IBC)="Means Test charges have been billed for this episode of care."
 +16       IF IBMTYP=3
               IF DGPMA=""
                   SET IBC=IBC+1
                   SET IBT(IBC)="Please review these charges and use the Cancel/Edit/Add Patient Charges option"
                   SET IBC=IBC+1
                   SET IBT(IBC)="to re-open the event record, if necessary, so that billing may resume."
                   QUIT 
 +17       SET IBC=IBC+1
           SET IBT(IBC)="Please review these charges and"_$SELECT(IBMTYP=1&(DGPMA=""):"",1:" edit or")_" cancel any charges if necessary."
 +18       QUIT