IBPUBUL ;ALB/CPM - ARCHIVE/PURGING BULLETIN ; 20-APR-92
;;Version 2.0 ; INTEGRATED BILLING ;; 21-MAR-94
;;Per VHA Directive 10-93-142, this routine should not be modified.
;
; Input: IBD (file) = piece 1: date through which to archive/purge
; piece 2: old log # to cancel
; piece 3: new log # created
; piece 4: error message
; IBOP = 1 - Search, 2 - Archiving, 3 - Purging
; DUZ = User ID
;
; - set up MailMan's variables
S XMSUB="INTEGRATED BILLING "_$P("SEARCH^ARCHIVING^PURGING","^",IBOP)_" OF BILLING DATA"
S XMDUZ="INTEGRATED BILLING PACKAGE",XMTEXT="IBT("
K XMY S XMY(DUZ)=""
;
; - build report header
K IBT S IBT(1)="The subject job has yielded the following results:"
S IBHDR="Search ^Archive^ Purge "
S IBT(2)=$J("",37)_$P(IBHDR,"^",IBOP)_$J("",11)_$P(IBHDR,"^",IBOP)_$J("",7)_"# Records"
S IBT(3)="File"_$J("",23)_"Log# Begin Date/Time End Date/Time "_$P(" Found^Archived^ Purged","^",IBOP)
S $P(IBT(4),"-",79)=""
;
; - write detail lines
S IBC=4,IBFILE=0 F S IBFILE=$O(IBD(IBFILE)) Q:'IBFILE S IBDAT=IBD(IBFILE) D
. S IBFILEN=$S($D(^DIC(IBFILE,0))#2:$P(^(0),"^"),1:"* UNKNOWN FILE *")
. S IBC=IBC+1,IBT(IBC)=IBFILEN_$J("",27-$L(IBFILEN))
. S IBT(IBC)=IBT(IBC)_$S($P(IBDAT,"^",3):$J($P(IBDAT,"^",3),4),1:" -- ")
. I $P(IBDAT,"^",4)]"" D Q
.. S IBT(IBC)=IBT(IBC)_" ** "_$S($P(IBDAT,"^",3):"LOG ENTRY HAS BEEN CANCELLED",$P(IBDAT,"^",3)=0:"LOG ENTRY WAS NOT CREATED",1:$P(IBDAT,"^",4))_" **"
.. I $P(IBDAT,"^",3)]"" S IBC=IBC+1,IBT(IBC)=" Error: >> "_$P(IBDAT,"^",4)_" <<"
.. S IBC=IBC+1,IBT(IBC)=" "
. S IBLOG0=$G(^IBE(350.6,+$P(IBDAT,"^",3),0)),IBLOGT=$G(^(IBOP))
. F I=1,2 S IBTIME=$P(IBLOGT,"^",I),IBT(IBC)=IBT(IBC)_" "_$S(IBTIME:$$DAT1^IBOUTL(IBTIME)_"@"_$P($$DAT2^IBOUTL(IBTIME),"@",2),1:"Not specified ")
. S IBT(IBC)=IBT(IBC)_" "_$J($P(IBLOG0,"^",4),5)
. S IBC=IBC+1,IBT(IBC)=" "
;
; - deliver bulletin
D ^XMD
K IBC,IBDAT,IBFILE,IBFILEN,IBHDR,IBLOG0,IBLOGT,IBT,IBTIME,XMDUZ,XMSUB,XMTEXT,XMY
Q
IBPUBUL ;ALB/CPM - ARCHIVE/PURGING BULLETIN ; 20-APR-92
+1 ;;Version 2.0 ; INTEGRATED BILLING ;; 21-MAR-94
+2 ;;Per VHA Directive 10-93-142, this routine should not be modified.
+3 ;
+4 ; Input: IBD (file) = piece 1: date through which to archive/purge
+5 ; piece 2: old log # to cancel
+6 ; piece 3: new log # created
+7 ; piece 4: error message
+8 ; IBOP = 1 - Search, 2 - Archiving, 3 - Purging
+9 ; DUZ = User ID
+10 ;
+11 ; - set up MailMan's variables
+12 SET XMSUB="INTEGRATED BILLING "_$PIECE("SEARCH^ARCHIVING^PURGING","^",IBOP)_" OF BILLING DATA"
+13 SET XMDUZ="INTEGRATED BILLING PACKAGE"
SET XMTEXT="IBT("
+14 KILL XMY
SET XMY(DUZ)=""
+15 ;
+16 ; - build report header
+17 KILL IBT
SET IBT(1)="The subject job has yielded the following results:"
+18 SET IBHDR="Search ^Archive^ Purge "
+19 SET IBT(2)=$JUSTIFY("",37)_$PIECE(IBHDR,"^",IBOP)_$JUSTIFY("",11)_$PIECE(IBHDR,"^",IBOP)_$JUSTIFY("",7)_"# Records"
+20 SET IBT(3)="File"_$JUSTIFY("",23)_"Log# Begin Date/Time End Date/Time "_$PIECE(" Found^Archived^ Purged","^",IBOP)
+21 SET $PIECE(IBT(4),"-",79)=""
+22 ;
+23 ; - write detail lines
+24 SET IBC=4
SET IBFILE=0
FOR
SET IBFILE=$ORDER(IBD(IBFILE))
IF 'IBFILE
QUIT
SET IBDAT=IBD(IBFILE)
Begin DoDot:1
+25 SET IBFILEN=$SELECT($DATA(^DIC(IBFILE,0))#2:$PIECE(^(0),"^"),1:"* UNKNOWN FILE *")
+26 SET IBC=IBC+1
SET IBT(IBC)=IBFILEN_$JUSTIFY("",27-$LENGTH(IBFILEN))
+27 SET IBT(IBC)=IBT(IBC)_$SELECT($PIECE(IBDAT,"^",3):$JUSTIFY($PIECE(IBDAT,"^",3),4),1:" -- ")
+28 IF $PIECE(IBDAT,"^",4)]""
Begin DoDot:2
+29 SET IBT(IBC)=IBT(IBC)_" ** "_$SELECT($PIECE(IBDAT,"^",3):"LOG ENTRY HAS BEEN CANCELLED",$PIECE(IBDAT,"^",3)=0:"LOG ENTRY WAS NOT CREATED",1:$PIECE(IBDAT,"^",4))_" **"
+30 IF $PIECE(IBDAT,"^",3)]""
SET IBC=IBC+1
SET IBT(IBC)=" Error: >> "_$PIECE(IBDAT,"^",4)_" <<"
+31 SET IBC=IBC+1
SET IBT(IBC)=" "
End DoDot:2
QUIT
+32 SET IBLOG0=$GET(^IBE(350.6,+$PIECE(IBDAT,"^",3),0))
SET IBLOGT=$GET(^(IBOP))
+33 FOR I=1,2
SET IBTIME=$PIECE(IBLOGT,"^",I)
SET IBT(IBC)=IBT(IBC)_" "_$SELECT(IBTIME:$$DAT1^IBOUTL(IBTIME)_"@"_$PIECE($$DAT2^IBOUTL(IBTIME),"@",2),1:"Not specified ")
+34 SET IBT(IBC)=IBT(IBC)_" "_$JUSTIFY($PIECE(IBLOG0,"^",4),5)
+35 SET IBC=IBC+1
SET IBT(IBC)=" "
End DoDot:1
+36 ;
+37 ; - deliver bulletin
+38 DO ^XMD
+39 KILL IBC,IBDAT,IBFILE,IBFILEN,IBHDR,IBLOG0,IBLOGT,IBT,IBTIME,XMDUZ,XMSUB,XMTEXT,XMY
+40 QUIT