1 | AFJXPNHX ;FO-OAKLAND/GMB-PURGE MSGS ;11/8/95
|
---|
2 | ;;5.1;Network Health Exchange;**1,6,11,17,20,24,31**;Jan 23, 1996
|
---|
3 | ; Totally rewritten 11/2001. (Previously FJ/CWS.)
|
---|
4 | ; Entry points:
|
---|
5 | ; ENTER - invoked by option AFJXNH PURGE NIGHTLY
|
---|
6 | ENTER ;
|
---|
7 | N AXCUTOFF
|
---|
8 | S AXCUTOFF=$$FMADD^XLFDT(DT,-7) ; Days to keep on file - OK to change
|
---|
9 | D NHX(AXCUTOFF)
|
---|
10 | D DELST
|
---|
11 | D NITE(AXCUTOFF)
|
---|
12 | Q
|
---|
13 | NHX(AXCUTOFF) ;
|
---|
14 | N AXNHEDUZ,AXBSKT,AXMZ,AXDATE,DUZ
|
---|
15 | S (DUZ,AXNHEDUZ)=$$FIND1^DIC(200,"","X","NETWORK,HEALTH EXCHANGE","B") Q:'AXNHEDUZ
|
---|
16 | S AXBSKT=.9
|
---|
17 | F S AXBSKT=$O(^XMB(3.7,AXNHEDUZ,2,AXBSKT)) Q:'AXBSKT D
|
---|
18 | . S AXMZ=0
|
---|
19 | . F S AXMZ=$O(^XMB(3.7,AXNHEDUZ,2,AXBSKT,1,AXMZ)) Q:'AXMZ D
|
---|
20 | . . S AXDATE=$P($G(^XMB(3.9,AXMZ,0)),U,3)
|
---|
21 | . . S AXDATE=$S(AXDATE[".":$P(AXDATE,".",1),1:$$CONVERT^XMXUTIL1(AXDATE))
|
---|
22 | . . I AXDATE'>AXCUTOFF D DELMSG^XMXAPI(AXNHEDUZ,"",AXMZ) Q
|
---|
23 | . . I $$NEW^XMXUTIL2(AXNHEDUZ,AXBSKT,AXMZ) D NONEW^XMXUTIL(AXNHEDUZ,AXBSKT,AXMZ)
|
---|
24 | Q
|
---|
25 | DELST ;
|
---|
26 | N AX25IEN,AX25REC,AXDOMIEN,AXDAYS,AXI,AXDTRCVD,DA,DIK,AXCUTOFF
|
---|
27 | S (AX25IEN,AXI)=0
|
---|
28 | F S AX25IEN=$O(^AFJ(537025,AX25IEN)) Q:'AX25IEN D
|
---|
29 | . S AX25REC=$G(^AFJ(537025,AX25IEN,0))
|
---|
30 | . S AXDOMIEN=$P(AX25REC,U),AXDAYS=$P(AX25REC,U,5) Q:AXDOMIEN=""!'AXDAYS
|
---|
31 | . S AXCUTOFF=$$FMADD^XLFDT(DT,-AXDAYS)
|
---|
32 | . F S AXI=$O(^AFJ(537000,"C",AXDOMIEN,AXI)) Q:'AXI D
|
---|
33 | . . S AXDTRCVD=$P($G(^AFJ(537000,AXI,0)),U,2) ; Date Received
|
---|
34 | . . I AXDTRCVD<AXCUTOFF S DIK="^AFJ(537000,",DA=AXI D ^DIK
|
---|
35 | Q
|
---|
36 | NITE(AXCUTOFF) ; Nightly purge of messages in the AFJX server baskets
|
---|
37 | N AXSRV,AXBSKT,AXMZ,AXDATE,XMZ,XMSER
|
---|
38 | F AXSRV="S.AFJXSERVER","S.AFJXNHDONE","S.AFJXNETP" D
|
---|
39 | . S AXBSKT=$$FIND1^DIC(3.701,",.5,","X",AXSRV,"B") Q:'AXBSKT
|
---|
40 | . S AXMZ=0
|
---|
41 | . F S AXMZ=$O(^XMB(3.7,.5,2,AXBSKT,1,AXMZ)) Q:'AXMZ D
|
---|
42 | . . I $G(^XMB(3.9,AXMZ,0))="" S XMZ=AXMZ,XMSER=AXSRV D REMSBMSG^XMA1C Q
|
---|
43 | . . S AXDATE=$P(^XMB(3.9,AXMZ,0),U,3)
|
---|
44 | . . S AXDATE=$S(AXDATE[".":$P(AXDATE,".",1),1:$$CONVERT^XMXUTIL1(AXDATE))
|
---|
45 | . . I AXDATE<AXCUTOFF S XMZ=AXMZ,XMSER=AXSRV D REMSBMSG^XMA1C
|
---|
46 | Q
|
---|