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

DGENCDA.m

Go to the documentation of this file.
  1. DGENCDA ;ALB/CJM,Zoltan,JAN,BRM,TDM,DJS - Catastrophic Disability API - Retrieve Data;May 24, 1999;Nov 14, 2001 ; 9/19/05 11:35am
  1. ;;5.3;Registration;**121,147,232,387,451,653,894,992**;Aug 13,1993;Build 5
  1. ;
  1. ; DG*5.3*894 - Enhance Catastrophic Disability to use Descriptors rather than Diagnoses/Procedures/Conditions.
  1. ;
  1. GET(DFN,DGCDIS) ;
  1. ;Description: Get catastrophic disability information for a patient
  1. ;Input:
  1. ; DFN - Patient IEN
  1. ;Output:
  1. ; DGCDIS - the catastrophic disability array, passed by reference
  1. ; subscripts:
  1. ; "BY" Decided By
  1. ; "DATE" Date of Decision
  1. ; "FACDET" Facility Making Determination
  1. ; "REVDTE" Review Date
  1. ; "VETREQDT" Date Veteran Requested CD Evaluation
  1. ; "DTFACIRV" Date Facility Initiated Review
  1. ; "DTVETNOT" Date Veteran Was Notified
  1. ;
  1. N SUB,ITEM,SITEM,SIEN,IND
  1. K DGCDIS S DGCDIS=""
  1. I '$G(DFN) D Q 0
  1. . F SUB="VCD","BY","DATE","FACDET","REVDTE","METDET","VETREQDT","DTFACIRV","DTVETNOT" S DGCDIS(SUB)=""
  1. ; .39 VETERAN CATASTROPHICALLY DISABLED? field.
  1. S DGCDIS("VCD")=$P($G(^DPT(DFN,.39)),"^",6)
  1. ; .391 DECIDED BY field.
  1. S DGCDIS("BY")=$P($G(^DPT(DFN,.39)),"^",1)
  1. ; .392 DATE OF DECISION field.
  1. S DGCDIS("DATE")=$P($G(^DPT(DFN,.39)),"^",2)
  1. ; .393 FACILITY MAKING DETERMINATION field.
  1. S DGCDIS("FACDET")=$P($G(^DPT(DFN,.39)),"^",3)
  1. ; .394 REVIEW DATE field.
  1. S DGCDIS("REVDTE")=$P($G(^DPT(DFN,.39)),"^",4)
  1. ; .395 METHOD OF DETERMINATION field.
  1. S DGCDIS("METDET")=$P($G(^DPT(DFN,.39)),"^",5)
  1. ; .3951 DATE VETERAN REQUESTED CD EVAL
  1. S DGCDIS("VETREQDT")=$P($G(^DPT(DFN,.39)),"^",7)
  1. ; .3952 DATE FACILITY INITIATED REVIEW
  1. S DGCDIS("DTFACIRV")=$P($G(^DPT(DFN,.39)),"^",8)
  1. ; .3953 DATE VETERAN WAS NOTIFIED
  1. S DGCDIS("DTVETNOT")=$P($G(^DPT(DFN,.39)),"^",9)
  1. S SIEN=0
  1. F ITEM=1:1 S SIEN=$O(^DPT(DFN,.396,SIEN)) Q:'SIEN D
  1. . ; .01 CD STATUS DIAGNOSES sub-field.
  1. . S DGCDIS("DIAG",ITEM)=$P($G(^DPT(DFN,.396,SIEN,0)),"^",1)
  1. ; .397 CD STATUS PROCEDURES field (multiple):
  1. S (ITEM,SITEM,SIEN)=0
  1. F S ITEM=$O(^DPT(DFN,.397,"B",ITEM)) Q:'ITEM D
  1. . S IND=0,SIEN=SIEN+1
  1. . F S SITEM=$O(^DPT(DFN,.397,"B",ITEM,SITEM)) Q:'SITEM D
  1. . . ; .01 CD STATUS PROCEDURES sub-field.
  1. . . S DGCDIS("PROC",SIEN)=$P($G(^DPT(DFN,.397,SITEM,0)),"^",1)
  1. . . ; 1 AFFECTED EXTREMITY sub-field.
  1. . . S DGCDIS("EXT",SIEN)=$P($G(^DPT(DFN,.397,SITEM,0)),"^",2)
  1. . . S IND=IND+1,DGCDIS("EXT",SIEN,IND)=$P($G(^DPT(DFN,.397,SITEM,0)),"^",2)
  1. ; - .398 CD STATUS CONDITIONS field (multiple):
  1. S SIEN=0
  1. F ITEM=1:1 S SIEN=$O(^DPT(DFN,.398,SIEN)) Q:'SIEN D
  1. . ; .01 CD STATUS CONDITIONS sub-field.
  1. . S DGCDIS("COND",ITEM)=$P($G(^DPT(DFN,.398,SIEN,0)),"^",1)
  1. . ; 1 SCORE sub-field.
  1. . S DGCDIS("SCORE",ITEM)=$P($G(^DPT(DFN,.398,SIEN,0)),"^",2)
  1. . ; 2 PERMANENT INDICATOR sub-field.
  1. . S DGCDIS("PERM",ITEM)=$P($G(^DPT(DFN,.398,SIEN,0)),"^",3)
  1. S SIEN=0
  1. F ITEM=1:1 S SIEN=$O(^DPT(DFN,.401,SIEN)) Q:'SIEN D ;DG*5.3*894
  1. . ; .401 CD DESCRIPTORS field (multiple):
  1. . S DGCDIS("DESCR",ITEM)=$P($G(^DPT(DFN,.401,SIEN,0)),"^",1)
  1. Q 1
  1. ;
  1. DISABLED(DFN) ;
  1. ;Description: Returns whether the patient is catastrophically disabled.
  1. ;
  1. ;Input:
  1. ; DFN - Patient IEN
  1. ;Output:
  1. ; Function Value - returns 1 if the patient is catastrophically
  1. ; disabled, otherwise 0
  1. ;
  1. Q $$HASCAT(DFN)
  1. ;
  1. HASCAT(DFN) ;
  1. ;Description: returns 1 if the patient is CATASTROPHICALLY DISABLED
  1. ;
  1. Q:'$G(DFN) 0
  1. Q $P($G(^DPT(DFN,.39)),"^",6)="Y"
  1. ;
  1. CHKSITE(DFN) ;is this the facility that made the CD determination?
  1. ;
  1. ;Input:
  1. ; DFN - Patient IEN
  1. ;Output:
  1. ; Function Value - returns 1 if CD evaluation was entered at local
  1. ; site, otherwise 0^SITE #
  1. ;
  1. Q:'$G(DFN) 0
  1. N SITE,DGDIV,DGSITE,DGSDIV
  1. S DGSITE=DUZ(2)
  1. S (DGDIV,DGSDIV)=0
  1. F S DGDIV=$O(^DG(40.8,DGDIV)) D Q:DGSDIV
  1. . I $P(^DG(40.8,DGDIV,0),"^",7)=DGSITE S DGSDIV=DGDIV
  1. S SITE=$$SITE^VASITE(,DGSDIV)
  1. Q:$P($G(^DPT(DFN,.39)),"^",3)=$P(SITE,"^") 1
  1. Q "0^"_$P($G(^DPT(DFN,.39)),"^",3)
  1. ;
  1. CDTYPE(DFN) ; Was the method of determination "Physical Exam"?
  1. ;
  1. ;Input:
  1. ; DFN - Patient IEN
  1. ;Output:
  1. ; Function Value - returns 1 if CD='Yes' & Method='Physical Exam'
  1. ; otherwise 0
  1. ;
  1. Q:'$G(DFN) 0
  1. Q:'$$HASCAT(DFN) 0
  1. Q $P($G(^DPT(DFN,.39)),"^",5)=3
  1. ;