1 | VAQFILE2 ;ALB/MFK - MESSAGE FILING;19-OCT-95
|
---|
2 | ;;1.5;PATIENT DATA EXCHANGE;**16,20**;NOV 17, 1993
|
---|
3 | FILESEG(FILE,DA,FIELD,VALUE1,VALUE2,VALUE3) ;FILE INFORMATION
|
---|
4 | ;INPUT : FILE - File number
|
---|
5 | ; DA - IFN of entry to edit
|
---|
6 | ; FIELD - Field of multiple
|
---|
7 | ; VALUE1 - Name of segment to be filed
|
---|
8 | ; VALUE2 - Time limit of segment being filed
|
---|
9 | ; VALUE3 - Occurrence limit of segment being filed
|
---|
10 | ;OUTPUT : 0 - Success
|
---|
11 | ; -1^Error_text - Error
|
---|
12 | ;NOTES : It is the responsibility of
|
---|
13 | ; the calling routine to verify that VALUE can be added as
|
---|
14 | ; an entry in the multiple. It is also the responsibility
|
---|
15 | ; of the calling routine to verify that VALUE is an entry in
|
---|
16 | ; the subfile when deleting/editing.
|
---|
17 | ;
|
---|
18 | ;CHECK INPUT
|
---|
19 | Q:('$G(FILE)) "-1^Did not pass file number"
|
---|
20 | Q:('$D(^DD(FILE))) "-1^Did not pass valid file number"
|
---|
21 | Q:('$G(DA)) "-1^Did not pass entry number"
|
---|
22 | Q:('$D(FIELD)) "-1^Field not passed"
|
---|
23 | S VALUE1=$G(VALUE1)
|
---|
24 | Q:(VALUE1="") "-1^No .01 sent"
|
---|
25 | S VALUE2=$G(VALUE2)
|
---|
26 | S VALUE3=$G(VALUE3)
|
---|
27 | ;DECLARE VARIABLES
|
---|
28 | N DIE,DR,X,DIC,Y,DLAYGO
|
---|
29 | K DD,DO
|
---|
30 | ; SET UP FILE^DICN CALL
|
---|
31 | S DIC=$G(^DIC(FILE,0,"GL"))
|
---|
32 | S DIC(0)="XL"
|
---|
33 | S DLAYGO=FILE
|
---|
34 | Q:(DIC="") "-1^Could not determine global root of file"
|
---|
35 | Q:('$D(@(DIC_DA_")"))) "-1^Did not pass valid entry number"
|
---|
36 | S MULT=$P($P($G(^DD(FILE,FIELD,0)),"^",4),";",1)
|
---|
37 | S DIC=DIC_DA_",MULT,"
|
---|
38 | S DIC("P")=+$P($G(^DD(FILE,FIELD,0)),"^",2)
|
---|
39 | I ('DIC("P")) Q "-1^Main field is not a multiple"
|
---|
40 | S DA(1)=DA
|
---|
41 | S DIC("DR")=".01////"_VALUE1_";.02////"_VALUE2_";.03////"_VALUE3
|
---|
42 | S X=VALUE1
|
---|
43 | D FILE^DICN
|
---|
44 | Q:($D(Y)="-1") "-1^Could not file new value"
|
---|
45 | Q 0
|
---|