Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: AMQQMGR5

AMQQMGR5.m

Go to the documentation of this file.
  1. AMQQMGR5 ; IHS/CMI/THL - SECURE DEVICES ;
  1. ;;2.0;IHS PCC SUITE;;MAY 14, 2009
  1. ;-----
  1. I $P($G(^AMQQ(8,DUZ(2),0)),U,10)'="" D OLD G EXIT
  1. D M2
  1. EXIT K X,DIRUT,DIRDT,DUOUT,DTOUT,DISYS,C,DG,%,%Y
  1. Q
  1. ;
  1. M2 W @IOF,!!,?15,"***** IDENTIFY SECURE DEVICES FOR Q-MAN *****",!!
  1. W !!,"You may want to define a group of ""secure devices"" for Q-Man. If you choose"
  1. W !,"this option, Q-Man reports can only be displayed or printed on the devices you"
  1. W !,"specify. First tell me if the set is ""inclusionary"" (all devices on your list"
  1. W !,"are secure) or ""exclusionary"" (all devices are secure unless they appear on"
  1. W !,"your list). You may assign ""secure status"" to all devices or just the printers."
  1. W !,"Finally, I will ask you to enter the devices one at a time.",!
  1. S DIR(0)="SO^1:INCLUSIONARY (secure devices in list);2:EXCLUSIONARY (non-secure devices in list);0:EXIT (no device security requested)"
  1. S DIR("A")=$C(10)_" Your choice"
  1. D ^DIR
  1. K DIR
  1. I Y=0 Q
  1. I Y=U Q
  1. D CHK
  1. I $D(AMQQQUIT) K AMQQQUIT Q
  1. I Y=2 G M2EX
  1. S DIR(0)="SO^1:ALL devices outside of your set are not secure;2:ONLY printers outside of your set are not secure;0:EXIT"
  1. S DIR("A")=$C(10)_" Your choice"
  1. D ^DIR
  1. K DIR
  1. I Y=0!(Y=U) G M2
  1. D CHK
  1. I $D(AMQQQUIT) K AMQQQUIT G M2
  1. S AMQQMGRS=$S(Y=1:1,1:2)
  1. W !!
  1. G SECURE
  1. M2EX S DIR(0)="SO^1:ALL devices outside of your set are secure;2:ONLY printers outside of your set are secure;0:EXIT"
  1. S DIR("A")=$C(10)_" Your choice"
  1. D ^DIR
  1. K DIR
  1. I Y=0!(Y=U) G M2
  1. D CHK
  1. I $D(AMQQQUIT) K AMQQQUIT G M2
  1. S AMQQMGRS=$S(Y=1:3,1:4)
  1. W !!
  1. SECURE S DR=".1////"_$S(AMQQMGRS<3:"I",1:"E")_";.09////"_$S(AMQQMGRS#2:"A",1:"P")
  1. S DA=DUZ(2)
  1. S DIE="^AMQQ(8,"
  1. D ^DIE
  1. K DIE,DA,DR,DIC
  1. D ED
  1. Q
  1. ;
  1. OLD ;
  1. W @IOF,!!,?20,"***** DEVICE MANAGEMENT *****",!!!,"Current status =>",!!
  1. S %=^AMQQ(8,DUZ(2),0)
  1. I $P(%,U,10)="I" W !,"INCLUSIONARY PROTOCOL (All devices on the list are secure)",!
  1. E W !,"EXCLUSIONARY PROTOCOL (All devices on the list are NOT secure)",!
  1. I $P(%,U,9)="A" W !,"ALL DEVICES (terminals and printers) NEED SECURITY CLEARANCE",!
  1. E W !,"ONLY PRINTERS NEED SECURITY CLEARANCE",!
  1. W !,"CURRENT LIST OF ",$S($P(%,U,10)="I":"",1:"NON-"),"SECURE DEVICES: ",!
  1. S N=0
  1. F X=0:0 S X=$O(^AMQQ(8,DUZ(2),1,X)) Q:'X D STOP S (Y,%)=^(X,0),%=$P(^%ZIS(1,%,0),U) W ?3,%,?20,$P(^%ZIS(2,^%ZIS(1,Y,"SUBTYPE"),0),U),?48,$P($G(^%ZIS(1,Y,1)),U)
  1. S DIR(0)="SO^1:CLEAR the device list and start over;2:EDIT the device list;0:EXIT"
  1. S DIR("A")="What do you want to do now"
  1. S DIR("B")="EXIT"
  1. D ^DIR
  1. K DIR
  1. I $D(DIRUT)+$D(DUOUT)+$D(DTOUT)+'Y K DIRUT,DTOUT,DUOUT G EXIT
  1. I Y=1 D CLEAR Q
  1. I Y=2 D EDIT
  1. Q
  1. ;
  1. CLEAR D WAIT^DICD
  1. S DA(1)=DUZ(2)
  1. S DIK="^AMQQ(8,"_DA(1)_",1,"
  1. F DA=0:0 S DA=$O(^AMQQ(8,DA(1),1,DA)) Q:'DA D ^DIK W "."
  1. S DR=".1///@;.09///@"
  1. S DIE="^AMQQ(8,"
  1. S DA=DUZ(2)
  1. D ^DIE
  1. K DIK,DA,DR,DIC,D,D0,DI,DIE,DQ
  1. Q
  1. ;
  1. EDIT I '$O(^AMQQ(8,DUZ(2),1,0)) W !!,"Sorry, there are no devices in the file to edit.",!!,*7 Q
  1. ED S DA(1)=DUZ(2)
  1. S DIC("P")=$P(^DD(9009078,1,0),U,2)
  1. S DIC="^AMQQ(8,"_DA(1)_",1,"
  1. S DIC(0)="AEQLM"
  1. D ^DIC
  1. K DIC,DA
  1. I (Y=-1)+$D(DTOUT)+$D(DUOUT)+($E(X)=U) K DUOUT,DTOUT Q
  1. I $P(Y,U,3) D SCREEN G ED
  1. W !,?3,"This device is already in the file. Want to remove it"
  1. S %=2
  1. D YN^DICN
  1. I $D(DTOUT)+$D(DUOUT) K DTOUT,DUOUT Q
  1. I "Nn"[$E(%Y) G ED
  1. S DA=+Y
  1. S DA(1)=DUZ(2)
  1. S DIK="^AMQQ(8,"_DA(1)_",1,"
  1. D ^DIK
  1. W !!,"DEVICE REMOVED FROM LIST"
  1. K %Y,Y,X,DIK,DA,DIC,D0,DI,DISYS
  1. G ED
  1. ;
  1. CHK I $D(DTOUT)+$D(DUOUT)+(Y=-1)+(Y="") K DIRUT,DUOUT,DTOUT S AMQQQUIT="" Q
  1. Q
  1. ;
  1. STOP N X
  1. S N=N+1
  1. W !
  1. I N=15 S N=0 R "<>",X:DTIME W $C(13),?79,$C(13)
  1. Q
  1. ;
  1. SCREEN I $P(^AMQQ(8,DUZ(2),0),U,9)'="P" Q
  1. I $P(^%ZIS(2,^%ZIS(1,$P(Y,U,2),"SUBTYPE"),0),U)["P-" Q
  1. W !!,"SORRY...This device must be a printer!",!!,*7
  1. S DA(1)=DUZ(2)
  1. S DA=+Y
  1. S DIK="^AMQQ(8,"_DA(1)_",1,"
  1. D ^DIK
  1. K DIK,DA,DIC,D0,DI,DQ
  1. S Y=-1
  1. Q
  1. ;