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
|
---|