1 | SPNPM1N ;SD/AB-SCD PROGRAM MEASURE #1, GET THE NUMERATOR ;4/9/98
|
---|
2 | ;;2.0;Spinal Cord Dysfunction;**6**;01/02/1997
|
---|
3 | MAIN ;-- Called from MAIN^SPNPM1
|
---|
4 | ;-- This program will return PM #1 Numerator which is the number of people in the SCD-R who have a REGISTRATION STATUS of SCD-CURRENTLY SERVED by the end of FY 97 AND who have a Primary Care Provider entered in the SCD-R.
|
---|
5 | D TMPLOOP
|
---|
6 | EXIT ;
|
---|
7 | Q
|
---|
8 | TMPLOOP ;-- Loop thru ^TMP($J,"SPNPM1","DFN") and get total of all Pts who have a Primary Care Provider entered into the SCD-R file
|
---|
9 | ;-- Quit if ^TMP global not found
|
---|
10 | I '$D(^TMP($J,"SPNPM1","DFN")),'$D(^TMP($J,"SPNPMDX","SPNICD")) Q
|
---|
11 | S (SPN("DFN"),SPN("TOT_PC"))=0
|
---|
12 | F S SPN("DFN")=$O(^TMP($J,"SPNPM1","DFN",SPN("DFN"))) Q:'+SPN("DFN") D
|
---|
13 | .D PCCHK I +SPN("PC_FLG") S SPN("TOT_PC")=SPN("TOT_PC")+1
|
---|
14 | .Q
|
---|
15 | Q
|
---|
16 | PCCHK ;-- Called from TMPLOOP, check to see if Pt has a PC Provider in file 154 (SCD-R file), and PC provider does NOT have a termination date in file 200, i.e. a valid provider
|
---|
17 | ;-- Inititalize Primary Care Provider Flag (PC_FLG)=0, set to 1 if PC Prrovider found
|
---|
18 | S SPN("PC_FLG")=0
|
---|
19 | Q:'$D(^SPNL(154,SPN("DFN"),"CARE")) ;-- Quit if no CARE node found
|
---|
20 | I +$P($G(^SPNL(154,SPN("DFN"),"CARE")),U) D
|
---|
21 | .S SPN("PROV#")=$P(^SPNL(154,SPN("DFN"),"CARE"),U) I SPN("PROV#")>0 D
|
---|
22 | ..;-- Check for valid Provider
|
---|
23 | ..I +$D(^VA(200,SPN("PROV#"),0)) D
|
---|
24 | ...;-- If valid PC Provider entered into SCD-R set PC_FLG=0
|
---|
25 | ...I $P($G(^VA(200,SPN("PROV#"),0)),U,11)="" S SPN("PC_FLG")=1
|
---|
26 | ...Q
|
---|
27 | ..Q
|
---|
28 | .Q
|
---|
29 | Q
|
---|