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

BGP1GU.m

Go to the documentation of this file.
  1. BGP1GU ; IHS/CMI/LAB - BGP Gui Utilities 10/29/2004 3:28:39 PM 19 Sep 2005 5:28 PM 27 Apr 2010 10:28 PM ;
  1. ;;11.1;IHS CLINICAL REPORTING SYSTEM;;JUN 27, 2011;Build 33
  1. ;
  1. ;
  1. DEBUG(RETVAL,BGPSTR) ;run the debugger
  1. D DEBUG^%Serenji("UPL^BGP1GU(.RETVAL,.BGPSTR)")
  1. Q
  1. ;
  1. KEYS(RETVAL,BGPSTR) ;-- return keys for user
  1. S X="MERR^BGP1GU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPDA,BGPNS,P,BGPDATA,BGPKEYI,BGPKEY,BGPI
  1. S BGPI=0
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S ^BGPTMP($J,BGPI)="T00030KEYS"_$C(30)
  1. S P="|"
  1. S BGPNS=$P(BGPSTR,P)
  1. S BGPDA=0 F S BGPDA=$O(^VA(200,DUZ,51,BGPDA)) Q:'BGPDA D
  1. . S BGPDATA=$G(^VA(200,DUZ,51,BGPDA,0))
  1. . S BGPKEYI=$P(BGPDATA,U)
  1. . S BGPKEY=$P($G(^DIC(19.1,BGPKEYI,0)),U)
  1. . I BGPNS'="*" Q:$E(BGPKEY,1,$L(BGPNS))'[BGPNS
  1. . S BGPI=BGPI+1
  1. . S ^BGPTMP($J,BGPI)=BGPKEY_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_$G(BGPERR)
  1. Q
  1. ;
  1. SP(RETVAL,BGPSTR) ;-- get the site parameter entry
  1. N BGPDA,BGPI,P
  1. S P="|"
  1. S BGPSE=$P(BGPSTR,P)
  1. I BGPSE="" S BGPSE=DUZ(2)
  1. I BGPSE'?.N S BGPSE=$O(^DIC(4,"B",BGPSE,0))
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S ^BGPTMP($J,BGPI)="T00010BMXIEN^T00050Location^T00050Home Location^T00050Community Taxonomy^T00001EISS"_$C(30)
  1. S BGPDA=0 F S BGPDA=$O(^BGPSITE("B",BGPSE,BGPDA)) Q:'BGPDA D
  1. . N BGPDATA,BGPLI,BGPL,BGPLA,BGPHI,BGPH,BGPHA,BGPTX,BGPTXI,BGPEISS
  1. . S BGPDATA=$G(^BGPSITE(BGPDA,0))
  1. . S BGPLI=$P(BGPDATA,U)
  1. . S BGPL=$P($G(^DIC(4,BGPLI,0)),U)
  1. . S BGPLA=$P($G(^AUTTLOC(BGPLI,0)),U,10)
  1. . S BGPHI=$P(BGPDATA,U,2)
  1. . S BGPH=$S($G(BGPHI):$P($G(^DIC(4,BGPHI,0)),U),1:"")
  1. . S BGPHA=$S($G(BGPHI):$P($G(^AUTTLOC(BGPHI,0)),U,10),1:"")
  1. . S BGPTXI=$P(BGPDATA,U,5)
  1. . S BGPTX=$S($P(BGPDATA,U,5):$P($G(^ATXAX($P(BGPDATA,U,5),0)),U),1:"")
  1. . S BGPEISS=$S($P(BGPDATA,U,8):1,1:0)
  1. . S BGPI=BGPI+1
  1. . S ^BGPTMP($J,BGPI)=BGPDA_U_$S($G(BGPLI):BGPLI_"~"_BGPL,1:"")_U_$S($G(BGPHI):BGPHI_"~"_BGPH,1:"")_U_$S($G(BGPTXI):BGPTXI_"~"_$G(BGPTX),1:"")_U_$G(BGPEISS)_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_$G(BGPERR)
  1. Q
  1. ;
  1. TAXCHK(RETVAL,BGPSTR) ;-- check taxonomies for National GPRA Report
  1. S X="MERR^BGP1GU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPI,BGPJ,BGPDATA,BGPDA,BGPRTN,P,BGPCALL
  1. S P="|"
  1. S BGPI=0
  1. S BGPERR=""
  1. S BGPRTN=$P(BGPSTR,P)
  1. S BGPCALL=$P(BGPSTR,P,2)
  1. I BGPCALL="GPU" S BGP1GPU=1
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S ^BGPTMP($J,BGPI)="T00250DATA"_$C(30)
  1. S BGPJ=0
  1. S IOM=80
  1. D GUIR^BGPXBLM("GUICHK^"_BGPRTN,"^XTMP(""BGPTAX"",$J)")
  1. S BGPDA=.5 F S BGPDA=$O(^XTMP("BGPTAX",$J,BGPDA)) Q:'BGPDA D
  1. . N BGPDATA
  1. . S BGPI=BGPI+1
  1. . S BGPDATA=$G(^XTMP("BGPTAX",$J,BGPDA))
  1. . S ^BGPTMP($J,BGPI)=BGPDATA_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_BGPERR
  1. K ^XTMP("BGPTAX",$J)
  1. Q
  1. ;
  1. CATSTR(BGPSRET,STR) ;EP -- concatenate a long string in
  1. N BGPDA
  1. S BGPSRET=""
  1. S BGPDA=0 F S BGPDA=$O(STR(BGPDA)) Q:'BGPDA D
  1. . S BGPSRET=BGPSRET_$G(STR(BGPDA))
  1. Q
  1. ;
  1. MERR ; MUMPS ERROR TRAP
  1. N BGPX
  1. X ("S BGPX=$"_"ZE")
  1. S BGPX="MUMPS error: """_BGPX_""""
  1. D ^%ZTER
  1. D ERR(BGPX)
  1. Q
  1. ;
  1. ERR(ERR) ; BMX ADO SCHEMA ERROR PROCESSOR
  1. N BGPXA
  1. S BGPXA="0|"_ERR_$C(31) ;cmi/maw changed to end of table marker crs 8.0 p2
  1. S @RETVAL@(1)=BGPXA
  1. Q
  1. ;
  1. FAC(RETVAL,BGPSTR) ;-- return facilities based on parameters passed
  1. S X="MERR^BGP1GU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPI,BGPJ,BGPDATA,BGPDA,P,BGPERR,BGPCT,BGPYN,BGPOT,BGPOPT,BGPRT
  1. N BGPQTR,BGPRE,BGPBAS,BGPBEN,BGPFAC
  1. S P="|"
  1. S BGPI=0
  1. S BGPERR=""
  1. S BGPRT=$P(BGPSTR,P)
  1. S BGPPER=$P(BGPSTR,P,2)
  1. S BGPQTR=$P(BGPSTR,P,3)
  1. S BGPBAS=$P(BGPSTR,P,4)
  1. S BGPBEN=$P(BGPSTR,P,5)
  1. S BGPNGR09=$P(BGPSTR,P,6) ;crs 8.0 p3 for area 09 report
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S ^BGPTMP($J,BGPI)="T00007BMXIEN^T00030Service Unit^T00030Facility^T00020Begin Date^T00020End Date^T00020Base Beg^T00020Base End^T00020Date Run"_$C(30)
  1. D GET^BGP1ASL(.BGPFAC,.BGPFILE,BGPRT,BGPPER,BGPQTR,BGPBAS,BGPBEN)
  1. N BGPDA S BGPDA=0 F S BGPDA=$O(BGPFAC(BGPDA)) Q:'BGPDA D
  1. . S BGPI=BGPI+1
  1. . S ^BGPTMP($J,BGPI)=BGPDA_U_$G(BGPFAC(BGPDA))_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_BGPERR
  1. D EN^XBVK("BGP")
  1. Q
  1. ;
  1. SITE(RETVAL,BGPSTR) ;-- save the site parameters
  1. S X="MERR^BGP1GU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPI,BGPJ,BGPDATA,BGPDA,P,BGPERR,BGPFAC,BGPTAX,BGPHLOC,R,BGPEISS
  1. S P="|",R="~"
  1. S BGPI=0
  1. S BGPERR=""
  1. S BGPFAC=$P($P(BGPSTR,P),R)
  1. S BGPTAX=$P($P(BGPSTR,P,2),R)
  1. S BGPHLOC=$P($P(BGPSTR,P,3),R)
  1. S BGPHLOCI=$O(^AUTTLOC("B",BGPHLOC,0))
  1. S BGPEISS=$P(BGPSTR,P,4)
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S ^BGPTMP($J,BGPI)="T00007BMXIEN^T00030Error"_$C(30)
  1. N BGPFDA,BGPIENS,BGPERR
  1. I $O(^BGPSITE("B",BGPFAC,0)) D
  1. . S BGPIENS=$O(^BGPSITE("B",BGPFAC,0))_","
  1. . S BGPFDA(90241.02,BGPIENS,.05)=BGPTAX
  1. . S BGPFDA(90241.02,BGPIENS,.02)=BGPHLOC
  1. . S BGPFDA(90241.02,BGPIENS,.04)=BGPEISS
  1. . D FILE^DIE("K","BGPFDA","BGPERR(1)")
  1. . I $G(BGPERR(1)) D Q
  1. .. S BGPI=BGPI+1
  1. .. S ^BGPTMP($J,BGPI)="1^Error Saving Site Parameters"
  1. . S BGPI=BGPI+1
  1. . S ^BGPTMP($J,BGPI)="0^Site Parameters Saved"
  1. I '$O(^BGPSITE("B",BGPFAC,0)) D
  1. . S BGPIENS=""
  1. . S BGPIENS(1)=BGPFAC
  1. . S BGPFDA(90241.02,"+1,",.01)=BGPFAC
  1. . S BGPFDA(90241.02,"+1,",.02)=BGPHLOC
  1. . S BGPFDA(90241.02,"+1,",.04)=BGPEISS
  1. . S BGPFDA(90241.02,"+1,",.05)=BGPTAX
  1. . D UPDATE^DIE("","BGPFDA","BGPIENS","BGPERR(1)")
  1. . I $G(BGPERR(1)) D Q
  1. .. S BGPI=BGPI+1
  1. .. S ^BGPTMP($J,BGPI)="1^Error Saving Site Parameters"
  1. . S BGPI=BGPI+1
  1. . S ^BGPTMP($J,BGPI)="0^Site Parameters Saved"
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_BGPERR
  1. D EN^XBVK("BGP")
  1. Q
  1. ;
  1. LST(RETVAL,BGPSTR) ;-- list files
  1. S X="MERR^BGP1GU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPI,BGPJ,BGPDATA,BGPDA,P,BGPERR,BGPCT,BGPYN,BGPOT,BGPOPT,BGPRT
  1. S P="|"
  1. S BGPI=0
  1. S BGPERR=""
  1. S BGPCT=$P(BGPSTR,P)
  1. S BGPCT=$O(^ATXAX("B",BGPCT,0))
  1. S BGPYN=$P(BGPSTR,P,2)
  1. S BGPOT=$P(BGPSTR,P,3)
  1. S BGPOPT=$P(BGPSTR,P,4)
  1. S BGPRT=$P(BGPSTR,P,5)
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S ^BGPTMP($J,BGPI)="T00250DATA"_$C(30)
  1. D EP^BGP1GLST(.BGPERR,DUZ,DUZ(2),BGPOPT,BGPCT,BGPYN,BGPOT,BGPRT)
  1. S BGPI=BGPI+1
  1. S ^BGPTMP($J,BGPI)=$G(BGPERR)_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)_BGPERR
  1. D EN^XBVK("BGP")
  1. Q
  1. ;
  1. DELRPT(RETVAL,BGPSTR) ;-- delete a report out of the BGP 11 GUI REPORT file
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N P,R,I
  1. S P="|",R="~"
  1. S BGPERR=""
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. I BGPSTR'[R S BGPSTR=R_BGPSTR ;ihs/cmi/maw v11.1 04/29/2011
  1. F I=2:1 D Q:$P(BGPSTR,R,I)=""
  1. . N BGPI
  1. . Q:$P(BGPSTR,R,I)=""
  1. . S BGPI=$P(BGPSTR,R,I)
  1. . S DIK="^BGPGUIB(",DA=BGPI D ^DIK
  1. S ^BGPTMP($J,0)="T00250DATA"_$C(30)
  1. S ^BGPTMP($J,1)=$G(BGPERR)_$C(30)
  1. S ^BGPTMP($J,2)=$C(31)_BGPERR
  1. Q
  1. ;
  1. ST(RETVAL,BGPSTR) ;-- return search templates by file
  1. S X="MERR^BGP1GU",@^%ZOSF("TRAP") ; m error trap
  1. N P,BGPI,R,BGPFLS
  1. S P="|",R="~"
  1. S BGPFLS=$P(BGPSTR,P)
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S ^BGPTMP($J,BGPI)="T00007BMXIEN^T00050Search Template"_$C(30)
  1. N I
  1. F I=1:1 D Q:$P(BGPFLS,R,I)=""
  1. . Q:$P(BGPFLS,R,I)=""
  1. . S BGPFLS($P(BGPFLS,R,I))=$P(BGPFLS,R,I)
  1. N BGPDA
  1. S BGPDA=0 F S BGPDA=$O(^DIBT(BGPDA)) Q:'BGPDA D
  1. . N BGPFL
  1. . S BGPFL=$P($G(^DIBT(BGPDA,0)),U,4)
  1. . Q:'BGPFL
  1. . Q:'$D(BGPFLS(BGPFL))
  1. . S BGPI=BGPI+1
  1. . S ^BGPTMP($J,BGPI)=BGPDA_U_$P($G(^DIBT(BGPDA,0)),U)_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)
  1. D EN^XBVK("BGP")
  1. Q
  1. ;
  1. UPL(RETVAL,BGPSTR) ;-- upload a file
  1. S X="MERR^BGP1GU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPOPT
  1. S BGPP="|",BGPR="~"
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. I $G(BGPSTR)="" D CATSTR(.BGPSTR,.BGPSTR)
  1. S BGPOPT="BGP 11 UPLOAD FILES"
  1. F BGPII=2:1 D Q:$P(BGPSTR,BGPP,BGPII)=""
  1. . Q:$P(BGPSTR,BGPP,BGPII)=""
  1. . N BGPFD,BGPDIR,BGPFL
  1. . S BGPFD=$P(BGPSTR,BGPP,BGPII)
  1. . S BGPDIR=$P(BGPFD,BGPR,1)
  1. . S BGPFL=$P(BGPFD,BGPR,2)
  1. . D EP^BGP1GUPL(.BGPERR,DUZ,DUZ(2),BGPOPT,BGPDIR,BGPFL,DT)
  1. S ^BGPTMP($J,BGPI)="T00001Error^T00080ErrorMessage"_$C(30)
  1. S BGPI=BGPI+1
  1. S ^BGPTMP($J,BGPI)=$G(BGPERR)_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)
  1. D EN^XBVK("BGP")
  1. Q
  1. ;
  1. LSTF(RETVAL,BGPSTR) ;-- list files
  1. S X="MERR^BGP1GU",@^%ZOSF("TRAP") ; m error trap
  1. N P,BGPDIR,BGPFL,BGPOPT,BGPI
  1. S P="|"
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S BGPDIR=$P(BGPSTR,P)
  1. K BGPLIST S BGPLIST="",X=$$LIST^%ZISH(BGPDIR,"BG11*",.BGPLIST)
  1. S BGPOPT="BGP 11 UPLOAD FILES"
  1. S ^BGPTMP($J,BGPI)="T00080Directory^T00080File Name"_$C(30)
  1. N BGPDA
  1. S BGPDA=0 F S BGPDA=$O(BGPLIST(BGPDA)) Q:'BGPDA D
  1. . N BGPFL
  1. . S BGPFL=$G(BGPLIST(BGPDA))
  1. . S BGPI=BGPI+1
  1. . S ^BGPTMP($J,BGPI)=BGPDIR_U_BGPFL_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)
  1. D EN^XBVK("BGP")
  1. Q
  1. ;
  1. CHK(BGPRET,BGPSTR) ;check report status
  1. S X="MERR^BGP1GU",@^%ZOSF("TRAP") ; m error trap
  1. N P,BGPDUZ2,BGPI
  1. S P="|"
  1. S BGPDUZ=$P(BGPSTR,P)
  1. K ^BGPTMP($J)
  1. S BGPRET="^BGPTMP("_$J_")"
  1. S BGPI=0
  1. S ^BGPTMP($J,BGPI)="T00007BMXIEN^T00030Name^T00030User^T00020Start Time^T00020End Time^T00030Type of Report^T00020Report Status^T00020Type of Output^T00250Export File(s)"_$C(30)
  1. N BGPDA
  1. S BGPDA=0 F S BGPDA=$O(^BGPGUIB("AUSR",BGPDUZ,BGPDA)) Q:'BGPDA D
  1. . N BGPIEN
  1. . S BGPIEN=0 F S BGPIEN=$O(^BGPGUIB("AUSR",BGPDUZ,BGPDA,BGPIEN)) Q:'BGPIEN D
  1. .. N BGPDATA,BGPNM,BGPUSER,BGPST,BGPET,BGPTOR,BGPRS,BGPTOO,BGPFLS
  1. .. S BGPDATA=$G(^BGPGUIB(BGPIEN,0))
  1. .. S BGPNM=$P(BGPDATA,U)
  1. .. S BGPUSER=$P($G(^VA(200,$P(BGPDATA,U,2),0)),U)
  1. .. S BGPST=$$FMTE^XLFDT($P(BGPDATA,U,3))
  1. .. S BGPET=$$FMTE^XLFDT($P(BGPDATA,U,4))
  1. .. I $P(BGPDATA,U,4)="",$$SEVEN($P($P(BGPDATA,U,3),".")) D Q
  1. ... S DIK="^BGPGUIB(",DA=BGPIEN D ^DIK
  1. .. S BGPTOR=$P(BGPDATA,U,5)
  1. .. S BGPRS=$$GET1^DIQ(90546.08,BGPIEN,.06)
  1. .. S BGPTOO=$$GET1^DIQ(90546.08,BGPIEN,.07)
  1. .. S BGPFLS=$$GET1^DIQ(90546.08,BGPIEN,1)
  1. .. S BGPI=BGPI+1
  1. .. S ^BGPTMP($J,BGPI)=BGPIEN_U_BGPNM_U_BGPUSER_U_BGPST_U_BGPET_U_BGPTOR_U_BGPRS_U_BGPTOO_U_BGPFLS_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)
  1. Q
  1. ;
  1. SEVEN(ST) ;EP -- check to see if the start date is over 7 days ago
  1. I $$FMDIFF^XLFDT(DT,ST)>7 Q 1
  1. ;S X1=ST,X2=7 D C^%DTC
  1. ;I X<DT Q 1
  1. Q 0
  1. ;
  1. LABTAXC(RETVAL,BGPSTR) ;EP - from remote procedure
  1. S X="MERR^BGP1GU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPI,BGPJ,BGPDATA,BGPDA,BGPRT,P,BGPOPT,BGPR,BGPFN
  1. S P="|"
  1. S BGPI=0
  1. S BGPERR=""
  1. S BGPOPT=$P(BGPSTR,P)
  1. S BGPOPT="CRS 11 LAB TAXONOMY REPORT" ;8.0 p2
  1. S BGPRT=$P(BGPSTR,P,2)
  1. S BGPR=$P(BGPSTR,P,3)
  1. S BGPFN=$P(BGPSTR,P,4)
  1. S BGPJ=0
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S ^BGPTMP($J,BGPI)="T00250DATA"_$C(30)
  1. D EP^BGP1GLTX(.BGPERR,DUZ,DUZ(2),BGPOPT,BGPRT,BGPR,BGPFN)
  1. S BGPI=BGPI+1
  1. S ^BGPTMP($J,BGPI)=+$G(BGPERR)_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)
  1. D EN^XBVK("BGP")
  1. Q
  1. MEDTAXC(RETVAL,BGPSTR) ;EP - from remote procedure
  1. S X="MERR^BGP1GU",@^%ZOSF("TRAP") ; m error trap
  1. N BGPI,BGPJ,BGPDATA,BGPDA,BGPRT,P,BGPOPT,BGPR,BGPFN
  1. S P="|"
  1. S BGPI=0
  1. S BGPERR=""
  1. S BGPOPT=$P(BGPSTR,P)
  1. S BGPOPT="CRS 11 MEDICATION TAXONOMY REPORT" ;8.0 p2
  1. S BGPRT=$P(BGPSTR,P,2)
  1. S BGPR=$P(BGPSTR,P,3)
  1. S BGPFN=$P(BGPSTR,P,4)
  1. S BGPJ=0
  1. K ^BGPTMP($J)
  1. S RETVAL="^BGPTMP("_$J_")"
  1. S ^BGPTMP($J,BGPI)="T00250DATA"_$C(30)
  1. D EP^BGP1GMTX(.BGPERR,DUZ,DUZ(2),BGPOPT,BGPRT,BGPR,BGPFN)
  1. S BGPI=BGPI+1
  1. S ^BGPTMP($J,BGPI)=+$G(BGPERR)_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)
  1. D EN^XBVK("BGP")
  1. Q
  1. ;
  1. UPDTAX(BGPRET,BGPSTR) ;update taxonomies based on option selected
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N P,BGPOPT,BGPI
  1. S P="|"
  1. S BGPI=0
  1. K ^BGPTMP($J)
  1. S BGPRET="^BGPTMP("_$J_")"
  1. S ^BGPTMP($J,BGPI)="T00080TAXONOMY NAME"_$C(30)
  1. S BGPRPTT1=1
  1. S BGPOPT=$P(BGPSTR,P)
  1. I BGPOPT="TAXNTL" D
  1. . S BGPRPTT1=1
  1. I BGPOPT="TAXCMS" D
  1. . S BGPRPTT1=5
  1. I BGPOPT="TAXCRS" D
  1. . S BGPRPTT1=9
  1. I BGPOPT="TAXONM" D
  1. . S BGPRPTT1=7
  1. I BGPOPT="TAXEO" D
  1. . S BGPRPTT1=8
  1. D INIT^BGP1CTS
  1. I BGPOPT="TAXALL" D
  1. . D INIT^BGP1XTV
  1. N BGPDA,BGPT
  1. S BGPDA=0 F S BGPDA=$O(BGPTAX("IDX",BGPDA)) Q:'BGPDA D
  1. . N BGPN,BGPFL,BGPRO,BGPFLT
  1. . S BGPI=BGPI+1
  1. . S BGPT=$P($G(BGPTAX("IDX",BGPDA,BGPDA)),U)
  1. . S BGPTT=$P($G(BGPTAX("IDX",BGPDA,BGPDA)),U,2)
  1. . I BGPTT="T" D
  1. .. S BGPN=$P($G(^ATXAX(BGPT,0)),U)
  1. .. S BGPRO=$S($P($G(^ATXAX(BGPT,0)),U,22):"Read Only",1:"Editable")
  1. .. S BGPFL=$P($G(^ATXAX(BGPT,0)),U,15)
  1. .. S BGPFLT=$S(BGPFL=50:"Med",1:"Tax")
  1. . I BGPTT="L" D
  1. .. S BGPN=$P($G(^ATXLAB(BGPT,0)),U)
  1. .. S BGPRO=$S($P($G(^ATXLAB(BGPT,0)),U,22):"Read Only",1:"Editable")
  1. .. S BGPFL=$P($G(^ATXLAB(BGPT,0)),U,9)
  1. .. S BGPFLT="Lab"
  1. . S ^BGPTMP($J,BGPI)=BGPN_"("_BGPRO_"/"_BGPFLT_"/"_BGPFL_")"_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)
  1. Q
  1. ;
  1. NEWTAX(BGPRET,BGPSTR) ;update taxonomies based on option selected
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N P,BGPOPT,BGPI
  1. S P="|"
  1. S BGPI=0
  1. K ^BGPTMP($J)
  1. S BGPRET="^BGPTMP("_$J_")"
  1. S ^BGPTMP($J,BGPI)="T00080Taxonomy Name^T00010Taxonomy IEN^T00001ReadOnly^T00020File Number^T00003Tax Type"_$C(30)
  1. S BGPRPTT1=1
  1. S BGPOPT=$P(BGPSTR,P)
  1. I BGPOPT="TAXNTL" D
  1. . S BGPRPTT1=1
  1. I BGPOPT="TAXCMS" D
  1. . S BGPRPTT1=5
  1. I BGPOPT="TAXCRS" D
  1. . S BGPRPTT1=9
  1. I BGPOPT="TAXONM" D
  1. . S BGPRPTT1=7
  1. I BGPOPT="TAXEO" D
  1. . S BGPRPTT1=8
  1. D INIT^BGP1CTS
  1. I BGPOPT="TAXALL" D
  1. . D INIT^BGP1XTV
  1. N BGPDA,BGPT
  1. S BGPDA=0 F S BGPDA=$O(BGPTAX("IDX",BGPDA)) Q:'BGPDA D
  1. . N BGPN,BGPFL,BGPRO,BGPFLT
  1. . S BGPI=BGPI+1
  1. . S BGPT=$P($G(BGPTAX("IDX",BGPDA,BGPDA)),U)
  1. . S BGPTT=$P($G(BGPTAX("IDX",BGPDA,BGPDA)),U,2)
  1. . I BGPTT="T" D
  1. .. S BGPN=$P($G(^ATXAX(BGPT,0)),U)
  1. .. S BGPRO=$S($P($G(^ATXAX(BGPT,0)),U,22):"Read Only",1:"Editable")
  1. .. S BGPFL=$P($G(^ATXAX(BGPT,0)),U,15)
  1. .. S BGPFLT=$S(BGPFL=50:"Med",1:"Tax")
  1. . I BGPTT="L" D
  1. .. S BGPN=$P($G(^ATXLAB(BGPT,0)),U)
  1. .. S BGPRO=$S($P($G(^ATXLAB(BGPT,0)),U,22):"Read Only",1:"Editable")
  1. .. S BGPFL=$P($G(^ATXLAB(BGPT,0)),U,9)
  1. .. S BGPFLT="Lab"
  1. . S ^BGPTMP($J,BGPI)=BGPN_U_BGPT_U_$E(BGPRO,1,1)_U_BGPFL_U_BGPFLT_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)
  1. Q
  1. ;
  1. COMCHK(BGPRET,BGPSTR) ;EP
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N P,BGPOPT,BGPI,T
  1. S P="|"
  1. S BGPI=0
  1. K ^BGPTMP($J)
  1. S BGPRET="^BGPTMP("_$J_")"
  1. S ^BGPTMP($J,BGPI)="T00200COMMUNITIES"_$C(30)
  1. S BGPI=0
  1. S T=$P(BGPSTR,P)
  1. K BGPC
  1. I '$G(T) Q 0
  1. I '$D(^ATXAX(T)) Q 0
  1. S X=0,G=0
  1. F S X=$O(^ATXAX(T,21,X)) Q:'X D
  1. .S C=$P(^ATXAX(T,21,X,0),U)
  1. .S BGPI=BGPI+1
  1. .I '$D(^AUTTCOM("B",C)) S ^BGPTMP($J,BGPI)="Warning "_C_" is in the taxonomy but not in the standard community table."_$C(30)
  1. S ^BGPTMP($J,BGPI+1)=$C(31)
  1. Q
  1. ;
  1. MFI(BGPRET,BGPSTR) ;-- check to see if this is an mfi site
  1. S X="MERR^BGPGU",@^%ZOSF("TRAP") ; m error trap
  1. N P,BGPOPT,BGPI,BGPDUZ2
  1. S P="|"
  1. S BGPI=0
  1. K ^BGPTMP($J)
  1. S BGPRET="^BGPTMP("_$J_")"
  1. S ^BGPTMP($J,BGPI)="T00001MFI"_$C(30)
  1. S BGPI=0
  1. S BGPDUZ2=$P(BGPSTR,P)
  1. S ^BGPTMP($J,1)=$S($E($P($G(^AUTTLOC(BGPDUZ2,0)),U,10),1,1)=3:1,1:0)_$C(30)
  1. S ^BGPTMP($J,2)=$C(31)
  1. Q
  1. ;