source: FOIAVistA/tag/r/SCHEDULING-SD-SC/SCUTBK4.m@ 636

Last change on this file since 636 was 628, checked in by George Lilly, 14 years ago

initial load of FOIAVistA 6/30/08 version

File size: 2.0 KB
Line 
1SCUTBK4 ;ALB/JLU;BROKER UTILITIES
2 ;;5.3;Scheduling;**148,157**;AUG 13, 1993
3ACTPOS(RESULTS,SCARY) ;
4 ;
5 ;This broker entry point returns an array of active positions for a
6 ;patient on a specific team.
7 ;
8 ;INPUTS SCARY - Contains the following subscripted elements
9 ; DFN - DFN of the patient.
10 ; BEGIN - The beginning date range.
11 ; END - The ending date range.
12 ; TEAM - The team associated with the patient.
13 ;
14 ;OUTPUTS RESULTS - The array of active positions. The following
15 ; is a description of the piece structure.
16 ; PIECE - Description
17 ; 1 IEN of TEAM POSITION FILE(#404.57)
18 ; 2 NAME of Position
19 ; 3 Current effective date
20 ; 4 Pointer to role (403.46)
21 ; 5 Name of Standard role
22 ; 6 Pointer to User Class
23 ; 7 Name of User Class
24 ; 8 IEN of 404.43
25 ;
26 N SCOK,SCDT,SCDFN,SCTEAM,SCPOS,LP,CNT,SCERR
27 ;
28 D CHK^SCUTBK
29 D TMP^SCUTBK
30 ;
31 D PARSE(.SCARY) ;parse array for inputs
32 K ^TMP($J,"ACTLST")
33 ;gets a list o positions for this patient
34 S SCOK=$$TPPT^SCAPMC(SCDFN,.SCDT,"","","","","","SCPOS","SCBKERR")
35 I 'SCOK G EXIT
36 S CNT=1
37 ;
38 ;loop through positions only getting the ones associated with the team
39 ;and that are active.
40 ;
41 F LP=0:0 S LP=$O(SCPOS(LP)) Q:'LP DO
42 .I $P(SCPOS(LP),U,3)'=SCTEAM Q
43 .I $P(SCPOS(LP),U,6)]"" Q
44 .S ^TMP($J,"ACTLST",CNT)=$P(SCPOS(LP),U,1)_U_$P(SCPOS(LP),U,2)_U_$P(SCPOS(LP),U,5)_U_$P(SCPOS(LP),U,7)_U_$P(SCPOS(LP),U,8)_U_$P(SCPOS(LP),U,9)_U_$P(SCPOS(LP),U,10)_U_$P(SCPOS(LP),U,4)
45 .S CNT=CNT+1
46 .Q
47 ;
48EXIT S RESULTS=$NA(^TMP($J,"ACTLST"))
49 Q
50 ;
51PARSE(ARY) ;parses the input parameters from the broker.
52 ;
53 S SCDFN=$G(ARY("DFN"))
54 S SCDT("BEGIN")=$G(ARY("BEGIN"))
55 S SCDT("END")=$G(ARY("END"))
56 S SCTEAM=$G(ARY("TEAM"))
57 Q
58 ;
59PARIEN(RESULT) ;returns the ien for 404.91
60 ;used by SCMC GET PARAMETER IEN (rpc)
61 ;
62 N RES
63 S RES=$O(^SD(404.91,0))
64 S RESULT=$S(RES="":0,1:+RES)
65 Q
Note: See TracBrowser for help on using the repository browser.