[613] | 1 | EASEZPVU ;ALB/GTS/CMF - MT PICKER FOR EZ/EZR PRINT
|
---|
| 2 | ;;1.0;ENROLLMENT APPLICATION SYSTEM;**57**;Mar 15, 2001
|
---|
| 3 | ;
|
---|
| 4 | Q
|
---|
| 5 | PICK(EASDFN,EASMTIEN) ;validate or pick mtien for printing
|
---|
| 6 | ; Input: EASDFN - POINTER TO PATIENT FILE (#2) - required
|
---|
| 7 | ; EASMTIEN - POINTER TO MEANS TEST FILE (#408.31 - optional
|
---|
| 8 | ; Output: RESULT - valid mt pointer, or null
|
---|
| 9 | N RESULT,MTIEN,DIC,D,X,Y,DTOUT,DUOUT,EASSORT
|
---|
| 10 | S RESULT=""
|
---|
| 11 | ; if means test ien, then return it
|
---|
| 12 | S MTIEN=$G(EASMTIEN)
|
---|
| 13 | S MTIEN=$S($D(^DGMT(408.31,+MTIEN)):+MTIEN,MTIEN=0:0,MTIEN=-1:-1,1:"")
|
---|
| 14 | I (+MTIEN>0)!(MTIEN=-1) Q MTIEN
|
---|
| 15 | ;
|
---|
| 16 | ; if no means test ien, then ask user for one
|
---|
| 17 | D GETMTDAT(EASDFN)
|
---|
| 18 | I $D(EASSORT) D
|
---|
| 19 | .;display sort array here!
|
---|
| 20 | .D DISPLAY
|
---|
| 21 | .;lookup filtered by sort array
|
---|
| 22 | .S DIC=408.31
|
---|
| 23 | .S DIC(0)="AEMQ"
|
---|
| 24 | .S DIC("A")="Select DATE OF TEST:"
|
---|
| 25 | .S DIC("S")="I $D(EASSORT($P(^(0),U),Y))"
|
---|
| 26 | .S D="ADFN"_EASDFN_"^B"
|
---|
| 27 | .D MIX^DIC1
|
---|
| 28 | .S RESULT=+Y
|
---|
| 29 | Q RESULT
|
---|
| 30 | ;
|
---|
| 31 | GETMTDAT(EASDFN) ;sort primary tests for printing selection
|
---|
| 32 | ;
|
---|
| 33 | ; Input: EASDFN - Patient file IEN (DFN)
|
---|
| 34 | ; Output: EASSORT - Array of Means Tests in the following format:
|
---|
| 35 | ; EASSORT(DATE,MTIEN)=MT IEN^Date of Test^Status Name^Status Code^Source
|
---|
| 36 | ;
|
---|
| 37 | ;check for futures
|
---|
| 38 | ; means test
|
---|
| 39 | D SORT($$FUT^DGMTU(EASDFN,,1),"NO")
|
---|
| 40 | ; copay test
|
---|
| 41 | D SORT($$FUT^DGMTU(EASDFN,,2),"NO")
|
---|
| 42 | ; ltc copay exemption test
|
---|
| 43 | D SORT($$FUT^DGMTU(EASDFN,,4),"NO")
|
---|
| 44 | ;look for current
|
---|
| 45 | ; means test
|
---|
| 46 | D SORT($$LST^DGMTU(EASDFN,,1),"YES")
|
---|
| 47 | ; copay test
|
---|
| 48 | D SORT($$LST^DGMTU(EASDFN,,2),"YES")
|
---|
| 49 | ; ltc copay exemption test
|
---|
| 50 | D SORT($$LST^DGMTU(EASDFN,,4),"YES")
|
---|
| 51 | Q
|
---|
| 52 | ;
|
---|
| 53 | SORT(RETURN,PRIMARY) ;sort mt status string
|
---|
| 54 | N DATE,MTIEN
|
---|
| 55 | I +RETURN=0 Q
|
---|
| 56 | S DATE=$P(RETURN,U,2)
|
---|
| 57 | S MTIEN=$P(RETURN,U,1)
|
---|
| 58 | S:$$GET1^DIQ(408.31,MTIEN_",",2)=PRIMARY EASSORT(DATE,MTIEN)=RETURN
|
---|
| 59 | Q
|
---|
| 60 | ;
|
---|
| 61 | DISPLAY ; eassort array
|
---|
| 62 | N MTDT,MTIEN,MTIENS
|
---|
| 63 | W !?3,"Choose from:"
|
---|
| 64 | S MTDT=""
|
---|
| 65 | F S MTDT=$O(EASSORT(MTDT)) Q:MTDT="" D
|
---|
| 66 | .S MTIEN=""
|
---|
| 67 | .F S MTIEN=$O(EASSORT(MTDT,MTIEN)) Q:MTIEN="" D
|
---|
| 68 | ..S MTIENS=MTIEN_","
|
---|
| 69 | ..W !?3,MTDT_" "
|
---|
| 70 | ..W $$GET1^DIQ(408.31,MTIENS,.01)_" " ;test date
|
---|
| 71 | ..W $$GET1^DIQ(408.31,MTIENS,.019)_" " ;type of test
|
---|
| 72 | ..W $$GET1^DIQ(408.31,MTIENS,.03)_" " ;status
|
---|
| 73 | ..W $$GET1^DIQ(408.31,MTIENS,.23)_" " ;source of test
|
---|
| 74 | ..W $S($$GET1^DIQ(408.31,MTIENS,2)="YES":"PRIMARY",1:"NOT PRIMARY")
|
---|
| 75 | ..Q
|
---|
| 76 | .Q
|
---|
| 77 | Q
|
---|
| 78 | ;
|
---|