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

IBCEM1.m

Go to the documentation of this file.
  1. IBCEM1 ;ALB/TMP - 837 EDI RETURN MESSAGE MAIN LIST TEMPLATE ;02-MAY-96
  1. ;;2.0;INTEGRATED BILLING;**137,155**;21-MAR-94
  1. ;
  1. EN ; Main entry point
  1. D DT^DICRW
  1. K XQORS,VALMEVL,IBFASTXT,IBDA
  1. D EN^VALM("IBCEM 837 MESSAGE LIST")
  1. K IBFASTXT,IBDA
  1. Q
  1. ;
  1. INIT ; -- set up inital variables
  1. S U="^",VALMCNT=0,VALMBG=1
  1. D BLD
  1. Q
  1. ;
  1. REBLD ; Set up formatted global
  1. ;
  1. BLD ; -- build list of messages
  1. N IBCNT,IBEOB,IBMSGT,IBMSG,X,IB0
  1. K ^TMP("IBCEM-837",$J),^TMP("IBCEM-837DX",$J)
  1. S (IBCNT,IBMSG,VALMCNT)=0,IBEOB=+$O(^IBE(364.3,"B","835EOB",0))
  1. F S IBMSG=$O(^IBA(364.2,IBMSG)) Q:'IBMSG S IB0=$G(^(IBMSG,0)) D
  1. . N IBSTOP
  1. . S IBSTOP=0
  1. . S IBMSGT=$P(IB0,U,2)
  1. . I IBMSGT,IBEOB,IBMSGT=IBEOB D Q:IBSTOP
  1. .. N Z,Z0 ; Only allow MRA EOB's to be viewed
  1. .. S Z=0 F S Z=$O(^IBA(364.2,IBMSG,2,Z)) Q:'Z!(IBSTOP) S Z0=$G(^(Z,0)) I $E(Z0,1,12)="##RAW DATA: ",$E(Z0,13,18)="835EOB",$P(Z0,U,5)'="Y" S IBSTOP=1 Q
  1. . ; -- add to list
  1. . S IBCNT=IBCNT+1,X=""
  1. . S X=$$SETFLD^VALM1(IBCNT,X,"NUMBER")
  1. . S X=$$SETFLD^VALM1($$FMTE^XLFDT($P(IB0,U,3),2),X,"DATEREC")
  1. . I IB0'="" S X=$$SETFLD^VALM1($$FMTE^XLFDT($P(IB0,U,10),2),X,"DATEMSG")
  1. . S X=$$SETFLD^VALM1(+IB0,X,"MENTRY")
  1. . S Z=$P($G(^IBE(364.3,+$P(IB0,U,2),0)),U,6) S:Z="EOB" Z="MRA"
  1. . S X=$$SETFLD^VALM1($E(Z_$J("",6),1,6),X,"TYPE")
  1. . S X=$$SETFLD^VALM1($P($G(^IBA(364.1,+$P(IB0,U,4),0)),U),X,"BATCH")
  1. . S X=$$SETFLD^VALM1($$BILLNO($P(IB0,U,5)),X,"BILL")
  1. . S X=$$SETFLD^VALM1($$EXPAND^IBTRE(364.2,.06,$P(IB0,U,6)),X,"STATUS")
  1. . D SET(X)
  1. ;
  1. I '$D(^TMP("IBCEM-837",$J)) S VALMCNT=2,IBCNT=2,^TMP("IBCEM-837",$J,1,0)=" ",^TMP("IBCEM-837",$J,2,0)=" All Incoming EDI Messages For Billing Have Filed - No Action Needed"
  1. Q
  1. ;
  1. FNL ; -- Clean up list
  1. K ^TMP("IBCEM-837DX",$J)
  1. D CLEAN^VALM10
  1. K IBFASTXT
  1. Q
  1. ;
  1. SET(X) ; -- set arrays for 837 return messages
  1. S VALMCNT=VALMCNT+1,^TMP("IBCEM-837",$J,VALMCNT,0)=X
  1. S ^TMP("IBCEM-837",$J,"IDX",VALMCNT,IBCNT)=""
  1. S ^TMP("IBCEM-837DX",$J,IBCNT)=VALMCNT_U_IBMSG
  1. Q
  1. ;
  1. BILLNO(DA) ; Return bill # from entry in file 364
  1. N Z
  1. S Z=$P($G(^DGCR(399,+$P($G(^IBA(364,+DA,0)),U),0)),U)
  1. Q $S($L(Z):Z,1:DA)
  1. ;
  1. BATNO(DA) ; Return batch # from entry in file 364
  1. Q $P($G(^IBA(364.1,+$P($G(^IBA(364,+DA,0)),U,2),0)),U)
  1. ;
  1. HDR ;
  1. S VALMHDR(1)=$J("",17)_"RETURN MESSAGES NEEDING TO BE FILED"
  1. S VALMHDR(2)=" "
  1. Q
  1. ;