Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: IBCEMSG1

IBCEMSG1.m

Go to the documentation of this file.
  1. IBCEMSG1 ;ALB/JEH - EDI PURGE STATUS MESSAGES CONT. ;04-MAY-01
  1. ;;2.0;INTEGRATED BILLING;**137**;21-MAR-94
  1. ;;Per VHA Directive 10-93-142, this routine should not be modified.
  1. ;
  1. EN ; - main entry
  1. N IBDELDT,IBIEN,IBMSG,IBSORT,IBQUIT,IBFNR,IBFRD,IBREC,IBNUM,IBSEV,IB0,IBK
  1. D EN^VALM("IBCEM STATUS MESSAGE")
  1. Q
  1. HDR ; -- header code
  1. S VALMHDR(1)="Selected by "_$S(IBSORT="A":"Auto Filed/No Review",IBSORT="B":"Bill Number: "_IBNUM,IBSORT="S":"Message Severity: "_IBSEV,1:"Message Text containing word or phrase "_IBMSG)
  1. S VALMHDR(2)="Reviewed Prior to: "_$$FMTE^XLFDT(IBDELDT,"2D")
  1. Q
  1. ;
  1. INIT ; -- set up variables
  1. N DIR,X,Y
  1. K ^TMP("IBCEMSGA",$J)
  1. S DIR("A")="Select messages based on"
  1. S DIR(0)="S^A:Auto Filed/No Review Only;B:Bill Number;S:Message Severity;T:Specific Message Text"
  1. D ^DIR K DIR
  1. I $D(DTOUT)!$D(DUOUT)!(Y<0) S VALMQUIT=1 G INITQ
  1. S IBSORT=Y
  1. I IBSORT="B" D G:$G(VALMQUIT) INITQ
  1. . S DIR("A")="Enter Bill Number"
  1. . S DIR(0)="P^361:AEMQZ"
  1. . D ^DIR K DIR
  1. . I $D(DTOUT)!$D(DUOUT)!(Y<0) S VALMQUIT=1 Q
  1. . S IBIEN=$P(Y,U,2),IBNUM=$$BN1^PRCAFN(IBIEN)
  1. I IBSORT="S" D G:$G(VALMQUIT) INITQ
  1. . S DIR("A")="(I)nformation/Warning or (R)ejection"
  1. . S DIR(0)="SB^I:Information/Warning;R:Rejection"
  1. . D ^DIR K DIR
  1. . I $D(DUOUT)!$D(DTOUT)!(Y<0) S VALMQUIT=1 Q
  1. . S IBSEV=Y
  1. I IBSORT="T" D G:$G(VALMQUIT) INITQ
  1. . S DIR("A")="Enter specific word or phrase the message should contain to be deleted"
  1. . S DIR(0)="F^5:15^K:X'?.U X"
  1. . D ^DIR K DIR
  1. . I $D(DUOUT)!$D(DTOUT)!(Y<0) S VALMQUIT=1 Q
  1. . S IBMSG=Y
  1. S DIR("A")="INCLUDE STATUS MESSAGES REVIEWED PRIOR TO"
  1. S DIR(0)="D^:DTP:EX" W ! D ^DIR K DIR
  1. I $D(DTOUT)!$D(DUOUT) S VALMQUIT=1 Q
  1. S IBDELDT=Y
  1. D @IBSORT
  1. D BLD^IBCEMSG2
  1. INITQ ;
  1. Q
  1. HELP ; -- help code
  1. S X="?" D DISP^XQORM1 W !!
  1. Q
  1. EXIT ; -- clean up and exit
  1. K ^TMP("IBCEMSGA",$J),^TMP("IBCEMSGB",$J)
  1. D CLEAN^VALM10
  1. Q
  1. A ; -- sort by auto filed
  1. S IBK=0 F S IBK=$O(^IBM(361,"ANR",1,IBK)) Q:'IBK S IB0=$G(^IBM(361,IBK,0)) D
  1. . I '$P(IB0,U,13)!($P(IB0,U,13)>IBDELDT) Q
  1. . D SET
  1. Q
  1. ;
  1. B ; -- sort by bill number
  1. S IBK=0 F S IBK=$O(^IBM(361,"B",IBIEN,IBK)) Q:'IBK S IB0=$G(^IBM(361,IBK,0)) D
  1. . I '$P(IB0,U,13)!($P(IB0,U,13)>IBDELDT) Q
  1. . D SET
  1. Q
  1. ;
  1. S ; -- sort by message severity
  1. S IBK=0 F S IBK=$O(^IBM(361,"ASV",IBSEV,IBK)) Q:'IBK S IB0=$G(^IBM(361,IBK,0)) D
  1. . I '$P(IB0,U,13)!($P(IB0,U,13)>IBDELDT) Q
  1. . D SET
  1. Q
  1. ;
  1. T ; -- sort by message text
  1. N Z,IBTXT,IB,IBDT
  1. S IBDT=0 F S IBDT=$O(^IBM(361,"AFR",IBDT)) Q:'IBDT!(IBDT>IBDELDT) S IBK=0 F S IBK=$O(^IBM(361,"AFR",IBDT,IBK)) Q:'IBK S IB0=$G(^IBM(361,IBK,0)) D
  1. . I '$O(^IBM(361,IBK,1,0)) Q
  1. . S IB=0 F S IB=$O(^IBM(361,IBK,1,IB)) Q:'IB S Z=$G(^IBM(361,IBK,1,IB,0)) I $$UPPER^VALM1(Z)[IBMSG S IBTXT=$E(Z,1,60) D
  1. .. D SET
  1. .. S ^TMP("IBCEMSGA",$J,IBK)=^TMP("IBCEMSGA",$J,IBK)_U_IBTXT
  1. Q
  1. ;
  1. SET S IBNUM=$$BN1^PRCAFN($P(IB0,U))
  1. S IBSEV=$$EXPAND^IBTRE(361,.03,$P(IB0,U,3))
  1. S IBFNR=$$EXPAND^IBTRE(361,.1,$P(IB0,U,10))
  1. S IBFRD=$$DAT1^IBOUTL($P(IB0,U,13))
  1. S IBAUTO=$$EXPAND^IBTRE(361,.14,$P(IB0,U,14))
  1. S ^TMP("IBCEMSGA",$J,IBK)=IBNUM_U_IBSEV_U_IBFNR_U_IBFRD_U_IBAUTO
  1. Q