Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: BQIPLSL

BQIPLSL.m

Go to the documentation of this file.
  1. BQIPLSL ;PRXM/HC/DLS - Panel Share List ; 22 Nov 2005 9:18 AM
  1. ;;2.1;ICARE MANAGEMENT SYSTEM;;Feb 07, 2011
  1. ;
  1. Q
  1. ;
  1. EN(DATA,PLOWN,PLIEN) ; EP -- BQI GET SHARE LIST BY PANEL
  1. ;
  1. ;Description
  1. ; Given a panel owner and a panel IEN, generates a list of users sharing a panel.
  1. ;
  1. ;Input
  1. ; PLOWN - Panel Owner IEN
  1. ; PLIEN - IEN of the panel within the Owner's file.
  1. ;
  1. ;Output
  1. ; DATA - Name of global in which data is stored(^TMP("BQIPLSL"))
  1. ;
  1. N UID,X,BQII,DA,IENS
  1. N SHDUZ,NAME,ACC,STRT,END,SHARE
  1. S UID=$S($G(ZTSK):"Z"_ZTSK,1:$J)
  1. S DATA=$NA(^TMP("BQIPLSL",UID))
  1. K @DATA
  1. ;
  1. S BQII=0
  1. ;
  1. NEW $ESTACK,$ETRAP S $ETRAP="D ERR^BQIPLSL D UNWIND^%ZTER" ; SAC 2006 2.2.3.3.2
  1. ;
  1. D HDR
  1. ; If no PLIEN is supplied just pass header
  1. I $G(PLIEN)="" G DONE
  1. ;
  1. S SHDUZ=0,DA(2)=PLOWN,DA(1)=PLIEN
  1. F S SHDUZ=$O(^BQICARE(PLOWN,1,PLIEN,30,SHDUZ)) Q:'SHDUZ D
  1. . S DA=SHDUZ,IENS=$$IENS^DILF(.DA)
  1. . S NAME=$$GET1^DIQ(200,SHDUZ_",",.01,"E")
  1. . S ACC=$$GET1^DIQ(90505.03,IENS,.02,"I")
  1. . S STRT=$$GET1^DIQ(90505.03,IENS,.03,"I") I STRT S STRT=$$FMTE^BQIUL1(STRT)
  1. . S END=$$GET1^DIQ(90505.03,IENS,.04,"I") I END S END=$$FMTE^BQIUL1(END)
  1. . S SHARE=$$GET1^DIQ(90505.03,IENS,.05,"I") S SHARE=$S(SHARE=1:"Y",1:"N")
  1. . S BQII=BQII+1
  1. . ;
  1. . S @DATA@(BQII)=SHDUZ_"^"_NAME_"^"_ACC_"^"_STRT_"^"_END_"^"_SHARE_$C(30)
  1. ;
  1. ; Drop down to DONE...
  1. ;
  1. DONE ; -- exit code
  1. S BQII=BQII+1,@DATA@(BQII)=$C(31)
  1. Q
  1. ;
  1. HDR ; -- header code
  1. S @DATA@(BQII)="I00004SHARE_DUZ^T00050SHARE_USER_NAME^T00002SHARE_ACCESS^D00015SHARE_START_DT^D00015SHARE_END_DT^T00003SHARE_LAYOUTS"_$C(30)
  1. Q
  1. ;
  1. ERR ;
  1. D ^%ZTER
  1. NEW Y,ERRDTM
  1. S Y=$$NOW^XLFDT() X ^DD("DD") S ERRDTM=Y
  1. S BMXSEC="Recording that an error occurred at "_ERRDTM
  1. I $D(BQII),$D(DATA) S BQII=BQII+1,@DATA@(BQII)=$C(31)
  1. Q