[613] | 1 | VAQPST23 ;ALB/JRP - POST INIT (FILE CONVERSION);29-JUL-93
|
---|
| 2 | ;;1.5;PATIENT DATA EXCHANGE;;NOV 17, 1993
|
---|
| 3 | RESULTS(CORARR,DEBUG) ;CONVERT RESULTS OF REQUEST & UNSOLICITED PDXs
|
---|
| 4 | ;INPUT : CORARR - Where correlation of 1.0 request with it's
|
---|
| 5 | ; entry in 394.61 is stored (full global reference)
|
---|
| 6 | ; DEBUG - Turns on debug mode (info written to screen)
|
---|
| 7 | ; 1 - Debug on
|
---|
| 8 | ; 0 - Debug off (default)
|
---|
| 9 | ;OUTPUT : X - Number of requests successfully converted
|
---|
| 10 | ; -1^Error_Text - Error (nothing converted)
|
---|
| 11 | ;NOTES : CORARR will be in the format
|
---|
| 12 | ; CORARR(X,Y)=Z
|
---|
| 13 | ; X = 1.0 request number
|
---|
| 14 | ; Y = 1.5 request number
|
---|
| 15 | ; Z = 1.5 IFN
|
---|
| 16 | ;
|
---|
| 17 | ;CHECK INPUT
|
---|
| 18 | S CORARR=$G(CORARR)
|
---|
| 19 | Q:(CORARR="") "-1^Did not pass reference to correlation array"
|
---|
| 20 | S DEBUG=+$G(DEBUG)
|
---|
| 21 | ;DECLARE VARIABLES
|
---|
| 22 | N AMBGPTR,NTFNPTR,REJPTR,CNTPTR,RSLTPTR,NTRGPTR,UNSPTR
|
---|
| 23 | N COUNT,ERRCNT,PTR10,STATUS,NODE0,NODE1,TMP,TRAN10,TRAN15
|
---|
| 24 | N LINE,PREPAR,BLOCK,XMER,TYPE,PTR15
|
---|
| 25 | ;DETERMIN CONSTANTS
|
---|
| 26 | S PREPAR="^TMP(""VAQ-CNVRT"","_$J_")"
|
---|
| 27 | K @PREPAR
|
---|
| 28 | S AMBGPTR=+$O(^VAT(394.3,"B",11,""))
|
---|
| 29 | Q:('AMBGPTR) "-1^PDX STATUS file (#394.3) did not contain status # 11 (ambiguous)"
|
---|
| 30 | S NTFNPTR=+$O(^VAT(394.3,"B",12,""))
|
---|
| 31 | Q:('NTFNPTR) "-1^PDX STATUS file (#394.3) did not contain status # 12 (not found)"
|
---|
| 32 | S REJPTR=+$O(^VAT(394.3,"B",13,""))
|
---|
| 33 | Q:('REJPTR) "-1^PDX STATUS file (#394.3) did not contain status # 13 (rejected)"
|
---|
| 34 | S CNTPTR=+$O(^VAT(394.3,"B",14,""))
|
---|
| 35 | Q:('CNTPTR) "-1^PDX STATUS file (#394.3) did not contain status # 14 (contact facility)"
|
---|
| 36 | S RSLTPTR=+$O(^VAT(394.3,"B",15,""))
|
---|
| 37 | Q:('RSLTPTR) "-1^PDX STATUS file (#394.3) did not contain status # 15 (results)"
|
---|
| 38 | S UNSPTR=+$O(^VAT(394.3,"B",16,""))
|
---|
| 39 | Q:('UNSPTR) "-1^PDX STATUS file (#394.3) did not contain status # 16 (Unsolicited PDX)"
|
---|
| 40 | S NTRGPTR=+$O(^VAT(394.3,"B",18,""))
|
---|
| 41 | Q:('NTRGPTR) "-1^PDX STATUS file (#394.3) did not contain status # 18 (not registered)"
|
---|
| 42 | W:(DEBUG) !!!!
|
---|
| 43 | W:(DEBUG) !,"*********************"
|
---|
| 44 | W:(DEBUG) !,"* *"
|
---|
| 45 | W:(DEBUG) !,"* PDX Result & *"
|
---|
| 46 | W:(DEBUG) !,"* Unsolicited PDX *"
|
---|
| 47 | W:(DEBUG) !,"* Conversion *"
|
---|
| 48 | W:(DEBUG) !,"* *"
|
---|
| 49 | W:(DEBUG) !,"*********************"
|
---|
| 50 | W:(DEBUG) !!,"Pointer Information"
|
---|
| 51 | W:(DEBUG) !,"-------------------"
|
---|
| 52 | W:(DEBUG) !,"Ambiguous Pointer: ",AMBGPTR
|
---|
| 53 | W:(DEBUG) !,"Not Found Pointer: ",NTFNPTR
|
---|
| 54 | W:(DEBUG) !,"Rejected Pointer: ",REJPTR
|
---|
| 55 | W:(DEBUG) !,"Contact Facility Pointer: ",CNTPTR
|
---|
| 56 | W:(DEBUG) !,"Results Pointer: ",RSLTPTR
|
---|
| 57 | W:(DEBUG) !,"Not Registered Pointer: ",NTRGPTR
|
---|
| 58 | W:(DEBUG) !,"Unsolicited PDX Pointer: ",UNSPTR
|
---|
| 59 | ;FILE RESULTS
|
---|
| 60 | W:(DEBUG) !!,"Converting results",!," Time: ",$$NOW^VAQUTL99,!
|
---|
| 61 | S COUNT=0
|
---|
| 62 | S ERRCNT=0
|
---|
| 63 | S PTR10=0
|
---|
| 64 | F S PTR10=+$O(^VAT(394,"AD",AMBGPTR,PTR10)) Q:('PTR10) D FILE K ^VAT(394,"AD",AMBGPTR,PTR10)
|
---|
| 65 | S PTR10=0
|
---|
| 66 | F S PTR10=+$O(^VAT(394,"AD",NTFNPTR,PTR10)) Q:('PTR10) D FILE K ^VAT(394,"AD",NTFNPTR,PTR10)
|
---|
| 67 | S PTR10=0
|
---|
| 68 | F S PTR10=+$O(^VAT(394,"AD",REJPTR,PTR10)) Q:('PTR10) D FILE K ^VAT(394,"AD",REJPTR,PTR10)
|
---|
| 69 | S PTR10=0
|
---|
| 70 | F S PTR10=+$O(^VAT(394,"AD",CNTPTR,PTR10)) Q:('PTR10) D FILE K ^VAT(394,"AD",CNTPTR,PTR10)
|
---|
| 71 | S PTR10=0
|
---|
| 72 | F S PTR10=+$O(^VAT(394,"AD",RSLTPTR,PTR10)) Q:('PTR10) D FILE K ^VAT(394,"AD",RSLTPTR,PTR10)
|
---|
| 73 | S PTR10=0
|
---|
| 74 | F S PTR10=+$O(^VAT(394,"AD",NTRGPTR,PTR10)) Q:('PTR10) D FILE K ^VAT(394,"AD",NTRGPTR,PTR10)
|
---|
| 75 | ;FILE UNSOLICITED PDXS
|
---|
| 76 | W:(DEBUG) !!,"Converting Unsolicited PDXs",!," Time: ",$$NOW^VAQUTL99,!
|
---|
| 77 | S PTR10=0
|
---|
| 78 | F S PTR10=+$O(^VAT(394,"AD",UNSPTR,PTR10)) Q:('PTR10) D FILE K ^VAT(394,"AD",UNSPTR,PTR10)
|
---|
| 79 | K @PREPAR
|
---|
| 80 | Q (COUNT-ERRCNT)
|
---|
| 81 | ;
|
---|
| 82 | FILE ;FILE REQUESTS
|
---|
| 83 | ;INCREMENT COUNT
|
---|
| 84 | S COUNT=COUNT+1
|
---|
| 85 | I (DEBUG) W:(('(COUNT#5))&(COUNT#100)) "." W:('(COUNT#100)) "#"
|
---|
| 86 | ;GET INFO FROM 1.0 TRANSACTION
|
---|
| 87 | I ('$D(^VAT(394,PTR10))) S ERRCNT=ERRCNT+1 Q
|
---|
| 88 | S NODE0=$G(^VAT(394,PTR10,0))
|
---|
| 89 | S NODE1=$G(^VAT(394,PTR10,1))
|
---|
| 90 | S TRAN10=+$P(NODE0,"^",2)
|
---|
| 91 | I ('TRAN10) S ERRCNT=ERRCNT+1 Q
|
---|
| 92 | S STATUS=+$P(NODE0,"^",12)
|
---|
| 93 | I ((STATUS'=AMBGPTR)&(STATUS'=NTFNPTR)&(STATUS'=REJPTR)&(STATUS'=CNTPTR)&(STATUS'=RSLTPTR)&(STATUS'=NTRGPTR)&(STATUS'=UNSPTR)) S ERRCNT=ERRCNT+1 Q
|
---|
| 94 | ;CONVERT PARENT TRANSACTION NUMBER
|
---|
| 95 | S TMP=+$P(NODE0,"^",3)
|
---|
| 96 | S PARENT=+$O(@CORARR@(TMP,""))
|
---|
| 97 | I (('PARENT)&(STATUS'=UNSPTR)) S ERRCNT=ERRCNT+1 Q
|
---|
| 98 | S:(STATUS'=UNSPTR) $P(NODE0,"^",3)=PARENT
|
---|
| 99 | ;GO TO CONTINUATION ROUTINE
|
---|
| 100 | D CNVRT1^VAQPST25
|
---|
| 101 | Q
|
---|