| 1 | SDUTL3 ;ALB/REW - Primary Care API Calls ; 29 Jun 99  04:11PM
 | 
|---|
| 2 |  ;;5.3;Scheduling;**30,39,41,148,177**;Aug 13, 1993
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 | OUTPTPR(DFN,SCDATE,SCPCROLE) ;given patient, return internal^external of the pc practitioner
 | 
|---|
| 5 |  ; Input: DFN - ien of patient file (#2)
 | 
|---|
| 6 |  ;     SCDATE - Relevant Date (Default=DT)
 | 
|---|
| 7 |  ;   SCPCROLE - Type of PC Role (Default =1 (PC Practitioner),2=Attending
 | 
|---|
| 8 |  ; Returned: pointer to file #200^external value of name 
 | 
|---|
| 9 |  ;           or, if error or none defined, returns a 0 or null
 | 
|---|
| 10 |  ; Note: This call will continue to be supported with the PCMM release
 | 
|---|
| 11 |  ;     
 | 
|---|
| 12 |  ;       *** SUPPORTED API ***
 | 
|---|
| 13 |  ;
 | 
|---|
| 14 |  Q:'$G(DFN) 0
 | 
|---|
| 15 |  S SCDATE=$G(SCDATE,DT)
 | 
|---|
| 16 |  S SCPCROLE=$G(SCPCROLE) I $L(SCPCROLE)'=1!(12'[SCPCROLE) S SCPCROLE=1
 | 
|---|
| 17 |  Q $$NMPCPR^SCAPMCU2(.DFN,.SCDATE,.SCPCROLE)
 | 
|---|
| 18 |  ;
 | 
|---|
| 19 | OUTPTAP(DFN,SCDATE) ;given patient, return internal^external of the pc associate provider
 | 
|---|
| 20 |  ; Input: DFN - ien of patient file (#2)
 | 
|---|
| 21 |  ;     SCDATE - Relevant Date (Default=DT)
 | 
|---|
| 22 |  ; Returned: pointer to file #200^external value of name 
 | 
|---|
| 23 |  ;           or, if error or none defined, returns a 0 or null
 | 
|---|
| 24 |  ;
 | 
|---|
| 25 |  ;    *** SUPPORTED API ***
 | 
|---|
| 26 |  ;
 | 
|---|
| 27 |  Q:'$G(DFN) 0
 | 
|---|
| 28 |  S SCDATE=$G(SCDATE,DT)
 | 
|---|
| 29 |  Q $$NMPCPR^SCAPMCU2(.DFN,.SCDATE,3)
 | 
|---|
| 30 |  ;
 | 
|---|
| 31 | OUTPTTM(DFN,SCDATE,ASSTYPE) ;given patient, return internal^external of the pc team
 | 
|---|
| 32 |  ;Input: DFN - ien of patient file (#2)
 | 
|---|
| 33 |  ;    SCDATE - Date of interest (Default=dt)
 | 
|---|
| 34 |  ;   ASSTYPE - Assignment Type (Default=1: PC Team)
 | 
|---|
| 35 |  ;  
 | 
|---|
| 36 |  ; Returned: pointer to team file (#404.51)
 | 
|---|
| 37 |  ;           or, if error or none defined, returns 0 or null
 | 
|---|
| 38 |  ; Note: This call will continue to be supported with the PCMM release
 | 
|---|
| 39 |  ;       additional, optional parameters may be added (e.g. effective dt)
 | 
|---|
| 40 |  ;
 | 
|---|
| 41 |  Q:'$G(DFN) 0
 | 
|---|
| 42 |  S SCDATE=$G(SCDATE,DT)
 | 
|---|
| 43 |  S ASSTYPE=$G(ASSTYPE,1)
 | 
|---|
| 44 |  Q $$NMPCTM^SCAPMCU2(.DFN,.SCDATE,.ASSTYPE)
 | 
|---|
| 45 |  ;
 | 
|---|
| 46 | INPTPR(DFN,PRACT) ;store current PC practitioner; return SDOKS=1, if OK
 | 
|---|
| 47 |  ; Input: DFN:    ien of patient file (#2)
 | 
|---|
| 48 |  ;        PRACT:  ien of file #200 if adding,changing field
 | 
|---|
| 49 |  ;                null or '@' if deleting field
 | 
|---|
| 50 |  ; Output:SDOKS:  0, if fails to store, 1 otherwise
 | 
|---|
| 51 |  ;
 | 
|---|
| 52 |  ; Note: This data is stored in field #404.01 of the patient file.
 | 
|---|
| 53 |  ;       With the release of PCMM, this is no longer a valid method
 | 
|---|
| 54 |  ;       to enter provider information for PCMM.
 | 
|---|
| 55 |  ; 
 | 
|---|
| 56 |  ;       **** PLANNED FOR REMOVAL IN THE FUTURE ****
 | 
|---|
| 57 |  ; 
 | 
|---|
| 58 |  ; Selected NEW PERSON entry must be active and must hold provider key
 | 
|---|
| 59 |  I '$G(DFN)!('$D(PRACT)#2)!('$D(^DPT(+DFN,0))) S SDOKS=0 Q
 | 
|---|
| 60 |  D EN^DDIOL("Note: This is NOT automatically added to PCMM Files")
 | 
|---|
| 61 |  D EN^DDIOL("This data should now be entered via PCMM Input Screens")
 | 
|---|
| 62 |  S SDOKS=1
 | 
|---|
| 63 |  N DIE,DIC,DR,DA,X
 | 
|---|
| 64 |  I PRACT=""!(PRACT="@") D  G QTIPR
 | 
|---|
| 65 |  .S DIE="^DPT("
 | 
|---|
| 66 |  .S DR="404.01////^S X=""@"""
 | 
|---|
| 67 |  .S DA=DFN
 | 
|---|
| 68 |  .D ^DIE
 | 
|---|
| 69 |  I '$$SCREEN^DGPMDD(PRACT) S SDOKS=0 Q
 | 
|---|
| 70 |  I $D(^VA(200,+PRACT,0)) D
 | 
|---|
| 71 |  .S DIE="^DPT("
 | 
|---|
| 72 |  .S DR="404.01////^S X=+PRACT"
 | 
|---|
| 73 |  .S DA=DFN
 | 
|---|
| 74 |  .D ^DIE
 | 
|---|
| 75 |  E  D
 | 
|---|
| 76 |  .S SDOKS=0
 | 
|---|
| 77 | QTIPR Q
 | 
|---|
| 78 | INPTTM(DFN,TEAM) ;store current PC team; return SDOKS=0, if fails
 | 
|---|
| 79 |  ; Input: DFN:   ien of patient file (#2)
 | 
|---|
| 80 |  ;        TEAM:  ien of file #404.51 if adding,changing field
 | 
|---|
| 81 |  ;               null or '@' if deleting field
 | 
|---|
| 82 |  ; Output:SDOKS: 0, if fails to store, 1 otherwise
 | 
|---|
| 83 |  ;
 | 
|---|
| 84 |  ; Note: This data is stored in field #404.02 of the patient file.
 | 
|---|
| 85 |  ;       With the release of PCMM, this is no longer a valid method 
 | 
|---|
| 86 |  ;       to enter team information for PCMM. 
 | 
|---|
| 87 |  ;  
 | 
|---|
| 88 |  ;       **** PLANNED FOR REMOVAL IN THE FUTURE ****
 | 
|---|
| 89 |  ; 
 | 
|---|
| 90 |  I '$G(DFN)!('$D(TEAM)#2)!('$D(^DPT(+DFN,0))) S SDOKS=0 Q
 | 
|---|
| 91 |  D EN^DDIOL("This data should now be entered via PCMM Input Screens")
 | 
|---|
| 92 |  N DIE,DIC,DR,DA,X
 | 
|---|
| 93 |  S SDOKS=1
 | 
|---|
| 94 |  I TEAM=""!(TEAM="@") D  G QTITM
 | 
|---|
| 95 |  .S DIE="^DPT("
 | 
|---|
| 96 |  .S DR="404.02////^S X=""@"""
 | 
|---|
| 97 |  .S DA=DFN
 | 
|---|
| 98 |  .D ^DIE
 | 
|---|
| 99 |  I $D(^SCTM(404.51,+TEAM,0)) D
 | 
|---|
| 100 |  .S DIE="^DPT("
 | 
|---|
| 101 |  .S DR="404.02////^S X=+TEAM"
 | 
|---|
| 102 |  .S DA=DFN
 | 
|---|
| 103 |  .D ^DIE
 | 
|---|
| 104 |  E  D
 | 
|---|
| 105 |  .S SDOKS=0
 | 
|---|
| 106 | QTITM Q
 | 
|---|