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

PXBGCPT.m

Go to the documentation of this file.
  1. PXBGCPT ;ISL/JVS - GATHER CPT ;7/16/96 11:41
  1. ;;1.0;PCE PATIENT CARE ENCOUNTER;**73**;Aug 12, 1996
  1. ;
  1. CPT(VISIT) ;--Gather the entries in the V CPT file
  1. ;
  1. N IEN,QUANTITY,PROVIDER,NARR,CPT,GROUP,PXBC
  1. N DIC,DR,DA,DIQ
  1. N PXSFIL,PXSIEN,PXMOD
  1. ;
  1. K ^TMP("PXBU",$J),VAUGHN,CPT,PXBKY,PXBSAM,PXBSKY,PXBPRV
  1. I $D(^AUPNVCPT("AD",VISIT)) D
  1. .S IEN=0
  1. .F S IEN=$O(^AUPNVCPT("AD",VISIT,IEN)) Q:IEN'>0 D
  1. ..S ^TMP("PXBU",$J,"CPT",IEN)=""
  1. ;
  1. A ;--Set array with CPT codes and associated modifiers
  1. ;
  1. I $D(^TMP("PXBU",$J,"CPT")) D
  1. .S IEN=0
  1. .F S IEN=$O(^TMP("PXBU",$J,"CPT",IEN)) Q:IEN'>0 D
  1. ..N VAUGHN
  1. ..D GETS^DIQ(9000010.18,IEN,".01;.16;1204;.04;1*","E","VAUGHN")
  1. ..S CPT=$G(VAUGHN(9000010.18,IEN_",",".01","E"))
  1. ..S QUANTITY=$G(VAUGHN(9000010.18,IEN_",",".16","E"))
  1. ..S PROVIDER=$G(VAUGHN(9000010.18,IEN_",","1204","E"))
  1. ..S NARR=$E($G(VAUGHN(9000010.18,IEN_",",".04","E")),1,29)
  1. ..I NARR="" S NARR=$$GET1^DIQ(81,CPT,2)
  1. ..D CASE^PXBUTL
  1. ..S GROUP=CPT_"^"_QUANTITY_"^"_PROVIDER_"^"_NARR
  1. ..S CPT(CPT,IEN)=GROUP
  1. ..S PXSFIL=9000010.181
  1. ..S PXSIEN=""
  1. ..F S PXSIEN=$O(VAUGHN(PXSFIL,PXSIEN)) Q:PXSIEN="" D
  1. ...S PXMOD=VAUGHN(PXSFIL,PXSIEN,.01,"E")
  1. ...S CPT(CPT,IEN,"MOD",+PXSIEN)=PXMOD
  1. ;
  1. B ;--Add line numbers
  1. ;
  1. I $D(CPT) D
  1. .S PXBC=0,CPT=""
  1. .F S CPT=$O(CPT(CPT)) Q:CPT="" D
  1. ..S IEN=0
  1. ..F S IEN=$O(CPT(CPT,IEN)) Q:IEN="" S PXBC=PXBC+1 D
  1. ...S PXBKY(CPT,PXBC)=$G(CPT(CPT,IEN))
  1. ...S PXBSAM(PXBC)=$G(CPT(CPT,IEN))
  1. ...S PXBSKY(PXBC,IEN)=""
  1. ...S PXSIEN=0
  1. ...F S PXSIEN=$O(CPT(CPT,IEN,"MOD",PXSIEN)) Q:PXSIEN="" D
  1. ....S PXBKY(CPT,PXBC,"MOD",PXSIEN)=CPT(CPT,IEN,"MOD",PXSIEN)
  1. ....S PXBSAM(PXBC,"MOD",PXSIEN)=CPT(CPT,IEN,"MOD",PXSIEN)
  1. ...I $P($G(CPT(CPT,IEN)),"^",3)]"" D
  1. ....S PXBPRV($P($G(CPT(CPT,IEN)),"^",3),$P($G(CPT(CPT,IEN)),"^",1),IEN,PXBC)=QUANTITY
  1. EXIT ;--KILL
  1. K ^TMP("PXBU",$J),VAUGHN
  1. S PXBCNT=+$G(PXBC)
  1. Q
  1. ;