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

BPCPC1.m

Go to the documentation of this file.
  1. BPCPC1 ; IHS/OIT/MJL - PATIENT CHART GUI ROUTINES ;
  1. ;;1.5;BPC;;MAY 26, 2005
  1. DUPPAT(RESULT,BPCNAM,BPCPARAM) ;EP CALL FROM REMOTE PROC: BPC GETDUPPAT
  1. S U="^",BPCSUB=$J K ^BGURES(BPCSUB),RESULT
  1. S RESULT="^BGURES("_BPCSUB_")"
  1. S BPCNAM=$G(BPCNAM),BPCPARAM=$G(BPCPARAM)
  1. I BPCNAM="" S ^BGURES(BPCSUB,1)="-1",^BGURES(BPCSUB,2)="No Patient Name Parameter Sent!" D KILL Q
  1. S BPCX=$O(^DPT("B",BPCNAM),-1),BPCC=0,BPCCTR=1 D GETNAM,KILL
  1. Q
  1. KILL ;
  1. K BPCX,BPCY,BPCCTR,BPCC,BPCD,BPCSEX,BPCDOB,BPCSTR,BPCSUB,BPCSSN
  1. Q
  1. GETNAM ;
  1. F S BPCX=$O(^DPT("B",BPCX)) Q:BPCX=""!($E(BPCX,1,$L(BPCNAM))'=BPCNAM) D
  1. .S BPCY="" F S BPCY=$O(^DPT("B",BPCX,BPCY)) Q:BPCY="" D
  1. ..S BPCD=^DPT(BPCY,0),BPCRNAM=$P(BPCD,U,1) Q:BPCX'=BPCRNAM
  1. ..S BPCSEX=$P(BPCD,U,2)
  1. ..S BPCSEX=$S(BPCSEX="F":"FEMALE",BPCSEX="M":"MALE",1:"UNKNOWN")
  1. ..S BPCDOB=$P(BPCD,U,3),BPCSSN=$P(BPCD,U,9)
  1. ..S BPCD=$G(^DPT(BPCY,".24")),BPCMMN=$P(BPCD,U,3)
  1. ..S BPCSTR=BPCX_U_BPCSEX_U_BPCDOB_U_BPCSSN_U_BPCMMN
  1. ..S BPCC=BPCC+1,BPCCTR=BPCCTR+1
  1. ..S ^BGURES(BPCSUB,BPCCTR)=BPCSTR,^BGURES(BPCSUB,1)=BPCC
  1. I BPCC=0 S ^BGURES(BPCSUB,1)=-2,^BGURES(BPCSUB,2)="NO DUPLICATES"
  1. Q
  1. BENELIST(RESULT,BPCX,BPCMAX,BPCMORE,BPCPARAM) ;EP CALL FROM REMOTE PROC: BPC GETBENEFICIARIES
  1. S U="^",XWBWRAP=1,BPCSUB=$J K ^BGURES(BPCSUB),RESULT
  1. S RESULT="^BGURES("_BPCSUB_")"
  1. S BPCX=$G(BPCX),BPCMAX=$G(BPCMAX),BPCMORE=$G(BPCMORE),BPCPARAM=$G(BPCPARAM),BPCLEN=$L(BPCX),BPCCTR=0,BPCFLAG=0
  1. S BPCN="" S:BPCX'="" BPCN=$O(^AUTTBEN("B",BPCX),-1)
  1. S:'BPCMAX BPCMAX=50
  1. I BPCMORE'="" D MORE I BPCFLAG D KILL Q
  1. D GETBEN,KILL
  1. Q
  1. GETBEN ;
  1. F S BPCN=$O(^AUTTBEN("B",BPCN)) Q:BPCN="" D Q:BPCFLAG
  1. .I BPCX'="",$E(BPCN,1,BPCLEN)'=BPCX S BPCFLAG=1 Q
  1. .S BPCIEN="" F S BPCIEN=$O(^AUTTBEN("B",BPCN,BPCIEN)) Q:BPCIEN="" D Q:BPCFLAG
  1. ..I BPCCTR=BPCMAX D Q
  1. ...S BPCCTR=BPCCTR+1,^BGURES(BPCSUB,BPCCTR)="..MORE"_U_BPCN_"|"_BPCIEN
  1. ...S BPCFLAG=1
  1. ..S BPCCTR=BPCCTR+1,^BGURES(BPCSUB,BPCCTR)=BPCN_U_BPCIEN
  1. S ^BGURES(BPCSUB,0)=BPCCTR
  1. Q
  1. MORE ;
  1. S BPCN=$P(BPCMORE,"|",1),BPCIEN=$P(BPCMORE,"|",2),BPCCTR=BPCCTR+1
  1. S ^BGURES(BPCSUB,BPCCTR)=BPCN_U_BPCIEN
  1. I BPCCTR=BPCMAX S BPCFLAG=1
  1. Q
  1. TRIBLIST(RESULT,BPCX,BPCMAX,BPCMORE,BPCPARAM) ;EP CALL FROM REMOTE PROC: BPC GETTRIBES
  1. S U="^",XWBWRAP=1,BPCSUB=$J K ^BGURES(BPCSUB),RESULT
  1. S RESULT="^BGURES("_BPCSUB_")"
  1. S BPCX=$G(BPCX),BPCMAX=$G(BPCMAX),BPCMORE=$G(BPCMORE),BPCPARAM=$G(BPCPARAM),BPCLEN=$L(BPCX),BPCCTR=0,BPCFLAG=0
  1. S BPCN="" S:BPCX'="" BPCN=$O(^AUTTTRI("B",BPCX),-1)
  1. S:'BPCMAX BPCMAX=50
  1. I BPCMORE'="" D MORE I BPCFLAG D KILL Q
  1. D GETTRI,KILL
  1. Q
  1. GETTRI ;
  1. F S BPCN=$O(^AUTTTRI("B",BPCN)) Q:BPCN="" D Q:BPCFLAG
  1. .I BPCX'="",$E(BPCN,1,BPCLEN)'=BPCX S BPCFLAG=1 Q
  1. .S BPCIEN="" F S BPCIEN=$O(^AUTTTRI("B",BPCN,BPCIEN)) Q:BPCIEN="" D Q:BPCFLAG
  1. ..I BPCCTR=BPCMAX D Q
  1. ...S BPCCTR=BPCCTR+1,^BGURES(BPCSUB,BPCCTR)="..MORE"_U_BPCN_"|"_BPCIEN
  1. ...S BPCFLAG=1
  1. ..S BPCCTR=BPCCTR+1,^BGURES(BPCSUB,BPCCTR)=BPCN_U_BPCIEN
  1. S ^BGURES(BPCSUB,0)=BPCCTR
  1. Q
  1. COMLIST(RESULT,BPCX,BPCMAX,BPCMORE,BPCPARAM) ;EP CALL FROM REMOTE PROC: BPC GETCOMMUNITIES
  1. S U="^",XWBWRAP=1,BPCSUB=$J K ^BGURES(BPCSUB),RESULT
  1. S RESULT="^BGURES("_BPCSUB_")"
  1. S BPCX=$G(BPCX),BPCMAX=$G(BPCMAX),BPCMORE=$G(BPCMORE),BPCPARAM=$G(BPCPARAM),BPCLEN=$L(BPCX),BPCCTR=0,BPCFLAG=0
  1. S BPCN="" S:BPCX'="" BPCN=$O(^AUTTCOM("B",BPCX),-1)
  1. S:'BPCMAX BPCMAX=50
  1. I BPCMORE'="" D MORECOM I BPCFLAG D KILL Q
  1. D GETCOM,KILL
  1. Q
  1. GETCOM ;
  1. F S BPCN=$O(^AUTTCOM("B",BPCN)) Q:BPCN="" D Q:BPCFLAG
  1. .I BPCX'="",$E(BPCN,1,BPCLEN)'=BPCX S BPCFLAG=1 Q
  1. .S BPCIEN="" F S BPCIEN=$O(^AUTTCOM("B",BPCN,BPCIEN)) Q:BPCIEN="" D Q:BPCFLAG
  1. ..S BPCD=^AUTTCOM(BPCIEN,0),BPCCTY=$P(BPCD,U,2),BPCST=$P(BPCD,U,3)
  1. ..S BPCCTY=$P($G(^AUTTCTY(BPCCTY,0)),U,1)
  1. ..S BPCST=$P($G(^DIC(5,BPCST,0)),U,1)
  1. ..I BPCCTR=BPCMAX D Q
  1. ...S BPCCTR=BPCCTR+1,^BGURES(BPCSUB,BPCCTR)="..MORE"_U_BPCN_"|"_BPCIEN_"|"_BPCCTY_"|"_BPCST
  1. ...S BPCFLAG=1
  1. ..S BPCCTR=BPCCTR+1,^BGURES(BPCSUB,BPCCTR)=BPCN_U_BPCIEN_U_BPCCTY_U_BPCST
  1. S ^BGURES(BPCSUB,0)=BPCCTR
  1. Q
  1. MORECOM ;
  1. S BPCN=$P(BPCMORE,"|",1),BPCIEN=$P(BPCMORE,"|",2)
  1. S BPCCTY=$P(BPCMORE,"|",3),BPCST=$P(BPCMORE,"|",4),BPCCTR=BPCCTR+1
  1. S ^BGURES(BPCSUB,BPCCTR)=BPCN_U_BPCIEN_U_BPCCTY_U_BPCST
  1. I BPCCTR=BPCMAX S BPCFLAG=1
  1. Q
  1. STLIST(RESULT,BPCX,BPCMAX,BPCMORE,BPCPARAM) ;EP CALL FROM REMOTE PROC: BPC GETSTATES
  1. S U="^",XWBWRAP=1,BPCSUB=$J K ^BGURES(BPCSUB),RESULT
  1. S RESULT="^BGURES("_BPCSUB_")"
  1. S BPCX=$G(BPCX),BPCMAX=$G(BPCMAX),BPCMORE=$G(BPCMORE),BPCPARAM=$G(BPCPARAM),BPCLEN=$L(BPCX),BPCCTR=0,BPCFLAG=0
  1. I BPCX'="" D CKCXF I BPCFLAG D KILL Q
  1. S BPCN="" S:BPCX'="" BPCN=$O(^DIC(5,"B",BPCX),-1)
  1. S:'BPCMAX BPCMAX=50
  1. I BPCMORE'="" D MOREST I BPCFLAG D KILL Q
  1. D GETST,KILL
  1. Q
  1. CKCXF ;
  1. I $D(^DIC(5,"C",BPCX))=10 D Q
  1. .S BPCIEN=$O(^DIC(5,"C",BPCX,"")) Q:BPCIEN=""
  1. .S ^BGURES(BPCSUB,0)=1,^BGURES(BPCSUB,1)=BPCX_U_BPCIEN_U_$P(^DIC(5,BPCIEN,0),U,1)
  1. .S BPCFLAG=1
  1. Q
  1. MOREST ;
  1. S BPCCDE=$P(BPCMORE,"|",1),BPCIEN=$P(BPCMORE,"|",2)
  1. S BPCN=$P(BPCMORE,"|",3),BPCCTR=BPCCTR+1
  1. S ^BGURES(BPCSUB,BPCCTR)=BPCCDE_U_BPCIEN_U_BPCN
  1. I BPCCTR=BPCMAX S BPCFLAG=1
  1. Q
  1. GETST ;
  1. F S BPCN=$O(^DIC(5,"B",BPCN)) Q:BPCN="" D Q:BPCFLAG
  1. .I BPCX'="",$E(BPCN,1,BPCLEN)'=BPCX S BPCFLAG=1 Q
  1. .S BPCIEN="" F S BPCIEN=$O(^DIC(5,"B",BPCN,BPCIEN)) Q:BPCIEN="" D Q:BPCFLAG
  1. ..S BPCD=^DIC(5,BPCIEN,0),BPCCDE=$P(BPCD,U,2)
  1. ..I BPCCTR=BPCMAX D Q
  1. ...S BPCCTR=BPCCTR+1,^BGURES(BPCSUB,BPCCTR)="..MORE"_U_BPCCDE_"|"_BPCIEN_"|"_BPCN
  1. ...S BPCFLAG=1
  1. ..S BPCCTR=BPCCTR+1,^BGURES(BPCSUB,BPCCTR)=BPCCDE_U_BPCIEN_U_BPCN
  1. S ^BGURES(BPCSUB,0)=BPCCTR
  1. Q