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

IBCEP9A.m

Go to the documentation of this file.
  1. IBCEP9A ;ALB/CXW - PROVIDER EXTRACT ;26-SEP-00
  1. ;;2.0;INTEGRATED BILLING;**137**;21-MAR-94
  1. ; This routine is to build an extract file with provider information
  1. ; by looking at different file sources
  1. ; DBIA's used: DBIA418, DBIA419, 2546
  1. ;
  1. START(IBRAW) ; Extract a list of providers from existing VistA data
  1. ; IBRAW = 0 or "" if display format
  1. ; = 1 if raw data format
  1. ; Variables:
  1. ; IBYR1/IBYR3 - the first date of next year
  1. ; IBYR2 - the last date two years ago
  1. ; IBPID - provider entry number
  1. ; HFLE - host file name
  1. ;
  1. N IBCONT,IBYR1,IBYR2,IBYR3,IBPTF,IBPID,IBPINT,IBDFN,IBDT,IBIEN
  1. S IBCONT=0,IBRAW=$G(IBRAW)
  1. D NOW^%DTC
  1. S (IBYR1,IBYR3)=$E(X,1,3)+1_"0101"
  1. S IBYR2=$E(X,1,3)-2_"1230"
  1. K ^TMP("IBPID",$J)
  1. D PTF,VST
  1. Q:IBRAW
  1. D DATA
  1. I '$D(^TMP("IBPID",$J)) W "No data found"
  1. Q
  1. ;
  1. PTF ;PTF (file 45/field 50) with admission within last two years DBIA419
  1. F S IBYR1=$O(^DGPM("AMV1",IBYR1),-1) Q:'IBYR1!(IBYR1\1<IBYR2) S IBDFN=0 F S IBDFN=$O(^DGPM("AMV1",IBYR1,IBDFN)) Q:'IBDFN S IBIEN=0 F S IBIEN=$O(^DGPM("AMV1",IBYR1,IBDFN,IBIEN)) Q:'IBIEN D
  1. . ; DBIA418
  1. . S IBPTF=+$P($G(^DGPM(IBIEN,0)),U,16)
  1. . Q:'IBPTF
  1. . S IBPID=$G(^DGPT(IBPTF,70)),IBPID=$P(IBPID,"^",15)
  1. . I IBPID S ^TMP("IBPID",$J,IBPID)=""
  1. . ;501 movement (file 45.02)
  1. . S IBDT=0 F S IBDT=$O(^DGPT(IBPTF,"M","AM",IBDT)) Q:'IBDT S IBPINT=0 F S IBPINT=$O(^DGPT(IBPTF,"M","AM",IBDT,IBPINT)) Q:'IBPINT D
  1. .. S IBPID=$G(^DGPT(IBPTF,"M",IBPINT,"P")),IBPID=$P(IBPID,"^",5)
  1. .. I IBPID S ^TMP("IBPID",$J,IBPID)=""
  1. Q
  1. ;
  1. VST ; get providers associated with outpatient encntrs within the last 2 yrs
  1. ;
  1. N IBVAL,IBCBK
  1. S IBVAL("BDT")=IBYR2,IBVAL("EDT")=IBYR3
  1. S IBCBK="D VSTPRV^IBCEP9A(Y)"
  1. D SCAN^IBSDU("DATE/TIME",.IBVAL,"",IBCBK,1) ; Get all encntrs in dt rnge
  1. Q
  1. ;
  1. VSTPRV(IBOE) ; Get all providers for an encounter IBOE
  1. N IBPID,Z
  1. D GETPRV^SDOE(IBOE,"IBPID")
  1. S Z=0 F S Z=$O(IBPID(Z)) Q:'Z I +IBPID(Z) S ^TMP("IBPID",$J,+IBPID(Z))=""
  1. Q
  1. ;
  1. DATA ;store data in file
  1. N IBNAM,IBSSN,IBDGE
  1. S IBPID=0
  1. F S IBPID=$O(^TMP("IBPID",$J,IBPID)) Q:'IBPID D
  1. . S IBNAM=$P($G(^VA(200,IBPID,0)),"^")
  1. . S IBSSN=$P($G(^VA(200,IBPID,1)),"^",9)
  1. . S IBDGE=$P($G(^VA(200,IBPID,3.1)),"^",6)
  1. . S ^TMP("IBPID",$J,IBPID)=IBNAM_$J("",40-$L(IBNAM))_IBSSN_$J("",9-$L(IBSSN))_IBDGE_$J("",10-$L(IBDGE))
  1. Q
  1. ;