[613] | 1 | WVBRNOT1 ;HCIOFO/FT,JR IHS/ANMC/MWR - BROWSE NOTIFICATIONS; ;7/30/98 11:05
|
---|
| 2 | ;;1.0;WOMEN'S HEALTH;;Sep 30, 1998
|
---|
| 3 | ;;* MICHAEL REMILLARD, DDS * ALASKA NATIVE MEDICAL CENTER *
|
---|
| 4 | ;; DISPLAY CODE FOR BROWSING NOTIFICATIONS. CALLED BY WVBRNOT.
|
---|
| 5 | ;
|
---|
| 6 | DISPLAY ;EP
|
---|
| 7 | ;---> WVCONF=DISPLAY "CONFIDENTIAL PT INFO" BANNER.
|
---|
| 8 | ;---> WVTITLE=TITLE AT TOP OF DISPLAY HEADER.
|
---|
| 9 | ;---> WVSUBH=CODE TO EXECUTE FOR SUBHEADER (COLUMN TITLES).
|
---|
| 10 | ;---> WVCODE=CODE TO EXECUTE AS 3RD PIECE OF DIR(0) (AFTER DIR READ).
|
---|
| 11 | ;---> WVCRT=1 IF OUTPUT IS TO SCREEN (ALLOWS SELECTIONS TO EDIT).
|
---|
| 12 | ;---> WVTAB=6 IF OUTPUT IS TO SCREEN, =3 IF OUTPUT IS TO PRINTER.
|
---|
| 13 | ;---> WVPRMT(1,Q)=PROMPTS FOR DIR.
|
---|
| 14 | ;---> WVD=0, TELLS DIRPRMT^WVUTL3 TO DISPLAY SELECTION NUMBERS.
|
---|
| 15 | ;
|
---|
| 16 | U IO
|
---|
| 17 | S WVCONF=1
|
---|
| 18 | S WVTITLE1=$S(WVC=1:"DATE",WVC=2:"PATIENT",WVC=3:"PRIORITY",1:"?")
|
---|
| 19 | S WVTITLE="* * * NOTIFICATIONS LISTED BY "_WVTITLE1_" * * *"
|
---|
| 20 | D CENTERT^WVUTL5(.WVTITLE)
|
---|
| 21 | S WVSUBH="SUBHEAD^WVBRNOT1"
|
---|
| 22 | S WVCODE="D EDIT^WVBRNOT1,SORT^WVBRNOT,COPYGBL^WVBRNOT"
|
---|
| 23 | S (WVD,WVPOP,N,Z)=0
|
---|
| 24 | D TOPHEAD^WVUTL7
|
---|
| 25 | S WVTAB=$S(WVCRT:6,1:3)
|
---|
| 26 | ;
|
---|
| 27 | NOMATCH ;EP
|
---|
| 28 | ;---> QUIT IF NO RECORDS MATCH.
|
---|
| 29 | I '$D(^TMP("WV",$J,3)) D Q
|
---|
| 30 | .D HEADER1^WVUTL7
|
---|
| 31 | .K WVPRMT,WVPRMT1,WVPRMTQ,DIR
|
---|
| 32 | .W !!?5,"No records match the selected criteria.",!
|
---|
| 33 | .I WVCRT&('$D(IO("S"))) D DIRZ^WVUTL3 W @IOF
|
---|
| 34 | .D ^%ZISC S WVPOP=1
|
---|
| 35 | ;
|
---|
| 36 | DISPLAY1 ;EP
|
---|
| 37 | ;---> IF A NOTIFICATION IS EDITED ON THE LAST PAGE, GOTO HERE
|
---|
| 38 | ;---> FROM LINELABEL "END" BELOW.
|
---|
| 39 | D HEADER1^WVUTL7
|
---|
| 40 | F S N=$O(^TMP("WV",$J,4,N)) Q:'N!(WVPOP) D
|
---|
| 41 | .I $Y+6>IOSL D:WVCRT DIRZ^WVUTL3 Q:WVPOP D
|
---|
| 42 | ..S WVPAGE=WVPAGE+1
|
---|
| 43 | ..D HEADER1^WVUTL7 S Z=0
|
---|
| 44 | .S Y=^TMP("WV",$J,4,N),M=N
|
---|
| 45 | .W !
|
---|
| 46 | .;---> DON'T WRITE SSN# AND NAME IF IT MATCHES THE PREVIOUS RECORD.
|
---|
| 47 | .;---> DON'T WRITE BROWSE SELECTION#'S IF IO IS NOT A CRT (BRCRT).
|
---|
| 48 | .I $P(Y,U)'=Z D
|
---|
| 49 | ..W ! W:WVCRT $J(N,3),")" ;BROWSE SELECTION#
|
---|
| 50 | ..W ?WVTAB,$P(Y,U) ;SSN#
|
---|
| 51 | ..W ?WVTAB+10,$E($P(Y,U,2),1,22)," " ;NAME
|
---|
| 52 | ..W $$REPEAT^XLFSTR(".",22-$L($P(Y,U,2))) ;CONNECTING DOTS
|
---|
| 53 | ..W:'WVCRT "..." ;ADD DOTS IF NOT A CRT
|
---|
| 54 | .I $P(Y,U)=Z D ;IF NEW SSN#...
|
---|
| 55 | ..W:WVCRT $J(N,3),")" ;BROWSE SELECTION#
|
---|
| 56 | ..W ?WVTAB,". . . . . . . . . . . . . . . . ." ;CONNECTING DOTS
|
---|
| 57 | .S Z=$P(Y,U) ;STORE AS PREVIOUS CHRT#
|
---|
| 58 | .;
|
---|
| 59 | .W ?40,$$SLDT2^WVUTL5($P(Y,U,3)) ;DATE OF NOTIFICATION
|
---|
| 60 | .W ?51,$P(Y,U,4) ;ACCESSION#
|
---|
| 61 | .;W ?64,$E($P(Y,U,5),1,6)
|
---|
| 62 | .W ?65,$E($P(Y,U,5)) ;STATUS
|
---|
| 63 | .S X=$P(Y,U,6) ;PRIORITY
|
---|
| 64 | .W ?70,$S(X=1:"*",1:" ")
|
---|
| 65 | .W $E($P($P(^DD(790.404,.02,0),X_":",2),";"),1,8) K X
|
---|
| 66 | I $D(^TMP("WV",$J,3)) I WVCRT&('$D(IO("S"))) D:'WVPOP DIRZ^WVUTL3 W @IOF
|
---|
| 67 | END ;EP
|
---|
| 68 | D ^%ZISC
|
---|
| 69 | Q
|
---|
| 70 | ;
|
---|
| 71 | SUBHEAD ;EP
|
---|
| 72 | ;---> SUB HEADER FOR NOTIFICATION BROWSE OUTPUT.
|
---|
| 73 | W !?WVTAB,$$PNLB^WVUTL5()
|
---|
| 74 | W ?WVTAB+12,"PATIENT",?41,"DATE",?51,"ACC#"
|
---|
| 75 | W ?63,"STATUS",?71,"PRIORITY",!
|
---|
| 76 | W $$REPEAT^XLFSTR("-",80)
|
---|
| 77 | Q
|
---|
| 78 | ;
|
---|
| 79 | EDIT ;EP
|
---|
| 80 | ;---> FROM BROWSE, POP IN TO EDIT A SINGLE NOTIFICATION.
|
---|
| 81 | D SETVARS^WVUTL5
|
---|
| 82 | S X=+X,DA=$P(^TMP("WV",$J,4,X),U,7)
|
---|
| 83 | S WVNN=X N X
|
---|
| 84 | D EDIT2^WVNOTIF(DA)
|
---|
| 85 | ;---> BACK UP 5 RECORDS AFTER EDIT.
|
---|
| 86 | S N=$S(WVNN<6:1,1:WVNN-5),Z=0 K WVNN
|
---|
| 87 | Q
|
---|