PXRMEXLD ;SLC/PJH - Reminder Dialog Exchange Main Routine. ;08/07/2007 ;;2.0;CLINICAL REMINDERS;**4,6**;Feb 04, 2005;Build 123 ; START N PXRMBG,PXRMMODE,VALMBCK,VALMBG,VALMCNT,VALMSG,X,XMZ S X="IORESET" D EN^VALM("PXRM EX LIST DIALOG") ;Rebuild Display D CDISP^PXRMEXLC(PXRMRIEN) Q ; ENTRY ; Entry point for List Manager D FIND Q ; DETAIL ;Detailed display S PXRMMODE=0 D DISP(PXRMMODE) Q ; FIND ;Display findings S PXRMMODE=2 D DISP(PXRMMODE) Q ; SUM ;Display dialog summary S PXRMMODE=3 D DISP(PXRMMODE) Q ; USE ;Display dialog usage S PXRMMODE=4 D DISP(PXRMMODE) Q ; TEXT ;Display dialog text S PXRMMODE=1 D DISP(PXRMMODE) Q ; EXIT ; K ^TMP("PXRMEXLD",$J) Q ; DISP(VIEW) ;Build the requested view and display it. D BLDDISP^PXRMEXD1(VIEW) ;Change header I VIEW=0 D CHGCAP^VALM("HEADER2","Dialog Details") I VIEW=1 D CHGCAP^VALM("HEADER2","Dialog Text") I VIEW=2 D CHGCAP^VALM("HEADER2","Dialog Findings") I VIEW=3 D CHGCAP^VALM("HEADER2","Dialog Summary") I VIEW=4 D CHGCAP^VALM("HEADER2","Dialog Usage") S VALMCNT=^TMP("PXRMEXLD",$J,"VALMCNT"),VALMBG=1,VALMBCK="R" ;Reset protocol D XQORM Q ; HELP ; N ORU,ORUPRMT,XQORM,PXRMTAG S PXRMTAG="DLG" D EN^VALM("PXRM EX DIALOG HELP") Q ; HDR ; S VALMHDR(1)="Packed reminder dialog: " S VALMHDR(1)=VALMHDR(1)_$G(^TMP("PXRMEXTMP",$J,"PXRMDNAM")) I $D(^TMP("PXRMEXTMP",$J,"PXRMDNAT")) S VALMHDR(1)=VALMHDR(1)_" [NATIONAL DIALOG]" S VALMHDR("TITLE")=VALMHDR(1) S VALMSG="+ Next Screen - Prev Screen ?? More Actions" Q ; PEXIT ;PXRM EXCH DIALOG MENU protocol exit code S VALMSG="+ Next Screen - Prev Screen ?? More Actions" ;Reset after page up/down etc D XQORM Q ; VALID(STRING) ;Validate sequence numbers N CNT,FOUND,OK S FOUND=0,OK=1 F CNT=1:1 S SEL=$P(STRING,",",CNT) Q:'SEL D .;Invalid selection .I ('SEL)!(SEL>VALMCNT)!('$D(@VALMAR@("SEL",SEL))) D Q ..S OK=0 W $C(7),!,SEL_" is not a valid item number." H 2 .S FOUND=1 Q:OK&FOUND 1 Q 0 ; XQORM S XQORM("#")=$O(^ORD(101,"B","PXRM EXCH SELECT DIALOG",0))_U_"1:"_VALMCNT S XQORM("A")="Select Action: " Q ; XSEL ;PXRM EXCH SELECT DIALOG validation N ALL,CNT,ERR,IEN,IND,PXRMDONE,SELECT,SEL S ALL="",PXRMDONE=0,PXRMBG=$G(VALMBG) ;Invalid selection S SELECT=$P(XQORNOD(0),"=",2) I '$$VALID(SELECT) S VALMBCK="R" Q ; ;Sort the SELECTION into reverse order D ORDER^PXRMEXLC(.SELECT,-1) ; ;Lock the file I '$$LOCK^PXRMEXID S VALMBCK="R" Q ; ;Install dialog component(s) S CNT=0 F CNT=1:1 S SEL=$P(SELECT,",",CNT) Q:'SEL D Q:PXRMDONE .D INSCOM^PXRMEXID(SEL,0) ; ;Unlock file D UNLOCK^PXRMEXID ; ;Rebuild Workfile D DISP^PXRMEXLD(PXRMMODE) ; ;Refresh S VALMBCK="R" I $D(PXRMBG) S VALMBG=PXRMBG Q