[613] | 1 | MCARUTL4 ;HOIFO/WAA-Utility Routine #3;03/06/01 15:00
|
---|
| 2 | ;;2.3;Medicine;**32**;09/13/1996
|
---|
| 3 | ;;
|
---|
| 4 | RPTAGE(FN,IEN) ; This function will return the age of the patient
|
---|
| 5 | ; at the time of the report and pass it back.
|
---|
| 6 | N RPTAGE,ERROR
|
---|
| 7 | S RPTAGE="",ERROR=0
|
---|
| 8 | S FN=$G(FN) I FN="" S ERROR=1 ; Ensure that the FN is defined
|
---|
| 9 | S IEN=$G(IEN) I IEN="" S ERROR=1 ; Ensure that the IEN is defined
|
---|
| 10 | I FN=690 S ERROR=1 ; Keep from looking up on Medical patient file
|
---|
| 11 | I FN<690!(FN>701) S ERROR=1 ; Make sure that the lookup is within range
|
---|
| 12 | I FN=697.2 S ERROR=1 ; Keep from looking up on procedure file
|
---|
| 13 | I ERROR G QT ; there was an error so quit
|
---|
| 14 | E S LN=$G(^MCAR(FN,IEN,0)) ; Ensure that there is an entry in the file
|
---|
| 15 | I LN'="" D
|
---|
| 16 | .N DFN,BDATE,RDATE
|
---|
| 17 | .S DFN=$P(LN,U,2) ; Ensure that the entry has a Patient
|
---|
| 18 | .Q:DFN<1
|
---|
| 19 | .S DFN=$G(^MCAR(690,DFN,0)) ; Ensure that patient is Medicine Patient
|
---|
| 20 | .Q:DFN<1
|
---|
| 21 | .S BDATE=$$GET1^DIQ(2,DFN,.03,"I") ; Get the Bdate from DPT
|
---|
| 22 | .Q:BDATE<1
|
---|
| 23 | .S RDATE=$P(LN,U) Q:RDATE<1
|
---|
| 24 | .S RDATE=$P(RDATE,".") ; Strip off time
|
---|
| 25 | .S RPTAGE=($E(RDATE,1,3)-$E(BDATE,1,3))-($E(RDATE,4,7)<$E(BDATE,4,7))
|
---|
| 26 | .; ^^^ Calculate age at the time of the report
|
---|
| 27 | .Q
|
---|
| 28 | QT Q RPTAGE
|
---|