1 | PRCVSUB ;ISC-SF/GJW ; 6/6/05 11:38am
|
---|
2 | ;;5.1;IFCAP;**81**;Oct 20, 2000
|
---|
3 | ;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
4 | ;
|
---|
5 | ADDSUB(PRCVSTAT,PRCVENT,PRCVTYP,PRCVMID) ;
|
---|
6 | N FDA,RESULT,MROOT,VAL,ERRNO
|
---|
7 | D ISEND(PRCVSTAT,PRCVENT)
|
---|
8 | S FDA(414.03,"?+1,",.01)=+$G(PRCVSTAT)
|
---|
9 | S FDA(414.03,"?+1,",.02)=$G(PRCVENT)
|
---|
10 | S FDA(414.03,"?+1,",.03)=$G(PRCVTYP)
|
---|
11 | S FDA(414.03,"?+1,",1)=$$NOW^XLFDT
|
---|
12 | S FDA(414.03,"?+1,",2)=1
|
---|
13 | S FDA(414.03,"?+1,",3)=$G(PRCVMID)
|
---|
14 | ;need "E" because the type field is a set of codes
|
---|
15 | D UPDATE^DIE("EK","FDA","RESULT","MROOT")
|
---|
16 | I $D(MROOT("DIERR")) D ;error(s) occured
|
---|
17 | .S VAL="E",ERRNO=""
|
---|
18 | .F S ERRNO=$O(MROOT("DIERR","E",ERRNO)) Q:ERRNO="" D
|
---|
19 | ..S VAL=VAL_"^"_ERRNO
|
---|
20 | E D
|
---|
21 | .S VAL=$G(RESULT(1,0))_"^"_$G(RESULT(1))
|
---|
22 | Q VAL
|
---|
23 | ;
|
---|
24 | FINDSUB(PRCVSTAT,PRCVENT,PRCVTYP) ;
|
---|
25 | N OUT,MROOT,VALUES,VAL,ERRNO
|
---|
26 | S VALUES(1)=+$G(PRCVSTAT)
|
---|
27 | S VALUES(2)=$G(PRCVENT)
|
---|
28 | S VALUES(3)=$G(PRCVTYP)
|
---|
29 | S VAL=$$FIND1^DIC(414.03,,"K",.VALUES,,,"MROOT")
|
---|
30 | I $D(MROOT("DIERR")) D ;error(s) occured
|
---|
31 | .S VAL=-1,ERRNO=""
|
---|
32 | .F S ERRNO=$O(MROOT("DIERR","E",ERRNO)) Q:ERRNO="" D
|
---|
33 | ..S VAL=VAL_"^"_ERRNO
|
---|
34 | Q VAL
|
---|
35 | ;
|
---|
36 | DELSUB(PRCVSTAT,PRCVENT,PRCVTYP) ;
|
---|
37 | N VAL,IENS,MYFDA,MROOT,ERRNO
|
---|
38 | S VAL=$$FINDSUB(PRCVSTAT,PRCVENT,PRCVTYP)
|
---|
39 | Q:+VAL'>0 VAL
|
---|
40 | S IENS=+VAL_","
|
---|
41 | S MYFDA(414.03,IENS,.01)="@"
|
---|
42 | D FILE^DIE(,"MYFDA","MROOT")
|
---|
43 | Q:'$D(MROOT("DIERR")) "@^"_+VAL
|
---|
44 | ;an error occured in FILE^DIE
|
---|
45 | S VAL="E",ERRNO=""
|
---|
46 | F S ERRNO=$O(MROOT("DIERR","E",ERRNO)) Q:ERRNO="" D
|
---|
47 | .S VAL=VAL_"^"_ERRNO
|
---|
48 | Q VAL
|
---|
49 | ;
|
---|
50 | ;immediate send
|
---|
51 | ISEND(PRCVSTAT,PRCVFCP) ;
|
---|
52 | N ROOT,I
|
---|
53 | S ROOT=$NA(^PRC(420,PRCVSTAT,1,PRCVFCP,4,"B"))
|
---|
54 | S I=""
|
---|
55 | F S I=$O(@ROOT@(I)) Q:I="" D
|
---|
56 | .I $$FY4^PRCVMON(I)'<$$GETFY^PRCVMON D
|
---|
57 | ..D PUSH1^PRCVMON(PRCVSTAT,I,PRCVFCP)
|
---|
58 | Q
|
---|