1 | IVMCMF2 ;ALB/SEK,CKN - CHECK INCOME DEPENDENT DATA ; 11/8/05 3:27pm
|
---|
2 | ;;2.0;INCOME VERIFICATION MATCH;**71,107,105**;21-OCT-94;Build 2
|
---|
3 | ;
|
---|
4 | ; This routine is a called from IVMCMF.
|
---|
5 | ;
|
---|
6 | ZMT(STRING) ; check ZMT segment
|
---|
7 | ;
|
---|
8 | ; Input: STRING as ZMT segment
|
---|
9 | ;
|
---|
10 | N X,Y
|
---|
11 | ;
|
---|
12 | ; Means Test Status Checks
|
---|
13 | I IVMTYPE=1,$P(STRING,HLFS,3)'="G" D MT^IVMCMF3(STRING,ARRAY("ZIC"))
|
---|
14 | ;
|
---|
15 | ; Copay Test Status Checks
|
---|
16 | I IVMTYPE=2 D CO^IVMCMF3(STRING)
|
---|
17 | ;
|
---|
18 | ; Hardship consistency checks
|
---|
19 | N HARDSHIP K HARDSHIP
|
---|
20 | S HARDSHIP("Y/N")=$P(STRING,HLFS,13)
|
---|
21 | S HARDSHIP("SITE")=$P(STRING,HLFS,23)
|
---|
22 | S HARDSHIP("EFFDATE")=$P(STRING,HLFS,24)
|
---|
23 | ;
|
---|
24 | I (IVMTYPE'=4),(HARDSHIP("Y/N"))!(+HARDSHIP("SITE"))!(HARDSHIP("EFFDATE")) D
|
---|
25 | .I HARDSHIP("Y/N")="" S CNT=CNT+1,IVMERR(CNT)="Missing Hardship Indicator"
|
---|
26 | .I HARDSHIP("SITE")="" S CNT=CNT+1,IVMERR(CNT)="Missing Site Granting Hardship"
|
---|
27 | .;starting in year 2000, all hardships should have an effective date
|
---|
28 | .I $E($P(STRING,HLFS,2),1,4)'<2000,(HARDSHIP("EFFDATE")="") S CNT=CNT+1,IVMERR(CNT)="Missing Hardship Effective Date"
|
---|
29 | .I $L(HARDSHIP("EFFDATE")) S X=$$FMDATE^HLFNC(HARDSHIP("EFFDATE")),%DT=X D ^%DT I Y<0 S CNT=CNT+1,IVMERR(CNT)="Invalid Hardship Effective Date"
|
---|
30 | .I HARDSHIP("EFFDATE"),(HARDSHIP("EFFDATE")<($P(STRING,HLFS,2))-1) S CNT=CNT+1,IVMERR(CNT)="Hardship Effective Date earlier than Means Test Date"
|
---|
31 | ;
|
---|
32 | ; Source of Test
|
---|
33 | S X=$P(STRING,HLFS,18)
|
---|
34 | I "^1^2^3^4^"'[(U_X_U) S CNT=CNT+1,IVMERR(CNT)="Source of Test must be identified"
|
---|
35 | I X=4,$P(STRING,HLFS,22)="" S CNT=CNT+1,IVMERR(CNT)="Site Conducting Test must be identified"
|
---|
36 | ;
|
---|
37 | ZMTQ Q
|
---|
38 | ;
|
---|
39 | ZDP(STRING) ; Check validity of ZDP segment
|
---|
40 | ;
|
---|
41 | ; Input: STRING as ZDP segment
|
---|
42 | ;
|
---|
43 | N RELAT,IVMZDP5,PSSNRSN
|
---|
44 | S IVMZDP5=$P(STRING,HLFS,5)
|
---|
45 | I +IVMZDP5'>0 D G ZDPQ
|
---|
46 | .S RELAT=$P(STRING,HLFS,6),RELAT=$S($D(^DG(408.11,RELAT,0)):$P(^DG(408.11,RELAT,0),HLFS),1:"OTHER")
|
---|
47 | .S CNT=CNT+1,IVMERR(CNT)="Dependent ("_RELAT_") transmitted without SSN"
|
---|
48 | I $D(IVMAR2(IVMZDP5)) S CNT=CNT+1,IVMERR(CNT)="Two dependents transmitted with same SSN"
|
---|
49 | S IVMAR2(IVMZDP5)=""
|
---|
50 | S PSSNRSN=$P(STRING,HLFS,10) I PSSNRSN]"",(PSSNRSN'="R"),(PSSNRSN'="S"),(PSSNRSN'="N") S CNT=CNT+1,IVMERR(CNT)="Invalid Pseudo SSN Reason transmitted for Spouse/Dependent."
|
---|
51 | ZDPQ Q
|
---|