FSCLMPO ;SLC/STAFF-NOIS List Manager Protocol Other ;11/9/97  11:44
 ;;1.1;NOIS;;Sep 06, 1998
 ;
USER ; from FSCLMP
 N DA,DIC,DR,DIE,OK,SPEC,USER,Y K DIC
 S OK=1
 I '$$ACCESS^FSCU(DUZ,"SPEC") D  Q:'OK
 .N DIR,X,Y K DIR
 .S DIR(0)="YA0",DIR("A")="Do you want to edit pacakage affiliations? ",DIR("B")="YES"
 .S DIR("?",1)="Enter YES to enter or edit package affiliations."
 .S DIR("?",2)="Enter NO to simply review user defaults."
 .S DIR("?",3)="Enter '^' or '??' for more help."
 .S DIR("?")="^D HELP^FSCU(.DIR)"
 .S DIR("??")="FSC U1 NOIS"
 .D ^DIR K DIR
 .I Y'=1 Q
 .D NONSPEC^FSCLMPOD(DUZ) S OK=0 Q
 W ! S DIC=7105.2,DIC(0)="AEMQ",USER=$$VALUE^FSCGET($P($G(^FSC("SPEC",DUZ,0)),U),7105.2,.01) S:$L(USER) DIC("B")=USER D ^DIC
 I Y<0 S OK=0
 I OK D
 .S (DA,SPEC)=+Y D EN^DIQ
 .I '$$ACCESS^FSCU(DUZ,"SPEC") D PAUSE^FSCU(.OK) Q
 .I '(SPEC=DUZ&$D(DIC("B"))!$$ACCESS^FSCU(DUZ,"SUPER")) D PAUSE^FSCU(.OK) Q
 .W ! S DIE=DIC,DR=$S($$ACCESS^FSCU(DUZ,"SUPER"):".02:999",1:".02;3:6;8:999")
 .L +^FSC("SPEC",SPEC):30 I '$T W !,"Unable to edit." Q
 .D ^DIE
 .L -^FSC("SPEC",SPEC)
 K DIC
 S VALMBCK=$S($G(FSCEXIT):"Q",1:"R")
 Q
 ;
EXIT ; from FSCLMP
 S FSCEXIT=1,VALMBCK="Q"
 Q
 ;
OTHER ; from FSCLMP
 N ACTION,CALL,DIR,X,Y K DIR
 S DIR(0)="SAMO^EDITS:EDITS;NOTIFICATION:NOTIFICATION;CONTACTS:CONTACTS;WORKLOAD:WORKLOAD"
 S DIR("A")="Select (E)dits, (N)otification, (C)ontacts, or (W)orkload: "
 S DIR("?",1)="Enter EDITS to review status history and audit trail."
 S DIR("?",2)="Enter NOTIFICATION to review lists and automatic alerts."
 S DIR("?",3)="Enter CONTACTS to review phone numbers."
 S DIR("?",4)="Enter WORKLOAD to review workload entries."
 S DIR("?")="^D HELP^FSCU(.DIR)"
 S DIR("??")="FSC U1 NOIS"
 D ^DIR K DIR
 I $D(DIRUT) Q
 S ACTION=Y
 S CALL=$$CALL^FSCLMPE1(FSCCNT)
 W !!,$$SHORT^FSCGETS(CALL,"  ")
 I ACTION="EDITS" D EDITS^FSCLMPOE(CALL) Q
 I ACTION="NOTIFICATION" D NOTIFY^FSCLMPON(CALL) Q
 I ACTION="CONTACTS" D CONTACTS^FSCLMPOC(CALL) Q
 I ACTION="WORKLOAD" D WKLD^FSCLMPOW(CALL) Q
 Q
 ;
DL ; from FSCLMP
 I $G(VALMAR)["FSC MODIFY LIST" W !,"You are already using this option.",$C(7) H 2 Q
 I $G(VALMAR)["FSC INSTALLS" W !,"Unable to use this option from this screen.",$C(7) H 2 Q
 N DIC,DLAYGO,DEFLIST,FSCQEDIT,OK,Y K DIC,Y
 I $D(FSCLNAME),$D(FSCLNUM) S DEFLIST=FSCLNUM_U_$P(FSCLNAME," (MODIFIED)")
 I '$D(FSCLNAME)!'$D(FSCLNUM)!'$D(DEFLIST)!'$D(^FSC("LIST",+$G(FSCLNUM),0)) D
 .S (DIC,DLAYGO)=7107.1,DIC(0)="AELMOQ",DIC("A")="Select List: " S:$D(FSCLNAME)&($D(^FSC("LIST",+$G(FSCLNUM),0))) DIC("B")=FSCLNAME D ^DIC K DIC Q:Y<1
 .S DEFLIST=Y,FSCLNAME=$P(Y,U,2),FSCLNUM=+Y
 .I $P(DEFLIST,U,3) D BROWSE^FSCQB("",$P(DEFLIST,U,2),0,.OK)
 I '$D(FSCLNAME) Q
 I '$G(FSCLNUM) Q
 I $D(DEFLIST) D MODIFY^FSCLM($P(DEFLIST,U,2),+DEFLIST)
 I $D(FSCQEDIT) D ASKLIST^FSCLMPD
 S VALMBCK=$S($G(FSCEXIT):"Q",1:"R")
 Q
 
--- Routine Detail   --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HFSCLMPO   2885     printed  Sep 23, 2025@19:54:42                                                                                                                                                                                                     Page 2
FSCLMPO   ;SLC/STAFF-NOIS List Manager Protocol Other ;11/9/97  11:44
 +1       ;;1.1;NOIS;;Sep 06, 1998
 +2       ;
USER      ; from FSCLMP
 +1        NEW DA,DIC,DR,DIE,OK,SPEC,USER,Y
           KILL DIC
 +2        SET OK=1
 +3        IF '$$ACCESS^FSCU(DUZ,"SPEC")
               Begin DoDot:1
 +4                NEW DIR,X,Y
                   KILL DIR
 +5                SET DIR(0)="YA0"
                   SET DIR("A")="Do you want to edit pacakage affiliations? "
                   SET DIR("B")="YES"
 +6                SET DIR("?",1)="Enter YES to enter or edit package affiliations."
 +7                SET DIR("?",2)="Enter NO to simply review user defaults."
 +8                SET DIR("?",3)="Enter '^' or '??' for more help."
 +9                SET DIR("?")="^D HELP^FSCU(.DIR)"
 +10               SET DIR("??")="FSC U1 NOIS"
 +11               DO ^DIR
                   KILL DIR
 +12               IF Y'=1
                       QUIT 
 +13               DO NONSPEC^FSCLMPOD(DUZ)
                   SET OK=0
                   QUIT 
               End DoDot:1
               if 'OK
                   QUIT 
 +14       WRITE !
           SET DIC=7105.2
           SET DIC(0)="AEMQ"
           SET USER=$$VALUE^FSCGET($PIECE($GET(^FSC("SPEC",DUZ,0)),U),7105.2,.01)
           if $LENGTH(USER)
               SET DIC("B")=USER
           DO ^DIC
 +15       IF Y<0
               SET OK=0
 +16       IF OK
               Begin DoDot:1
 +17               SET (DA,SPEC)=+Y
                   DO EN^DIQ
 +18               IF '$$ACCESS^FSCU(DUZ,"SPEC")
                       DO PAUSE^FSCU(.OK)
                       QUIT 
 +19               IF '(SPEC=DUZ&$DATA(DIC("B"))!$$ACCESS^FSCU(DUZ,"SUPER"))
                       DO PAUSE^FSCU(.OK)
                       QUIT 
 +20               WRITE !
                   SET DIE=DIC
                   SET DR=$SELECT($$ACCESS^FSCU(DUZ,"SUPER"):".02:999",1:".02;3:6;8:999")
 +21               LOCK +^FSC("SPEC",SPEC):30
                   IF '$TEST
                       WRITE !,"Unable to edit."
                       QUIT 
 +22               DO ^DIE
 +23               LOCK -^FSC("SPEC",SPEC)
               End DoDot:1
 +24       KILL DIC
 +25       SET VALMBCK=$SELECT($GET(FSCEXIT):"Q",1:"R")
 +26       QUIT 
 +27      ;
EXIT      ; from FSCLMP
 +1        SET FSCEXIT=1
           SET VALMBCK="Q"
 +2        QUIT 
 +3       ;
OTHER     ; from FSCLMP
 +1        NEW ACTION,CALL,DIR,X,Y
           KILL DIR
 +2        SET DIR(0)="SAMO^EDITS:EDITS;NOTIFICATION:NOTIFICATION;CONTACTS:CONTACTS;WORKLOAD:WORKLOAD"
 +3        SET DIR("A")="Select (E)dits, (N)otification, (C)ontacts, or (W)orkload: "
 +4        SET DIR("?",1)="Enter EDITS to review status history and audit trail."
 +5        SET DIR("?",2)="Enter NOTIFICATION to review lists and automatic alerts."
 +6        SET DIR("?",3)="Enter CONTACTS to review phone numbers."
 +7        SET DIR("?",4)="Enter WORKLOAD to review workload entries."
 +8        SET DIR("?")="^D HELP^FSCU(.DIR)"
 +9        SET DIR("??")="FSC U1 NOIS"
 +10       DO ^DIR
           KILL DIR
 +11       IF $DATA(DIRUT)
               QUIT 
 +12       SET ACTION=Y
 +13       SET CALL=$$CALL^FSCLMPE1(FSCCNT)
 +14       WRITE !!,$$SHORT^FSCGETS(CALL,"  ")
 +15       IF ACTION="EDITS"
               DO EDITS^FSCLMPOE(CALL)
               QUIT 
 +16       IF ACTION="NOTIFICATION"
               DO NOTIFY^FSCLMPON(CALL)
               QUIT 
 +17       IF ACTION="CONTACTS"
               DO CONTACTS^FSCLMPOC(CALL)
               QUIT 
 +18       IF ACTION="WORKLOAD"
               DO WKLD^FSCLMPOW(CALL)
               QUIT 
 +19       QUIT 
 +20      ;
DL        ; from FSCLMP
 +1        IF $GET(VALMAR)["FSC MODIFY LIST"
               WRITE !,"You are already using this option.",$CHAR(7)
               HANG 2
               QUIT 
 +2        IF $GET(VALMAR)["FSC INSTALLS"
               WRITE !,"Unable to use this option from this screen.",$CHAR(7)
               HANG 2
               QUIT 
 +3        NEW DIC,DLAYGO,DEFLIST,FSCQEDIT,OK,Y
           KILL DIC,Y
 +4        IF $DATA(FSCLNAME)
               IF $DATA(FSCLNUM)
                   SET DEFLIST=FSCLNUM_U_$PIECE(FSCLNAME," (MODIFIED)")
 +5        IF '$DATA(FSCLNAME)!'$DATA(FSCLNUM)!'$DATA(DEFLIST)!'$DATA(^FSC("LIST",+$GET(FSCLNUM),0))
               Begin DoDot:1
 +6                SET (DIC,DLAYGO)=7107.1
                   SET DIC(0)="AELMOQ"
                   SET DIC("A")="Select List: "
                   if $DATA(FSCLNAME)&($DATA(^FSC("LIST",+$GET(FSCLNUM),0)))
                       SET DIC("B")=FSCLNAME
                   DO ^DIC
                   KILL DIC
                   if Y<1
                       QUIT 
 +7                SET DEFLIST=Y
                   SET FSCLNAME=$PIECE(Y,U,2)
                   SET FSCLNUM=+Y
 +8                IF $PIECE(DEFLIST,U,3)
                       DO BROWSE^FSCQB("",$PIECE(DEFLIST,U,2),0,.OK)
               End DoDot:1
 +9        IF '$DATA(FSCLNAME)
               QUIT 
 +10       IF '$GET(FSCLNUM)
               QUIT 
 +11       IF $DATA(DEFLIST)
               DO MODIFY^FSCLM($PIECE(DEFLIST,U,2),+DEFLIST)
 +12       IF $DATA(FSCQEDIT)
               DO ASKLIST^FSCLMPD
 +13       SET VALMBCK=$SELECT($GET(FSCEXIT):"Q",1:"R")
 +14       QUIT