| [613] | 1 | VAQLED10 ;ALB/JFP - LOAD/EDIT PDX RECORD, PROMPT PDX;01APR93 | 
|---|
|  | 2 | ;;1.5;PATIENT DATA EXCHANGE;;NOV 17, 1993 | 
|---|
|  | 3 | INIT ; -- Intialization | 
|---|
|  | 4 | D ^VAQUTL98 | 
|---|
|  | 5 | ; | 
|---|
|  | 6 | N POP,DFN | 
|---|
|  | 7 | ; | 
|---|
|  | 8 | S:'$D(VAQOPT) VAQOPT="" ; -- should be set from menu option | 
|---|
|  | 9 | MAIN ; -- Main entry point | 
|---|
|  | 10 | K POP,DFN,X,Y,ND,NODE | 
|---|
|  | 11 | K BADSSN,FLE,FLD ; -- table entries | 
|---|
|  | 12 | K DIROUT,DIRUT,DTOUT,DUOUT | 
|---|
|  | 13 | K VAQIN,VAQDFN,VAQPTNM,VAQISSN,VAQIDOB,VAQEDOB,VAQPTID,VAQESSN | 
|---|
|  | 14 | S POP=0 | 
|---|
|  | 15 | ; | 
|---|
|  | 16 | ; -- Call to Dir to request patient from patient file (2) | 
|---|
|  | 17 | S DIR("A")="Identify PDX: " | 
|---|
|  | 18 | S DIR(0)="FAO^1:30^K:(X'=$C(32)&($L(X)<3)) X" | 
|---|
|  | 19 | S DIR("?")="Enter Patient's Name (Last,First Middle) or SSN or Transaction #" | 
|---|
|  | 20 | S DIR("??")="^D HLPTRN1^VAQLED09" | 
|---|
|  | 21 | W !! D ^DIR K DIR G:$D(DIRUT) EXIT | 
|---|
|  | 22 | S (X,VAQIN)=Y | 
|---|
|  | 23 | ; | 
|---|
|  | 24 | ; -- Function call to get patient from transaction file (DIC) | 
|---|
|  | 25 | S VAQDFN=$$GETTRN^VAQUTL96(X) | 
|---|
|  | 26 | D:VAQDFN=-1 PTNFND ; -- patient not in transaction file | 
|---|
|  | 27 | G:POP MLOOP | 
|---|
|  | 28 | D:VAQDFN>0 HEADER ; --   builds variables for header | 
|---|
|  | 29 | D EP^VAQLED01 ; -- Call to list processor (status screen) | 
|---|
|  | 30 | MLOOP G MAIN ; -- loop back until no more patient added | 
|---|
|  | 31 | ; | 
|---|
|  | 32 | PTNFND ; -- Requested PDX not found | 
|---|
|  | 33 | W !,"Patient not found in PDX transaction file..." | 
|---|
|  | 34 | S POP=1 | 
|---|
|  | 35 | QUIT | 
|---|
|  | 36 | ; | 
|---|
|  | 37 | HEADER ; -- Extracts elements for header | 
|---|
|  | 38 | ;W !,"VAQDFN = ",VAQDFN | 
|---|
|  | 39 | F ND=0,"QRY" S NODE(ND)=$G(^VAT(394.61,+VAQDFN,ND)) | 
|---|
|  | 40 | S VAQPTNM=$P(NODE("QRY"),U,1),VAQISSN=$P(NODE("QRY"),U,2) | 
|---|
|  | 41 | S VAQESSN=$$DASHSSN^VAQUTL99(VAQISSN) | 
|---|
|  | 42 | S VAQIDOB=$P(NODE("QRY"),U,3),VAQEDOB=$$DOBFMT^VAQUTL99(VAQIDOB) | 
|---|
|  | 43 | S VAQPTID=$P(NODE("QRY"),U,4) | 
|---|
|  | 44 | QUIT | 
|---|
|  | 45 | ; | 
|---|
|  | 46 | EXIT ; -- Cleanup and exit routine | 
|---|
|  | 47 | K POP,DFN,X,Y,ND,NODE | 
|---|
|  | 48 | K BADSSN,FLE,FLD ; -- table entries | 
|---|
|  | 49 | K DIROUT,DIRUT,DTOUT,DUOUT | 
|---|
|  | 50 | K VAQIN,VAQDFN,VAQPTNM,VAQISSN,VAQIDOB,VAQEDOB,VAQPTID,VAQOPT,VAQESSN | 
|---|
|  | 51 | QUIT | 
|---|
|  | 52 | ; | 
|---|
|  | 53 | END ; -- End of code | 
|---|
|  | 54 | QUIT | 
|---|