| 1 | WVPROF3 ;HCIOFO/FT,JR IHS/ANMC/MWR - DISPLAY PATIENT PROFILE; ;7/30/98  16:39
 | 
|---|
| 2 |  ;;1.0;WOMEN'S HEALTH;;Sep 30, 1998
 | 
|---|
| 3 |  ;;* MICHAEL REMILLARD, DDS * ALASKA NATIVE MEDICAL CENTER *
 | 
|---|
| 4 |  ;;  DISPLAY CODE FOR PATIENT PROFILE.  CALLED BY WVPROF1.
 | 
|---|
| 5 |  ;
 | 
|---|
| 6 | NOMATCH ;EP
 | 
|---|
| 7 |  ;---> QUIT IF NO RECORDS MATCH.
 | 
|---|
| 8 |  N M
 | 
|---|
| 9 |  I '$D(^TMP("WV",$J,1)) D  Q
 | 
|---|
| 10 |  .D HEADER2^WVUTL7
 | 
|---|
| 11 |  .K WVPRMT,WVPRMT1,WVPRMTQ,DIR
 | 
|---|
| 12 |  .W !!?5,"No records match the selected criteria.",!
 | 
|---|
| 13 |  .I WVCRT&('$D(IO("S"))) D DIRZ^WVUTL3 W @IOF
 | 
|---|
| 14 |  .D ^%ZISC S WVPOP=1
 | 
|---|
| 15 |  ;
 | 
|---|
| 16 |  ;---> WVD=1:DETAILED DISPLAY, WVD=0:BRIEF DISPLAY.
 | 
|---|
| 17 |  I WVD D DISPLAY1 Q
 | 
|---|
| 18 |  D DISPLAY2
 | 
|---|
| 19 |  Q
 | 
|---|
| 20 |  ;
 | 
|---|
| 21 |  ;
 | 
|---|
| 22 | DISPLAY1 ;EP
 | 
|---|
| 23 |  ;---> IF A PROCEDURE IS EDITED ON THE LAST PAGE, GOTO HERE
 | 
|---|
| 24 |  ;---> FROM LINELABEL "END" BELOW.
 | 
|---|
| 25 |  D HEADER2^WVUTL7
 | 
|---|
| 26 |  F  S N=$O(^TMP("WV",$J,2,N)) Q:'N!(WVPOP)  D
 | 
|---|
| 27 |  .I $Y+5>IOSL D:WVCRT DIRZ^WVUTL3 Q:WVPOP  D
 | 
|---|
| 28 |  ..S WVPAGE=WVPAGE+1
 | 
|---|
| 29 |  ..D HEADER2^WVUTL7 S (WVACCP,Z)=0
 | 
|---|
| 30 |  .S Y=^TMP("WV",$J,2,N),M=N
 | 
|---|
| 31 |  .W !
 | 
|---|
| 32 |  .;
 | 
|---|
| 33 |  .;---> **********************
 | 
|---|
| 34 |  .;---> DISPLAY PROCEDURES
 | 
|---|
| 35 |  .;---> IF PIECE 1=1 DISPLAY AS A PROCEDURE.
 | 
|---|
| 36 |  .I $P(Y,U)=1 D  Q
 | 
|---|
| 37 |  ..W !,"------------------------------< "
 | 
|---|
| 38 |  ..W "PROCEDURE: ",$P(Y,U,5)," >"            ;PROCEDURE ABBREVIATION
 | 
|---|
| 39 |  ..W $$REPEAT^XLFSTR("-",(6-$L($P(Y,U,5))))
 | 
|---|
| 40 |  ..;F I=1:1:(6-$L($P(Y,U,5))) W "-"
 | 
|---|
| 41 |  ..W "-----------------------------"
 | 
|---|
| 42 |  ..W ! W:WVCRT $J(N,3),")" W ?WVTAB          ;BROWSE SELECTION#
 | 
|---|
| 43 |  ..W $P(Y,U,6)                               ;ACCESSION#
 | 
|---|
| 44 |  ..W ?17,$P(Y,U,4)                           ;DATE OF PROCEDURE
 | 
|---|
| 45 |  ..W ?27,"Res/Diag: ",$P(Y,U,7)              ;RESULTS/DIAGNOSIS
 | 
|---|
| 46 |  ..W !?27,"Provider: ",$E($P(Y,U,8),1,14)    ;PROVIDER
 | 
|---|
| 47 |  ..W ?62,"Status: ",$P(Y,U,9)                ;STATUS
 | 
|---|
| 48 |  ..S WVACCP=$P(Y,U,6)                        ;STORE AS PREVIOUS ACCESS#
 | 
|---|
| 49 |  .;
 | 
|---|
| 50 |  .;---> **********************
 | 
|---|
| 51 |  .;---> DISPLAY NOTIFICATIONS
 | 
|---|
| 52 |  .;---> IF PIECE 1=2 DISPLAY AS A NOTIFICATION.
 | 
|---|
| 53 |  .I $P(Y,U)=2 D  Q
 | 
|---|
| 54 |  ..S WVACC=$P(Y,U,5)
 | 
|---|
| 55 |  ..I WVACC'=Z D
 | 
|---|
| 56 |  ...W ! W:WVACC["NO ACC#" "-----------------" W ?17
 | 
|---|
| 57 |  ...W "-------------< NOTIFICATIONS >---------------------------------"
 | 
|---|
| 58 |  ..W ! W:WVCRT $J(N,3),")" W ?WVTAB           ;BROWSE SELECTION#
 | 
|---|
| 59 |  ..W:WVACC'=WVACCP!(WVACC["NO ACC#") WVACC    ;ACCESSION#
 | 
|---|
| 60 |  ..W ?17,$P(Y,U,4)                            ;DATE OF PROCEDURE
 | 
|---|
| 61 |  ..W ?27,$E($P(Y,U,6)_": "_$P(Y,U,7),1,53)    ;TYPE AND PURPOSE
 | 
|---|
| 62 |  ..W !?27,"Outcome: ",$E($P(Y,U,8),1,23)      ;OUTCOME OF NOTIFICATION
 | 
|---|
| 63 |  ..W ?62,"Status: ",$P(Y,U,9)                 ;STATUS
 | 
|---|
| 64 |  ..S (WVACCP,Z)=WVACC                         ;STORE AS PREVIOUS ACC#
 | 
|---|
| 65 |  ..;
 | 
|---|
| 66 |  ..;---> TWO VARIABLES (WVACCP & Z) USED ABOVE: "Z" SAYS "IF THIS NOTIF
 | 
|---|
| 67 |  ..;---> ACC# IS NOT THE SAME AS THE LAST ONE, DISPLAY --<NOT>-- BANNER.
 | 
|---|
| 68 |  ..;---> "WVACCP" SAYS "IF THIS NOTIF ACC# MATCHES THE LAST PROCEDURE'S
 | 
|---|
| 69 |  ..;---> ACC#, DON'T DISPLAY THE ACCESSION#."
 | 
|---|
| 70 |  ..;---> BOTH VARIABLES ARE RESET AFTER A FORMFEED, IN ORDER TO DISPLAY
 | 
|---|
| 71 |  ..;---> ON THE NEW PAGE.
 | 
|---|
| 72 |  .;
 | 
|---|
| 73 |  .;---> **********************
 | 
|---|
| 74 |  .;---> DISPLAY PAP REGIMENS
 | 
|---|
| 75 |  .;---> IF PIECE 1=3 DISPLAY AS A PAP REGIMEN.
 | 
|---|
| 76 |  .I $P(Y,U)=3 D  Q
 | 
|---|
| 77 |  ..W !,"------------------------------< PAP REGIMEN CHANGE"
 | 
|---|
| 78 |  ..W " >----------------------------"
 | 
|---|
| 79 |  ..W !?10,"Began:"
 | 
|---|
| 80 |  ..W ?17,$P(Y,U,4)                           ;DATE OF REGIMEN ENTRY
 | 
|---|
| 81 |  ..W ?27,"Regimen: ",$P(Y,U,5)               ;PAP REGIMEN
 | 
|---|
| 82 |  .;
 | 
|---|
| 83 |  .;---> **********************
 | 
|---|
| 84 |  .;---> DISPLAY PREGNANCIES
 | 
|---|
| 85 |  .;---> IF PIECE 1=4 DISPLAY AS A PREGNANCY.
 | 
|---|
| 86 |  .I $P(Y,U)=4 D  Q
 | 
|---|
| 87 |  ..W !,"------------------------------< PREGNANCY STATUS"
 | 
|---|
| 88 |  ..W " >------------------------------"
 | 
|---|
| 89 |  ..W !?8,"Entered:"
 | 
|---|
| 90 |  ..W ?17,$P(Y,U,4)                           ;DATE OF PREGNANCY EDIT.
 | 
|---|
| 91 |  ..W ?27,$P(Y,U,5)                           ;PREGNANT/NOT
 | 
|---|
| 92 |  ..W:$P(Y,U,6)]"" ?50,"EDC: ",$P(Y,U,6)      ;EDC
 | 
|---|
| 93 |  ;
 | 
|---|
| 94 | END ;EP
 | 
|---|
| 95 |  ;---> IF A PROCEDURE HAS BEEN EDITED, SET N=N-5 AND START (GOTO)
 | 
|---|
| 96 |  ;---> DISPLAY1 OVER AGAIN FROM 5 RECORDS PREVIOUS.
 | 
|---|
| 97 |  I WVCRT&('$D(IO("S")))&('WVPOP) D DIRZ^WVUTL3 I N S N=N-1 G NOMATCH
 | 
|---|
| 98 |  D ^%ZISC
 | 
|---|
| 99 |  K N,Z
 | 
|---|
| 100 |  Q
 | 
|---|
| 101 |  ;
 | 
|---|
| 102 |  ;
 | 
|---|
| 103 |  ;
 | 
|---|
| 104 | DISPLAY2 ;EP
 | 
|---|
| 105 |  ;---> IF A PROCEDURE IS EDITED ON THE LAST PAGE, GOTO HERE
 | 
|---|
| 106 |  ;---> FROM LINELABEL "END" BELOW.
 | 
|---|
| 107 |  S WVSUBH="SUBHEAD^WVPROF1"
 | 
|---|
| 108 |  D HEADER2^WVUTL7
 | 
|---|
| 109 |  F  S N=$O(^TMP("WV",$J,2,N)) Q:'N!(WVPOP)  D
 | 
|---|
| 110 |  .I $Y+5>IOSL D:WVCRT DIRZ^WVUTL3 Q:WVPOP  D
 | 
|---|
| 111 |  ..S WVPAGE=WVPAGE+1
 | 
|---|
| 112 |  ..D HEADER2^WVUTL7 S (WVACCP,Z)=0
 | 
|---|
| 113 |  .S Y=^TMP("WV",$J,2,N),M=N
 | 
|---|
| 114 |  .;---> QUIT IF NOT A PROCEDURE (PIECE 1'=1).
 | 
|---|
| 115 |  .Q:$P(Y,U)'=1
 | 
|---|
| 116 |  .W ! W:WVCRT $J(N,3),")" W ?WVTAB          ;BROWSE SELECTION#
 | 
|---|
| 117 |  .W $P(Y,U,4)                               ;DATE OF PROCEDURE
 | 
|---|
| 118 |  .W ?17,$P(Y,U,5)                           ;PROCEDURE ABBREVIATION
 | 
|---|
| 119 |  .W ?27,$P(Y,U,7)                           ;RESULT
 | 
|---|
| 120 |  .W ?71,$P(Y,U,9)                           ;STATUS
 | 
|---|
| 121 |  .S WVACCP=$P(Y,U,6)                        ;STORE AS PREVIOUS ACCESS#
 | 
|---|
| 122 | END2 ;EP
 | 
|---|
| 123 |  ;---> IF A PROCEDURE HAS BEEN EDITED, SET N=N-1 AND START (GOTO)
 | 
|---|
| 124 |  ;---> DISPLAY2 OVER AGAIN FROM 5 RECORDS PREVIOUS.
 | 
|---|
| 125 |  I WVCRT&('$D(IO("S")))&('WVPOP) D DIRZ^WVUTL3 I N S N=N-1 G NOMATCH
 | 
|---|
| 126 |  D ^%ZISC
 | 
|---|
| 127 |  K N,Z
 | 
|---|
| 128 |  Q
 | 
|---|