| 1 | ECMFLOC ;ALB/JAM-Event Capture Management Location Filer ;16 Feb 01
 | 
|---|
| 2 |  ;;2.0; EVENT CAPTURE ;**25**;8 May 96
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 | FILE ;Used by the RPC broker to file local procedures in #4
 | 
|---|
| 5 |  ;     Variables passed in
 | 
|---|
| 6 |  ;       ECIEN  - Location IEN
 | 
|---|
| 7 |  ;       ECST   - Location Status
 | 
|---|
| 8 |  ;
 | 
|---|
| 9 |  ;     Variable return
 | 
|---|
| 10 |  ;       ^TMP($J,"ECMSG",n)=Success or failure to file in #4^Message
 | 
|---|
| 11 |  ;
 | 
|---|
| 12 |  N ECERR,ECNO
 | 
|---|
| 13 |  S ECERR=0 D CHKDT I ECERR Q
 | 
|---|
| 14 |  K DIC S DIC=4,DIC(0)="XN",X=ECIEN D ^DIC I Y<0 D  Q
 | 
|---|
| 15 |  . S ^TMP($J,"ECMSG",1)="0^Location Not on File"
 | 
|---|
| 16 |  I ECST="C" D
 | 
|---|
| 17 |  . K DIE,DR S DIE=4,DR="720///1",DA=ECIEN D ^DIE
 | 
|---|
| 18 |  . S ^TMP($J,"ECMSG",1)="1^Location flagged for Event Capture"
 | 
|---|
| 19 |  I ECST="R" D
 | 
|---|
| 20 |  . S ECNO=0 I '$D(^DIC(4,ECIEN,"EC")) S ECNO=1
 | 
|---|
| 21 |  . I $D(^DIC(4,ECIEN,"EC")),+$P(^("EC"),"^")=0 S ECNO=1
 | 
|---|
| 22 |  . I ECNO S ^TMP($J,"ECMSG",1)="0^Not flagged as current location." Q
 | 
|---|
| 23 |  . K DIE,DR S DIE=4,DA=ECIEN,DR="720///@" D ^DIE
 | 
|---|
| 24 |  . S ^TMP($J,"ECMSG",1)="1^Location inactivated for Event Capture"
 | 
|---|
| 25 |  K DA,DR,DIE,DIC
 | 
|---|
| 26 |  Q
 | 
|---|
| 27 | CHKDT ;Required Data Check
 | 
|---|
| 28 |  N I,C
 | 
|---|
| 29 |  S C=1
 | 
|---|
| 30 |  F I="ECIEN","ECST" D
 | 
|---|
| 31 |  .I $G(@I)="" S ^TMP($J,"ECMSG",C)="0^Key data missing "_I,C=C+1,ECERR=1
 | 
|---|
| 32 |  Q
 | 
|---|
| 33 |  ;
 | 
|---|
| 34 | HFS ;Used by the RPC broker to add/update or delete an entry in the
 | 
|---|
| 35 |  ;PARAMETER file #8989.5
 | 
|---|
| 36 |  ;     Variables passed in
 | 
|---|
| 37 |  ;       ECDIV  - Division IEN
 | 
|---|
| 38 |  ;       ECHFS  - Directory/path
 | 
|---|
| 39 |  ;       ECOPER - Operation (add/update or delete)
 | 
|---|
| 40 |  ;
 | 
|---|
| 41 |  ;     Variable return
 | 
|---|
| 42 |  ;       ^TMP($J,"ECMSG",n)=Success or failure to file in #8989.5^Message
 | 
|---|
| 43 |  ;
 | 
|---|
| 44 |  N ECERR,ECPAR
 | 
|---|
| 45 |  S ECERR=0 D CHKDT1 I ECERR Q
 | 
|---|
| 46 |  K DIC S DIC=4,DIC(0)="XN",X=ECDIV D ^DIC I Y<0 D  Q
 | 
|---|
| 47 |  . S ^TMP($J,"ECMSG",1)="0^Division Not on File"
 | 
|---|
| 48 |  I '$G(^DIC(4,ECDIV,"EC")) S ^TMP($J,"ECMSG",1)="0^Not an EC Division" Q
 | 
|---|
| 49 |  S ECDIV=ECDIV_";DIC(4,",ECPAR="EC HFS SCRATCH"
 | 
|---|
| 50 |  I ECOPER="A" D  Q
 | 
|---|
| 51 |  . D EN^XPAR(ECDIV,ECPAR,,ECHFS,.ECERR)
 | 
|---|
| 52 |  . I '+ECERR S ^TMP($J,"ECMSG",1)="1^Directory successful added" Q
 | 
|---|
| 53 |  . S ^TMP($J,"ECMSG",1)="0^Error adding directory"
 | 
|---|
| 54 |  I ECOPER="D" D
 | 
|---|
| 55 |  . D NDEL^XPAR(ECDIV,ECPAR,.ECERR)
 | 
|---|
| 56 |  . I '+ECERR S ^TMP($J,"ECMSG",1)="1^Directory successful deleted" Q
 | 
|---|
| 57 |  . S ^TMP($J,"ECMSG",1)="0^Error deleting directory"
 | 
|---|
| 58 |  Q
 | 
|---|
| 59 | CHKDT1 ;Required Data Check
 | 
|---|
| 60 |  N I,C
 | 
|---|
| 61 |  S C=1
 | 
|---|
| 62 |  F I="ECDIV","ECHFS","ECOPER" D
 | 
|---|
| 63 |  .I $G(@I)="" S ^TMP($J,"ECMSG",C)="0^Key data missing "_I,C=C+1,ECERR=1
 | 
|---|
| 64 |  Q
 | 
|---|