AQAOQT1 ; IHS/ORDC/LJF - BRAINSTORMING & MULTIVOTING ;
;;1.01;QAI MANAGEMENT;;OCT 05, 1995
;
;This rtn is main driver for brainstorming & multivoting tool.
;
D INTRO^AQAOHQIT
K DIR S DIR(0)="SO^1:GENERAL INFO;2:BRAINSTORMING SESSION;3:MULTIVOTING;4:REPORTS"
S DIR("?")="Select one the the FUNCTIONS listed or press RETURN to exit"
S DIR("A")=" Select Option" D ^DIR
G EXIT:$D(DIRUT),MENU:Y=-1
;
; >>> call rtn for user's selection
S AQAOPT=$S(Y=1:"MTG",Y=2:"BRAIN",Y=3:"MULTIV",1:"REPORT")
D @AQAOPT G MENU
;
;
EXIT ; >>> eoj
D ^%ZISC D KILL^AQAOUTIL Q
; >>>> END OF MAIN SECTION OF RTN <<<<
;
;
;
MTG ; >>> SUBRTN to enter mtg info <<<
W !! K DIC S DIC="^AQAO1(8,",DIC(0)="AEMQZL",DLAYGO=9002169
S DIC("S")=$$DICS D ^DIC K DLAYGO
Q:$D(DTOUT) Q:$D(DUOUT) Q:X="" Q:Y=-1 S AQAOMTG=+Y
W !! K DIE S DIE="^AQAO1(8,",DA=AQAOMTG,DR="[AQAO QIT MTG]"
D ^DIE
Q
;
;
BRAIN ;ENTRY POINT >>> SUBRTN for brainstorming session <<<
W !!?20,"*** BRAINSTORMING SESSION ***"
; >>> find meeting entry # and display team and date/time
I '$D(AQAOMTG) D
.W !! K DIC S DIC="^AQAO1(8,",DIC("A")="Select SESSION DATE/TIME: "
.S DIC(0)="AEMZQ",DIC("S")=$$DICS D ^DIC I Y>0 S AQAOMTG=+Y
I '$D(AQAOMTG) W !!,"NO SESSION SELECTED" D MTG Q:'$D(AQAOMTG)
W !!?2,"QI TEAM: ",$P(^AQAO1(1,$P(^AQAO1(8,AQAOMTG,0),U,2),0),U)
W !,"DATE/TIME: " S Y=$P(^AQAO1(8,AQAOMTG,0),U) X ^DD("DD") W Y
W !?4,"TOPIC: ",$P(^AQAO1(8,AQAOMTG,0),U,3)
;
; >>> choose next action; call SUBRTNS
CHOOSE K DIR S DIR("A")=" Select NEXT ACTION"
S DIR(0)="SO^1:ADD IDEAS;2:LIST IDEAS;3:CATEGORIZE IDEAS;4:EDIT/DELETE IDEAS"
D ^DIR Q:$D(DIRUT)
S AQAOPT1=$S(Y=1:"IDEAS",Y=2:"LIST",Y=3:"CATEGORY",1:"EDIT")
S AQAOPT1=AQAOPT1_"^AQAOQT11" D @AQAOPT1 G CHOOSE
;
;
MULTIV ; >>> SUBRTN to handle multivoting session <<<
K AQAOAR1 W !!?20,"*** MULTIVOTING SESSION ***"
; >>> find meeting entry # and display team and date/time
I '$D(AQAOMTG) D
.W !! K DIC S DIC="^AQAO1(8,",DIC("A")="Select SESSION DATE/TIME: "
.S DIC(0)="AEMZQ",DIC("S")=$$DICS D ^DIC I Y>0 S AQAOMTG=+Y
I '$D(AQAOMTG) D Q:'$D(AQAOMTG)
.W !!,"NO BRAINSTORMING SESSION SELECTED" D MTG
;
W !!?2,"QI TEAM: ",$P(^AQAO1(1,$P(^AQAO1(8,AQAOMTG,0),U,2),0),U)
W !,"DATE/TIME: " S Y=$P(^AQAO1(8,AQAOMTG,0),U) X ^DD("DD") W Y
W !?4,"TOPIC: ",$P(^AQAO1(8,AQAOMTG,0),U,3)
I '$O(^AQAO1(7,"AC",AQAOMTG,0)) W !!,"NO IDEAS ENTERED!",!! Q
;
; choose next action; call SUBRTNS
CHOOSE1 K DIR S DIR("A")=" Select NEXT ACTION"
S DIR(0)="SO^1:LIST CATEGORIES;2:VOTE;3:VIEW VOTING RESULTS"
D ^DIR Q:$D(DIRUT)
S AQAOPT1=$S(Y=1:"LIST",Y=2:"VOTE",1:"RESULTS")
S AQAOPT1=AQAOPT1_"^AQAOQT12" D @AQAOPT1 G CHOOSE1
;
;
REPORT ; >>> SUBRTN to print results of brainstorming session <<<
W @IOF,!?20,"*** REPORT RESULTS OF BRAINSTORMING SESSION ***"
; find meeting entry # and display team and date/time
I '$D(AQAOMTG) W !! K DIC S DIC="^AQAO1(8,",DIC("A")="Select SESSION DATE/TIME: ",DIC(0)="AEMZQ",DIC("S")=$$DICS D ^DIC I Y>0 S AQAOMTG=+Y
I '$D(AQAOMTG) W !!,"NO SESSION SELECTED" D MTG Q:'$D(AQAOMTG)
W !!?2,"QI TEAM: ",$P(^AQAO1(1,$P(^AQAO1(8,AQAOMTG,0),U,2),0),U)
W !,"DATE/TIME: " S Y=$P(^AQAO1(8,AQAOMTG,0),U) X ^DD("DD") W Y
W !?4,"TOPIC: ",$P(^AQAO1(8,AQAOMTG,0),U,3)
;
; choose next action; call SUBRTNS
CHOOSE2 K DIR S DIR("A")=" Select REPORT TYPE"
S DIR(0)="SO^1:MULTIVOTING RESULTS ONLY;2:FULL REPORT ON BRAINSTORMING SESSION"
D ^DIR Q:$D(DIRUT)
S AQAOPT1=$S(Y=1:"RESULTS",1:"FULL")_"^AQAOQT13"
;
DEV ;ENTRY POINT get print device
W !! S %ZIS="QP" D ^%ZIS Q:POP
I '$D(IO("Q")) U IO D @AQAOPT1 Q
K IO("Q") S ZTRTN=AQAOPT1,ZTDESC="QI TOOLS REPORT"
F I="AQAOPT1","AQAOMTG" S ZTSAVE(I)=""
D ^%ZTLOAD K ZTSK D ^%ZISC
Q
;
DICS() ;EXTR VAR to set dic(s) on brainstorm session lookup
;sessions are secured by membership in QI teams
N X
S X="I ($P(AQAOUA(""USER""),U,6)[""Q"")!($D(^AQAO(9,DUZ,""TM"",""B"",$P(^AQAO1(8,Y,0),U,2))))"
Q X
AQAOQT1 ; IHS/ORDC/LJF - BRAINSTORMING & MULTIVOTING ;
+1 ;;1.01;QAI MANAGEMENT;;OCT 05, 1995
+2 ;
+3 ;This rtn is main driver for brainstorming & multivoting tool.
+4 ;
+1 DO INTRO^AQAOHQIT
+2 KILL DIR
SET DIR(0)="SO^1:GENERAL INFO;2:BRAINSTORMING SESSION;3:MULTIVOTING;4:REPORTS"
+3 SET DIR("?")="Select one the the FUNCTIONS listed or press RETURN to exit"
+4 SET DIR("A")=" Select Option"
DO ^DIR
+5 IF $DATA(DIRUT)
GOTO EXIT
IF Y=-1
GOTO MENU
+6 ;
+7 ; >>> call rtn for user's selection
+8 SET AQAOPT=$SELECT(Y=1:"MTG",Y=2:"BRAIN",Y=3:"MULTIV",1:"REPORT")
+9 DO @AQAOPT
GOTO MENU
+10 ;
+11 ;
EXIT ; >>> eoj
+1 DO ^%ZISC
DO KILL^AQAOUTIL
QUIT
+2 ; >>>> END OF MAIN SECTION OF RTN <<<<
+3 ;
+4 ;
+5 ;
MTG ; >>> SUBRTN to enter mtg info <<<
+1 WRITE !!
KILL DIC
SET DIC="^AQAO1(8,"
SET DIC(0)="AEMQZL"
SET DLAYGO=9002169
+2 SET DIC("S")=$$DICS
DO ^DIC
KILL DLAYGO
+3 IF $DATA(DTOUT)
QUIT
IF $DATA(DUOUT)
QUIT
IF X=""
QUIT
IF Y=-1
QUIT
SET AQAOMTG=+Y
+4 WRITE !!
KILL DIE
SET DIE="^AQAO1(8,"
SET DA=AQAOMTG
SET DR="[AQAO QIT MTG]"
+5 DO ^DIE
+6 QUIT
+7 ;
+8 ;
BRAIN ;ENTRY POINT >>> SUBRTN for brainstorming session <<<
+1 WRITE !!?20,"*** BRAINSTORMING SESSION ***"
+2 ; >>> find meeting entry # and display team and date/time
+3 IF '$DATA(AQAOMTG)
Begin DoDot:1
+4 WRITE !!
KILL DIC
SET DIC="^AQAO1(8,"
SET DIC("A")="Select SESSION DATE/TIME: "
+5 SET DIC(0)="AEMZQ"
SET DIC("S")=$$DICS
DO ^DIC
IF Y>0
SET AQAOMTG=+Y
End DoDot:1
+6 IF '$DATA(AQAOMTG)
WRITE !!,"NO SESSION SELECTED"
DO MTG
IF '$DATA(AQAOMTG)
QUIT
+7 WRITE !!?2,"QI TEAM: ",$PIECE(^AQAO1(1,$PIECE(^AQAO1(8,AQAOMTG,0),U,2),0),U)
+8 WRITE !,"DATE/TIME: "
SET Y=$PIECE(^AQAO1(8,AQAOMTG,0),U)
XECUTE ^DD("DD")
WRITE Y
+9 WRITE !?4,"TOPIC: ",$PIECE(^AQAO1(8,AQAOMTG,0),U,3)
+10 ;
+11 ; >>> choose next action; call SUBRTNS
CHOOSE KILL DIR
SET DIR("A")=" Select NEXT ACTION"
+1 SET DIR(0)="SO^1:ADD IDEAS;2:LIST IDEAS;3:CATEGORIZE IDEAS;4:EDIT/DELETE IDEAS"
+2 DO ^DIR
IF $DATA(DIRUT)
QUIT
+3 SET AQAOPT1=$SELECT(Y=1:"IDEAS",Y=2:"LIST",Y=3:"CATEGORY",1:"EDIT")
+4 SET AQAOPT1=AQAOPT1_"^AQAOQT11"
DO @AQAOPT1
GOTO CHOOSE
+5 ;
+6 ;
MULTIV ; >>> SUBRTN to handle multivoting session <<<
+1 KILL AQAOAR1
WRITE !!?20,"*** MULTIVOTING SESSION ***"
+2 ; >>> find meeting entry # and display team and date/time
+3 IF '$DATA(AQAOMTG)
Begin DoDot:1
+4 WRITE !!
KILL DIC
SET DIC="^AQAO1(8,"
SET DIC("A")="Select SESSION DATE/TIME: "
+5 SET DIC(0)="AEMZQ"
SET DIC("S")=$$DICS
DO ^DIC
IF Y>0
SET AQAOMTG=+Y
End DoDot:1
+6 IF '$DATA(AQAOMTG)
Begin DoDot:1
+7 WRITE !!,"NO BRAINSTORMING SESSION SELECTED"
DO MTG
End DoDot:1
IF '$DATA(AQAOMTG)
QUIT
+8 ;
+9 WRITE !!?2,"QI TEAM: ",$PIECE(^AQAO1(1,$PIECE(^AQAO1(8,AQAOMTG,0),U,2),0),U)
+10 WRITE !,"DATE/TIME: "
SET Y=$PIECE(^AQAO1(8,AQAOMTG,0),U)
XECUTE ^DD("DD")
WRITE Y
+11 WRITE !?4,"TOPIC: ",$PIECE(^AQAO1(8,AQAOMTG,0),U,3)
+12 IF '$ORDER(^AQAO1(7,"AC",AQAOMTG,0))
WRITE !!,"NO IDEAS ENTERED!",!!
QUIT
+13 ;
+14 ; choose next action; call SUBRTNS
CHOOSE1 KILL DIR
SET DIR("A")=" Select NEXT ACTION"
+1 SET DIR(0)="SO^1:LIST CATEGORIES;2:VOTE;3:VIEW VOTING RESULTS"
+2 DO ^DIR
IF $DATA(DIRUT)
QUIT
+3 SET AQAOPT1=$SELECT(Y=1:"LIST",Y=2:"VOTE",1:"RESULTS")
+4 SET AQAOPT1=AQAOPT1_"^AQAOQT12"
DO @AQAOPT1
GOTO CHOOSE1
+5 ;
+6 ;
REPORT ; >>> SUBRTN to print results of brainstorming session <<<
+1 WRITE @IOF,!?20,"*** REPORT RESULTS OF BRAINSTORMING SESSION ***"
+2 ; find meeting entry # and display team and date/time
+3 IF '$DATA(AQAOMTG)
WRITE !!
KILL DIC
SET DIC="^AQAO1(8,"
SET DIC("A")="Select SESSION DATE/TIME: "
SET DIC(0)="AEMZQ"
SET DIC("S")=$$DICS
DO ^DIC
IF Y>0
SET AQAOMTG=+Y
+4 IF '$DATA(AQAOMTG)
WRITE !!,"NO SESSION SELECTED"
DO MTG
IF '$DATA(AQAOMTG)
QUIT
+5 WRITE !!?2,"QI TEAM: ",$PIECE(^AQAO1(1,$PIECE(^AQAO1(8,AQAOMTG,0),U,2),0),U)
+6 WRITE !,"DATE/TIME: "
SET Y=$PIECE(^AQAO1(8,AQAOMTG,0),U)
XECUTE ^DD("DD")
WRITE Y
+7 WRITE !?4,"TOPIC: ",$PIECE(^AQAO1(8,AQAOMTG,0),U,3)
+8 ;
+9 ; choose next action; call SUBRTNS
CHOOSE2 KILL DIR
SET DIR("A")=" Select REPORT TYPE"
+1 SET DIR(0)="SO^1:MULTIVOTING RESULTS ONLY;2:FULL REPORT ON BRAINSTORMING SESSION"
+2 DO ^DIR
IF $DATA(DIRUT)
QUIT
+3 SET AQAOPT1=$SELECT(Y=1:"RESULTS",1:"FULL")_"^AQAOQT13"
+4 ;
DEV ;ENTRY POINT get print device
+1 WRITE !!
SET %ZIS="QP"
DO ^%ZIS
IF POP
QUIT
+2 IF '$DATA(IO("Q"))
USE IO
DO @AQAOPT1
QUIT
+3 KILL IO("Q")
SET ZTRTN=AQAOPT1
SET ZTDESC="QI TOOLS REPORT"
+4 FOR I="AQAOPT1","AQAOMTG"
SET ZTSAVE(I)=""
+5 DO ^%ZTLOAD
KILL ZTSK
DO ^%ZISC
+6 QUIT
+7 ;
DICS() ;EXTR VAR to set dic(s) on brainstorm session lookup
+1 ;sessions are secured by membership in QI teams
+2 NEW X
+3 SET X="I ($P(AQAOUA(""USER""),U,6)[""Q"")!($D(^AQAO(9,DUZ,""TM"",""B"",$P(^AQAO1(8,Y,0),U,2))))"
+4 QUIT X