| 1 | VAQDIS01 ;ALB/JFP - DISPLAY MINIMAL DATA, DRIVER ;01MAR93
 | 
|---|
| 2 |  ;;1.5;PATIENT DATA EXCHANGE;;NOV 17, 1993
 | 
|---|
| 3 | EP ; -- Main entry point for the list processor
 | 
|---|
| 4 |  ;
 | 
|---|
| 5 | PT S VAQTYPE="PT" G EP1 ; -- Minimal data extracted from ^DPT(2,
 | 
|---|
| 6 | TR S VAQTYPE="TR" G EP1 ; -- Minimal data extracted from ^VAT(394.62,
 | 
|---|
| 7 |  ;
 | 
|---|
| 8 | EP1 D EN^VALM("VAQ DISPLAY MINIMUM") ; -- Protocol = VAQ DIS1 (MENU)
 | 
|---|
| 9 |  QUIT
 | 
|---|
| 10 |  ;
 | 
|---|
| 11 | INIT ; -- Builds array of minimal data for the patient entered (DFN)
 | 
|---|
| 12 |  ;W !,"DFN = ",DFN
 | 
|---|
| 13 |  K ^TMP("VAQD1",$J),^TMP("VAQDIS",$J)
 | 
|---|
| 14 |  N ROOT,SEGPTR,X,MSG,VAQIGNC,XTRCT,OFFSET
 | 
|---|
| 15 |  S (VAQADFL,ERRPOP,VALMCNT)=0
 | 
|---|
| 16 |  ;
 | 
|---|
| 17 |  S ROOT="^TMP(""VAQDIS"",$J)"
 | 
|---|
| 18 |  S SEGPTR=$O(^VAT(394.71,"C","PDX*MIN",""))
 | 
|---|
| 19 |  S VAQIGNC=1 ; -- turns of encryption
 | 
|---|
| 20 |  I VAQTYPE="PT" D
 | 
|---|
| 21 |  .D CHGCAP^VALM("LOCAL"," Local Patient Data")
 | 
|---|
| 22 |  .S X=$$SEGXTRCT^VAQDBI(0,DFN,ROOT,SEGPTR)
 | 
|---|
| 23 |  I VAQTYPE="TR" D
 | 
|---|
| 24 |  .D CHGCAP^VALM("LOCAL"," Remote Patient Data")
 | 
|---|
| 25 |  .S X=$$SEGEXT^VAQUPD1(DFN,SEGPTR,ROOT)
 | 
|---|
| 26 |  I +X=-1 D  QUIT
 | 
|---|
| 27 |  .S MSG="Extract not successful...Error: "_$P(X,U,2)
 | 
|---|
| 28 |  .S X=$$SETSTR^VALM1(" ","",1,79) D TMP
 | 
|---|
| 29 |  .S X=$$SETSTR^VALM1(MSG,"",1,80) D TMP
 | 
|---|
| 30 |  .S ERRPOP=1
 | 
|---|
| 31 |  ; -- extraction sucessful, call display load
 | 
|---|
| 32 |  S XTRCT=ROOT
 | 
|---|
| 33 |  S ROOT="^TMP(""VAQD1"",$J)"
 | 
|---|
| 34 |  S (OFFSET,DSP)=0
 | 
|---|
| 35 |  S X=$$DISPMIN^VAQDIS21(XTRCT,SEGPTR,ROOT,OFFSET,DSP)
 | 
|---|
| 36 |  I +X=-1 D  QUIT
 | 
|---|
| 37 |  .S MSG="Display load not successful...Error: "_$P(X,U,2)
 | 
|---|
| 38 |  .S X=$$SETSTR^VALM1(" ","",1,79) D TMP
 | 
|---|
| 39 |  .S X=$$SETSTR^VALM1(MSG,"",1,80) D TMP
 | 
|---|
| 40 |  .S ERRPOP=1
 | 
|---|
| 41 |  S VALMBCK="Q"
 | 
|---|
| 42 |  QUIT
 | 
|---|
| 43 |  ;
 | 
|---|
| 44 | TMP ; -- Set the array used by list processor
 | 
|---|
| 45 |  S VALMCNT=VALMCNT+1
 | 
|---|
| 46 |  S ^TMP("VAQD1",$J,VALMCNT,0)=$E(X,1,79)
 | 
|---|
| 47 |  QUIT
 | 
|---|
| 48 |  ;
 | 
|---|
| 49 | HD ; -- Make header line for list processor
 | 
|---|
| 50 |  D HD1^VAQEXT02 QUIT
 | 
|---|
| 51 |  ;
 | 
|---|
| 52 | EXIT ; -- Note: The list processor cleans up its own variables.
 | 
|---|
| 53 |  ;          All other variables cleaned up here.
 | 
|---|
| 54 |  ;
 | 
|---|
| 55 |  K ^TMP("VAQD1",$J),^TMP("VAQDIS",$J)
 | 
|---|
| 56 |  K VAQTYPE,VAQIGNC
 | 
|---|
| 57 |  K ROOT,SEGPTR,X,MSG,XTRCT,OFFSET,DSP,ERRPOP
 | 
|---|
| 58 |  Q
 | 
|---|
| 59 |  ;
 | 
|---|
| 60 | END ; -- End of code
 | 
|---|
| 61 |  QUIT
 | 
|---|