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

IBFBWL4.m

Go to the documentation of this file.
  1. IBFBWL4 ;ALB/PAW-IB BILLING Worklist History ;30-SEP-2015
  1. ;;2.0;INTEGRATED BILLING;**554**;21-MAR-94;Build 81
  1. ;Per VA Directive 6402, this routine should not be modified.
  1. ;
  1. EN ; -- main entry point for IB BILLING WORKLIST HISTORY
  1. D EN^VALM("IB BILLING WORKLIST HISTORY")
  1. Q
  1. ;
  1. HDR ; -- header code
  1. N IBSS,IBSSX,IBSSLE,IBSSLS
  1. S VALM("TITLE")=" Worklist History"
  1. S IBSSX=$$GET1^DIQ(2,DFN_",",.09,"I"),IBSSLE=$L(IBSSX),IBSSLS=6 I $E(IBSSX,IBSSLE)="P" S IBSSLS=5
  1. S IBSS=$E(IBNAME,1)_$E(IBSSX,IBSSLS,IBSSLE)
  1. S VALMHDR(2)=" PATIENT: "_IBNAME_" (ID: "_IBSS_")"
  1. Q
  1. ;
  1. INIT ; -- init variables and list array
  1. ; input - ^TMP("IBFBWH",$J,IBA)=IBHDT^IBHLG^IBHUSR
  1. ; output - Worklist History Screen for one Patient / Auth
  1. N IBA,IBHDT,IBHLG,IBLN,IBRUR,IBRURT,IBUSR,LINE,VCNT
  1. S (VCNT,VALMCNT)=0
  1. S IBA=""
  1. F S IBA=$O(^TMP("IBFBWH",$J,IBA)) Q:+IBA=0 D
  1. . S IBRURT=""
  1. . S IBLN=^TMP("IBFBWH",$J,IBA)
  1. . S IBHDT=$P(IBLN,U,1)
  1. . S IBHLG=$P($P(IBLN,U,2),"|")
  1. . I IBHLG["RUR-NextRevDt" S IBHLG=$P(IBHLG,"/",1,2)
  1. . S IBRUR=$P($P(IBLN,U,2),"|",2)
  1. . I IBRUR'="" D RUR
  1. . S IBUSR=$P(IBLN,U,3)
  1. . I IBUSR="" S IBUSR="SYSTEM"
  1. . E S IBUSR=$$GET1^DIQ(200,IBUSR_",",.01)
  1. . S VCNT=VCNT+1
  1. . S LINE=$$SETL("",VCNT,"",1,4) ;line#
  1. . D BLD
  1. Q
  1. ;
  1. RUR ; Determine RUR Reason Code
  1. S IBRURT=$S(IBRUR=1:"Pending Payer Action",IBRUR=2:"Addl Info Req - FR",IBRUR=3:"Auth Not Req - SC/SA",IBRUR=4:"AuthNotReq-PayerCont",1:"")
  1. Q:IBRURT'=""
  1. S IBRURT=$S(IBRUR=5:"Auth Not Required",IBRUR=6:"Auth Obtained",IBRUR=7:"Cont Stay Review",IBRUR=8:"Discharge Rev Req",1:"")
  1. Q:IBRURT'=""
  1. S IBRURT=$S(IBRUR=9:"Part SC-Auth Worked",IBRUR=10:"PartStay/VisitAppd",IBRUR=11:"Auth Denied",1:"")
  1. Q:IBRURT'=""
  1. S IBRURT=$S(IBRUR=12:"AuthNotObt/NoROI/FR",IBRUR=13:"EOC SC/SA",IBRUR=14:"EOC Non SC/SA",1:"")
  1. Q:IBRURT'=""
  1. S IBRURT=$S(IBRUR=15:"NeedAddlInfo-RefToFR",IBRUR=16:"EOC R/T Legal",IBRUR=17:"EOCNotR/TLegal-NoOHI",1:"")
  1. Q:IBRURT'=""
  1. S IBRURT=$S(IBRUR=18:"EOCNotLegal-OHI SCSA",IBRUR=19:"EOCNotLeg-OHINonSCSA",1:"")
  1. Q
  1. ;
  1. BLD ; build data to display
  1. S LINE=$$SETL(LINE,IBHDT,"",5,8)
  1. S LINE=$$SETL(LINE,IBHLG,"",14,20)
  1. S LINE=$$SETL(LINE,IBRURT,"",35,20)
  1. S LINE=$$SETL(LINE,IBUSR,"",56,23)
  1. S VALMCNT=VALMCNT+1
  1. D SET^VALM10(VALMCNT,LINE,VCNT)
  1. Q
  1. ;
  1. SETL(LINE,DATA,LABEL,COL,LNG) ; Creates a line of data to be set into the body
  1. ; of the worklist
  1. ; Input: LINE - Current line being created
  1. ; DATA - Information to be added to the end of the current line
  1. ; LABEL - Label to describe the information being added
  1. ; COL - Column position in line to add information add
  1. ; LNG - Maximum length of data information to include on the line
  1. ; Returns: Line updated with added information
  1. S LINE=LINE_$J("",(COL-$L(LABEL)-$L(LINE)))_LABEL_$E(DATA,1,LNG)
  1. Q LINE
  1. ;
  1. HELP ; -- help code
  1. N X
  1. S X="?" D DISP^XQORM1 W !!
  1. Q
  1. ;
  1. EXIT ; -- exit code
  1. D ^%ZISC
  1. S VALMBCK="R" Q
  1. Q