ABSPOS6A ; IHS/FCS/DRS - Data Entry & Status Disp ;
;;1.0;PHARMACY POINT OF SALE;;JUN 21, 2001
;
; ALL writes of screen lines should be done as follows:
; IF $$VISIBLE(line) DO WRITE^VALM10(line)
; When appropriate, set NODISPLY=true and $$VISIBLE will return false
Q
ERROR D FULL^VALM1 Q ; how to do ZQUIT acceptably? ; ZQUIT
DISPHIST(MSG,HANG) ; DEBUGGING - to record history and pause
Q:'$P($G(^ABSP(9002313.99,1,"ABSPOS6*")),U)
D DISPHIST^ABSPOS6H(MSG,HANG)
Q
EN(USER,TIME) ;EP - from ABSPOS in prog mode ; option ABSP USER SCREEN
;S $ZT="ERROR^"_$T(+0) ; you lose the stack printout when you do this!
N DISMISS,DISP,DISPHIST,DISPLINE,DISPIDX,CHGCOUNT,NODISPLY,INFO,ONEPAT
D MYPARAMS^ABSPOS6C
K @DISP,@DISPLINE,@DISPIDX,@DISPHIST,@DISMISS S (@DISPLINE,@DISPHIST)=0
D EN^VALM("ABSP USER SCREEN")
Q
HDR G HDR^ABSPOS6C ; -- header code
INIT ; -- init variables and list array
N DISMISS,DISP,DISPHIST,DISPLINE,DISPIDX,CHGCOUNT,NODISPLY
D MYPARAMS^ABSPOS6C
D CLEAN^VALM10
;INIT1 ; to bypass setting of MYPARAMS
S VALMCNT=0 ; 0 lines so far
D HDR
D UPD
Q
UPD ;EP - protocol ABSP P1 UPDATE ; update the screen, once
; called from ABSPOS6C,ABSPOS6D,ABSPOS6J,ABSPOSI
D UPDATE^ABSPOS6I(1)
S VALMBCK="",XQORM("B")="UD" Q
CONTUPD ; protocol ABSP P1 CONTINUOUS ; continuous update of the display
W !!!!! D UPDATE^ABSPOS6I(-1) S VALMBCK=""
; returned from Continuous Update - what's next?
I $P($G(^ABSP(9002313.99,1,"INPUT")),U,3) D
. ; input method is via RX calling POS or by background monitor
. S XQORM("B")="CU" ; default is to go back into continuous update
E D ; input method is manual input
. S XQORM("B")="NEW" ; default is to do more data entry
Q
HELP ; -- help code
N X S X="?" D DISP^XQORM1 W !!
Q
;
EXIT ; -- exit code
D FULL^VALM1
Q
;
EXPND ; -- expand code
Q
;
ABSPOS6A ; IHS/FCS/DRS - Data Entry & Status Disp ;
+1 ;;1.0;PHARMACY POINT OF SALE;;JUN 21, 2001
+2 ;
+3 ; ALL writes of screen lines should be done as follows:
+4 ; IF $$VISIBLE(line) DO WRITE^VALM10(line)
+5 ; When appropriate, set NODISPLY=true and $$VISIBLE will return false
+6 QUIT
ERROR ; how to do ZQUIT acceptably? ; ZQUIT
DO FULL^VALM1
QUIT
DISPHIST(MSG,HANG) ; DEBUGGING - to record history and pause
+1 IF '$PIECE($GET(^ABSP(9002313.99,1,"ABSPOS6*")),U)
QUIT
+2 DO DISPHIST^ABSPOS6H(MSG,HANG)
+3 QUIT
EN(USER,TIME) ;EP - from ABSPOS in prog mode ; option ABSP USER SCREEN
+1 ;S $ZT="ERROR^"_$T(+0) ; you lose the stack printout when you do this!
+2 NEW DISMISS,DISP,DISPHIST,DISPLINE,DISPIDX,CHGCOUNT,NODISPLY,INFO,ONEPAT
+3 DO MYPARAMS^ABSPOS6C
+4 KILL @DISP,@DISPLINE,@DISPIDX,@DISPHIST,@DISMISS
SET (@DISPLINE,@DISPHIST)=0
+5 DO EN^VALM("ABSP USER SCREEN")
+6 QUIT
HDR ; -- header code
GOTO HDR^ABSPOS6C
INIT ; -- init variables and list array
+1 NEW DISMISS,DISP,DISPHIST,DISPLINE,DISPIDX,CHGCOUNT,NODISPLY
+2 DO MYPARAMS^ABSPOS6C
+3 DO CLEAN^VALM10
+4 ;INIT1 ; to bypass setting of MYPARAMS
+5 ; 0 lines so far
SET VALMCNT=0
+6 DO HDR
+7 DO UPD
+8 QUIT
UPD ;EP - protocol ABSP P1 UPDATE ; update the screen, once
+1 ; called from ABSPOS6C,ABSPOS6D,ABSPOS6J,ABSPOSI
+2 DO UPDATE^ABSPOS6I(1)
+3 SET VALMBCK=""
SET XQORM("B")="UD"
QUIT
CONTUPD ; protocol ABSP P1 CONTINUOUS ; continuous update of the display
+1 WRITE !!!!!
DO UPDATE^ABSPOS6I(-1)
SET VALMBCK=""
+2 ; returned from Continuous Update - what's next?
+3 IF $PIECE($GET(^ABSP(9002313.99,1,"INPUT")),U,3)
Begin DoDot:1
+4 ; input method is via RX calling POS or by background monitor
+5 ; default is to go back into continuous update
SET XQORM("B")="CU"
End DoDot:1
+6 ; input method is manual input
IF '$TEST
Begin DoDot:1
+7 ; default is to do more data entry
SET XQORM("B")="NEW"
End DoDot:1
+8 QUIT
HELP ; -- help code
+1 NEW X
SET X="?"
DO DISP^XQORM1
WRITE !!
+2 QUIT
+3 ;
EXIT ; -- exit code
+1 DO FULL^VALM1
+2 QUIT
+3 ;
EXPND ; -- expand code
+1 QUIT
+2 ;