[613] | 1 | IBOHRL ;ALB/EMG-AUTO-RELEASE CHARGES ON HOLD > 90 DAYS ;APR 11 1997
|
---|
| 2 | ;;2.0;INTEGRATED BILLING;**70,215**;21-MAR-94
|
---|
| 3 | ;
|
---|
| 4 | ;
|
---|
| 5 | EN ;
|
---|
| 6 | N DFN,IBDT,IBDUZ,IBDYS,IBEND,IBGRP,IBN,IBND,IBNOS,IBNUM,IBRCOUNT
|
---|
| 7 | N IBSEQNO,IBSTJB,IBT,IBTO,X,X1,X2,XMDUZ,XMSUB,XMTEXT,XMY
|
---|
| 8 | S IBQUIT=0
|
---|
| 9 | ;
|
---|
| 10 | D NOW^%DTC S IBSTJB=$$DAT2^IBOUTL(%)
|
---|
| 11 | ;***
|
---|
| 12 | K ^TMP($J)
|
---|
| 13 | D CHRGS
|
---|
| 14 | D:'$G(IBQUIT) REL,MAIL
|
---|
| 15 | ;***
|
---|
| 16 | EXIT ;
|
---|
| 17 | K ^TMP($J)
|
---|
| 18 | K DFN,IBDT,IBDUZ,IBDYS,IBEND,IBGRP,IBN,IBND,IBNOS,IBNUM,IBRCOUNT,IBDIFROM
|
---|
| 19 | K IBQUIT,IBSEQNO,IBSTJB,IBT,IBTO,X,X1,X2,XMDUZ,XMSUB,XMTEXT,XMY
|
---|
| 20 | Q
|
---|
| 21 | ;
|
---|
| 22 | CHRGS ; indexes charges on hold longer than the number specified in the NUMBER OF DAYS PT CHARGES HELD field (#7.04) of file #350.9
|
---|
| 23 | ;
|
---|
| 24 | S IBDYS=$P($G(^IBE(350.9,1,7)),U,4)
|
---|
| 25 | I IBDYS="" S IBQUIT=1 D E4^IBAERR Q ;quit/send notice if number of days held is unknown
|
---|
| 26 | S X1=DT,X2=-(IBDYS+1) D C^%DTC S IBTO=X
|
---|
| 27 | S DFN=0 F S DFN=$O(^IB("AHDT",DFN)) Q:'DFN S IBDT=0 F S IBDT=$O(^IB("AHDT",DFN,8,IBDT)) Q:'IBDT!(IBDT>IBTO) S IBN=0 F S IBN=$O(^IB("AHDT",DFN,8,IBDT,IBN)) Q:IBN="" D
|
---|
| 28 | .S IBND=$G(^IB(IBN,0)) Q:'IBND
|
---|
| 29 | .Q:$P(IBND,"^",5)'=8
|
---|
| 30 | .S ^TMP($J,"IBHOLD",DFN,IBN)=""
|
---|
| 31 | .Q
|
---|
| 32 | Q
|
---|
| 33 | REL ; release charges to AR
|
---|
| 34 | S (DFN,IBNUM,IBSEQNO,IBNOS)="",IBSEQNO=1,IBRCOUNT=0
|
---|
| 35 | S DFN=0 F S DFN=$O(^TMP($J,"IBHOLD",DFN)) Q:'DFN S IBNUM=0 F S IBNUM=$O(^TMP($J,"IBHOLD",DFN,IBNUM)) Q:'IBNUM D
|
---|
| 36 | .S IBNOS=IBNUM
|
---|
| 37 | .S IBDUZ=$P($G(^IB(IBNOS,1)),U) I IBDUZ="" S IBDUZ=DUZ
|
---|
| 38 | .D ^IBR
|
---|
| 39 | .I $P($G(^IB(IBNUM,0)),"^",5)=3 D
|
---|
| 40 | ..S IBRCOUNT=IBRCOUNT+1
|
---|
| 41 | ..I $G(IBR60) S IBNDE=^IB(IBNUM,0) D IVM^IBAMTV32(IBNDE) K IBNDE
|
---|
| 42 | .Q
|
---|
| 43 | Q
|
---|
| 44 | ;
|
---|
| 45 | MAIL ; send bulletin when job is complete
|
---|
| 46 | D NOW^%DTC S IBEND=$$DAT2^IBOUTL(%)
|
---|
| 47 | S XMSUB=$S($G(IBR60):"CHARGES PENDING REIVEW",1:"HELD CHARGES")_" PASSED TO AR "_$P(IBSTJB,"@",1)
|
---|
| 48 | S XMDUZ="INTEGRATED BILLING PACKAGE",IBDUZ=DUZ
|
---|
| 49 | K IBT,XMY
|
---|
| 50 | S IBGRP=$P($G(^XMB(3.8,+$P($G(^IBE(350.9,1,0)),"^",11),0)),"^")
|
---|
| 51 | I IBGRP]"" S XMY("G."_IBGRP_"@"_^XMB("NETNAME"))=""
|
---|
| 52 | S XMTEXT="IBT("
|
---|
| 53 | S XMY(IBDUZ)=""
|
---|
| 54 | S IBT(1)="The job that passes "_$S($G(IBR60):"charges pending review",1:"held charges")_" to accounts receivable is complete."
|
---|
| 55 | S IBT(2)="[ "_IBRCOUNT_" ] charge"_$S(IBRCOUNT=1:" has",1:"s have")_" been passed to accounts receivable."
|
---|
| 56 | S IBT(3)=" "
|
---|
| 57 | S IBT(4)="Job started on "_$P(IBSTJB,"@",1)_" at "_$P(IBSTJB,"@",2)
|
---|
| 58 | S IBT(5)="Job finished on "_$P(IBEND,"@",1)_" at "_$P(IBEND,"@",2)
|
---|
| 59 | S IBT(6)=" "
|
---|
| 60 | S IBT(7)=" "
|
---|
| 61 | I IBRCOUNT>0 D
|
---|
| 62 | .S IBT(8)="* Use option 'On Hold/Hold-Review Charges Released to AR' to print a detailed"
|
---|
| 63 | .S IBT(9)=" list of charges auto-released by this tasked job."
|
---|
| 64 | ;
|
---|
| 65 | I $G(DIFROM) S IBDIFROM=DIFROM K DIFROM
|
---|
| 66 | D ^XMD
|
---|
| 67 | I $G(IBDIFROM) S DIFROM=IBDIFROM
|
---|
| 68 | Q
|
---|