| 1 | GECSULOC ;WISC/RFJ-lock system                                      ;01 Nov 93
 | 
|---|
| 2 |  ;;2.0;GCS;;MAR 14, 1995
 | 
|---|
| 3 |  Q
 | 
|---|
| 4 |  ;
 | 
|---|
| 5 |  ;
 | 
|---|
| 6 | LOCKSYS(GECSSYST) ;  lock generic code sheet system
 | 
|---|
| 7 |  ;  gecssyst='SITE'-'SYSTEM ID'-'BATCH or TRANSMIT'
 | 
|---|
| 8 |  ;  example: 460-VOL-BATCH
 | 
|---|
| 9 |  ;  return entry number for success, 0 if already locked
 | 
|---|
| 10 |  ;
 | 
|---|
| 11 |  ;  system not found in file, add it
 | 
|---|
| 12 |  I '$O(^GECS(2101.6,"B",GECSSYST,0)) D
 | 
|---|
| 13 |  .   L +^GECS(2101.6):10 I '$T Q
 | 
|---|
| 14 |  .   N D0,DD,DIC,DLAYGO,X,Y
 | 
|---|
| 15 |  .   S DIC="^GECS(2101.6,",DIC(0)="L",DLAYGO=2101.6,X=GECSSYST D FILE^DICN
 | 
|---|
| 16 |  .   L -^GECS(2101.6)
 | 
|---|
| 17 |  S DA=+$O(^GECS(2101.6,"B",GECSSYST,0)) I 'DA W !,"Unable to add system ",GECSSYST," to LOCK file # 2101.6." Q 0
 | 
|---|
| 18 |  ;
 | 
|---|
| 19 |  L +^GECS(2101.6,DA):30
 | 
|---|
| 20 |  ;  success
 | 
|---|
| 21 |  I $T D NOW^%DTC S $P(^GECS(2101.6,DA,0),"^",2,4)="^"_DUZ_"^"_% Q DA
 | 
|---|
| 22 |  ;
 | 
|---|
| 23 |  ;  already locked, show who
 | 
|---|
| 24 |  S %=^GECS(2101.6,DA,0),Y=$P(%,"^",4) I Y D DD^%DT
 | 
|---|
| 25 |  W !,"SYSTEM ",GECSSYST," IS CURRENTLY LOCKED BY ",$P($G(^VA(200,+$P(%,"^",3),0)),"^")," ON ",Y,"."
 | 
|---|
| 26 |  Q 0
 | 
|---|
| 27 |  ;
 | 
|---|
| 28 |  ;
 | 
|---|
| 29 | UNLOCK(DA) ;  unlock generic code sheet system da
 | 
|---|
| 30 |  I '$D(^GECS(2101.6,DA,0)) Q
 | 
|---|
| 31 |  S $P(^GECS(2101.6,DA,0),"^",2,4)="^^"
 | 
|---|
| 32 |  L -^GECS(2101.6,DA)
 | 
|---|
| 33 |  Q
 | 
|---|