1 | SDOEPRV ;ALB/MJK - ACRP Provider APIs For An Encounter ;8/12/96
|
---|
2 | ;;5.3;Scheduling;**131**;Aug 13, 1993
|
---|
3 | ;
|
---|
4 | PRV(SDOE,SDERR) ; -- SDOE ASSIGNED A PROVIDER
|
---|
5 | ; API ID: 63
|
---|
6 | ;
|
---|
7 | ;
|
---|
8 | N SDOK
|
---|
9 | S SDOK=0
|
---|
10 | ;
|
---|
11 | ; -- do validation checks
|
---|
12 | IF '$$VALOE^SDOEOE(.SDOE,$G(SDERR)) G PRVQ
|
---|
13 | IF $$OLD^SDOEUT(SDOE) S SDOK=$$OLDPRV(SDOE) G PRVQ
|
---|
14 | ;
|
---|
15 | S SDOK=$$PRV^PXAPIOE($$VIEN^SDOEUT(.SDOE),$G(SDERR))
|
---|
16 | PRVQ Q SDOK
|
---|
17 | ;
|
---|
18 | ;
|
---|
19 | GETPRV(SDOE,SDPRV,SDERR) ; -- SDOE GET PROVIDERS
|
---|
20 | ; API ID: 58
|
---|
21 | ;
|
---|
22 | ;
|
---|
23 | GETPRVG ;; -- goto entry point
|
---|
24 | ; -- do validation checks
|
---|
25 | IF '$$VALOE^SDOEOE(.SDOE,$G(SDERR)) G GETPRVQ
|
---|
26 | IF $$OLD^SDOEUT(SDOE) D OLDPRVS(SDOE,.SDPRV) G GETPRVQ
|
---|
27 | ;
|
---|
28 | D GETPRV^PXAPIOE($$VIEN^SDOEUT(.SDOE),.SDPRV,$G(SDERR))
|
---|
29 | GETPRVQ Q
|
---|
30 | ;
|
---|
31 | ;
|
---|
32 | FINDPRV(SDOE,SDPRVID,SDERR) ; -- SDOE FIND PROVIDER
|
---|
33 | ; API ID: 69
|
---|
34 | ;
|
---|
35 | ;
|
---|
36 | N SDPRVS,SDOK,I
|
---|
37 | S SDPRVS="SDPRVS"
|
---|
38 | ;
|
---|
39 | ; -- do validation checks
|
---|
40 | IF '$$VALPRV(.SDPRVID,$G(SDERR)) S SDOK=0 G FINDPRVQ
|
---|
41 | ;
|
---|
42 | D GETPRV(.SDOE,.SDPRVS,$G(SDERR))
|
---|
43 | S (I,SDOK)=0
|
---|
44 | F S I=$O(SDPRVS(I)) Q:'I S SDOK=(+SDPRVS(I)=SDPRVID) Q:SDOK
|
---|
45 | FINDPRVQ Q SDOK
|
---|
46 | ;
|
---|
47 | ;
|
---|
48 | VALPRV(SDPRVID,SDERR) ; -- validate provider input
|
---|
49 | ;
|
---|
50 | ; -- do checks
|
---|
51 | IF SDPRVID,$D(^VA(200,SDPRVID,0)) Q 1
|
---|
52 | ;
|
---|
53 | ; -- build error msg
|
---|
54 | N SDIN,SDOUT
|
---|
55 | S SDIN("ID")=SDPRVID
|
---|
56 | S SDOUT("ID")=SDPRVID
|
---|
57 | D BLD^SDQVAL(4096800.003,.SDIN,.SDOUT,$G(SDERR))
|
---|
58 | Q 0
|
---|
59 | ;
|
---|
60 | ;
|
---|
61 | OLDPRV(SDOE) ; -- at least one provider for OLD encounter?
|
---|
62 | Q ($O(^SDD(409.44,"OE",+SDOE,0))>0)
|
---|
63 | ;
|
---|
64 | OLDPRVS(SDOE,SDARY) ; -- get provider's for OLD encounter
|
---|
65 | N SDIEN,SDCNT,Y,X
|
---|
66 | S (SDIEN,SDCNT)=0
|
---|
67 | F S SDIEN=$O(^SDD(409.44,"OE",SDOE,SDIEN)) Q:'SDIEN D
|
---|
68 | . S SDCNT=SDCNT+1,X=$G(^SDD(409.44,SDIEN,0))
|
---|
69 | . S $P(Y,U,1)=+X ; -- person ien
|
---|
70 | . S $P(Y,U,6)=$P(X,"^",3) ; -- person class
|
---|
71 | . S @SDARY@(SDIEN)=Y
|
---|
72 | S @SDARY=SDCNT
|
---|
73 | Q
|
---|
74 | ;
|
---|